Scientific Computing with Clojure
summary
Clojure drives a mixed stack: a ported brevis simulator front end with a fast C++ engine via JNI, used for evolving virtual creatures, flocking and emergent signaling (signaling only appears when communication is costly), and agent‑based angiogenesis models that match measured filipodia lengths and migration rates from light‑sheet and zebrafish time‑lapses. Image analysis uses Java ImageJ via a fun-image library to process multi‑gigabyte biopsies. A physical chemical computer of BZ droplets implements NOR gates that take minutes and took five years to build, degrading as fuel burns.
AI-written summary · about
chapters (30)
- 0:00Intro
- 0:17computing?
- 1:00Why Clojure for scientific
- 1:59Overview
- 2:35What is artificial life?
- 3:10Evolving Virtual Creatures
- 4:11Virtual - Real Robots
- 4:51Natural Swarms
- 5:13Swarms in Clojure
- 5:27How swarms work
- 6:44Evolution of Signaling
- 8:23Feedback Control of Evolving Swarms
- 9:41From Chemistry to Computation
- 12:16NOR-gate in BZ Droplets
- 13:51Circuit Basis of Morphogenesis
- 15:07Growing A Vision System - Reaction-diffusion-driven artificial embryogenesis
- 17:13Coevolution of Camouflage and Vision
- 18:35Coevolved Camouflage
- 19:12Clojure and ImageJ/FIJI
- 20:43Retinal Angiogenesis
- 21:583D Structures of Vascular Networks
- 22:39Image-driven Simulation
- 23:42Spring-Mesh Model of Endothelial Cells
- 24:48Filopodia Extraction
- 25:49Genetic Regulation and Cellular Migration
- 26:26Reduced Filopodia Formation Slows Patterning
- 26:45Vessel Formation in vivo
- 27:31Simulating Zebrafish ISV
- 27:49Simulated Angiogenesis
- 29:26Conclusions
related talks
38mScientific Clojure, a bird's eye view
26mThe Feynman Machine: AI architecture in Clojure/Neanderthal
32mBrain Data in Clojure
31mClojure at 4,000 msg/s-What We Learned, Loved, and Loathed
01h 15mEffective Programs - 10 Years of Clojure
34mPredictably Fast Clojure
41mInteractive GPU programming with ClojureCUDA & ClojureCL
30mWolframite: Bring computational intelligence to Clojure
