DomainLearning with Computational Microworlds
(PyZX)
I loved Papert's Mindstorms. Part of why it resonated is simply because I like using programming to learn stuff. Not everyone likes that, but I think it's still worth exploring how domain specific languages can guide selfdirected learning.
It's worth mentioning that Sam Ritchie already outlined, like, a lot of this, in The Dynamic Notebook and his ongoing effort to port SICM there.
Changing Minds by Andrea DiSessa
 Are these Enabling Environments?
Examples
 Calculus with Julia
 Math 229 Projects (College of Staten Island course on calculus with julia)
 Statistics with Julia
 Computational thinking (modeling) with Julia
 Designing Sound (with Pd)
 https://jpreston.xyz/acatalogueofchordsexample.html
 Structure and Interpretation of Classical Mechanics (in Scheme)
 Functional Differential Geometry (in Scheme)
 Qiskit
 Programming Language Foundations in Agda
 Learning how to Prove: From the Coq Proof Assistant to Textbook Style
 Software Foundations (In Coq)
 Monotone Codesign Theory
 Probabilistic Programming
 ArviZ: Exploratory analysis of Bayesian models
 Stan
 Edward
 Probabilistic Models of Cognition (taught with WebPPL, a probabilistic programming language)
 Statistical Rethinking
 https://epirhandbook.com/
 Xena Project (check their Lean "Natural Number Game")
 Logic & Proof in Lean
 https://leanprovercommunity.github.io/undergrad.html
 PyZX
 Turtles Termites and Traffic Jams
 https://www.pseudorandom.com/implementingexp
 Arend Theorem Prover  Cubical Type Theory as an IntelliJ Plugin
 Wolfram U  learn domains through Mathematica
 https://github.com/quantumlib/Cirq
 https://github.com/SciML/Catalyst.jl
 Sagemath Interactions  some explorables with Sagemath
 Haskell+Music Theory
 Haskell Road to Logic, Maths, and Programming
 The Little Typer  type theory via bespoke "Pie" language
 Think Complexity
 All Hail Geometric Algebra!  (in Haskell)
 Math as Code  a bit disappointing in scope, but fun sentiment
 Fantasy Land  Algebraic JavaScript Specification
 ToonTalk  Infinite cardinality of sets
 Knuth's MIX for Art of Computer Programming
 Modeling Game Theory in Haskell  HAGL
 Exploring Mathematics with your Computer
 https://imadr.github.io/rotationswithquaternions/
 Norvigâ€™s pytudes https://github.com/norvig/pytudes/blob/master/ipynb/Probability.ipynb
 Annotated implementations of ML papers https://github.com/labmlai/annotated_deep_learning_paper_implementations
 The Annotated Transformer http://nlp.seas.harvard.edu//2018/04/03/attention.html
 https://simulation.school/p/computationaleconomics
 https://mitpress.mit.edu/books/turtlegeometry
 https://keras.io/examples/
 Dive into Deep Learning
 https://press.princeton.edu/books/hardcover/9780691164069/optart
 https://math.mit.edu/~gs/learningfromdata/
Note: I'm neglecting tons of python stuff. Probably because I think type systems are useful for learning things :)
Misc

Metalinguistic abstraction & DSL design
 taxonomy of bespoke languages for instructional texts

MathCell for embedding math in webpages.
(Literate Coq)

Literate Coq  Relatedly  Why are proof assistants so unfriendly?

I'm struck by the unHaskellness of this api. https://reanimate.github.io/
 you don't need to know the ins and outs of Haskell to use this "DSL"
Minecraft
 Robin Sloan  The Secret of Minecraft https://medium.com/message/thesecretofminecraft97dfacb05a3c

Imagine yourself a child. Imagine yourself given one of these books: not merely a story of exploration and adventure, but a manual to such.

Imagine yourself a child, in possession of the secret knowledge.

Group theory
What would an algebraic environment look like? How would I encode and play with the circle group? The monster group? https://en.wikipedia.org/wiki/Circle_group
Backlinks