Genetic Programming with clojure.spec
summary
Builds a genetic-programming system that generates and scores Clojure spec programs against example vectors, using subtree mutation and crossover to evolve specs; starts with a population of 100 for 100 generations and uses tournament selection (size 7) to find a perfect-fit spec for a target vector. Implements a proof of concept self‑healing pipeline that catches a divide‑by‑zero, looks up function specs in the registry, tests donor candidates with a seed vector [1 2 3 4 5], and replaces the failing function when donor substitution validates.
AI-written summary · about
chapters (22)
- 0:00Start
- 3:32FOUR TRIBES OF PROGRAMMERS
- 6:12ALCHEMIST
- 7:32DESCRIBE DATA AND CREATE SPEC
- 7:48VALIDATE DATA AGAINST A SPEC
- 9:10SPEC CREATURES
- 10:38CREATING A CREATURE
- 11:53CREATURE CREATE!
- 14:15CROSOVER!
- 15:18EVOLUTION PROCESS
- 17:42MOMENT OF TRUTH
- 18:59SPECS CAN GENERATE DATA
- 19:37GENETIC PROGRAMMING SUMMARY
- 21:56SELF HEALING CODE INGREDIENTS
- 25:07SELF HEALING CLOJURE EXPERIMENT
- 26:42CLEAN-BAD-DATA SPECS
- 28:56READY FOR TEST DRIVE
- 29:18DONOR CANDIDATES
- 30:35THE SELF HEALING PROCESS
- 32:58NOW THE BIG TEST...
- 34:10SUCCESS!
- 36:49TAKING A STEP BACK
related talks
31mComputer, Program Theyself!
32mSpec Driven Dev From Single Player to Multiplayer to Ecosystem
35mExtracting Specifications from Legacy Software with Elixir
57mSolutions That Evolve: Building Self-Improving Systems with Genetic Algorithms
23mStop Making LLMs Deterministic: A Spec-Driven Software Factory
56mIs Spec Kit the future for software development
22mThe New Code
29mSpecs Don't Hallucinate: Deterministic Code in the Age of AI
