A lisp functional programming language designed by Rich Hickey. The core philosophy is to organize programs around the transformation of values using pure functions and isolated side-effects.
Links to this note
-
Static Types Make it Easier Work on Projects Sporadically
It’s easier to work on projects intermittently when a strongly typed programming language is used like Rust. That’s because becoming proficient in a codebase often entails holding the whole program in you head. Types provide mental shortcuts around the flow of data–you can skim the program by reading the static types to trace the flow of data and transformations (read the input arg types and return type) without needing to fully read or understand the contents of a method or function. In dynamic programming languages like Clojure you need to pay closer attention to what each step of the program does to anticipate what values are being used where.
-
Computer scientist and musician that designed the Clojure programming language. Has given many influential talks about functional programming.
-
Vega Is a Visualization Grammar
Vega is a high level charting and visualization library that uses a declarative grammar (a data structure) that is translated into a D3 rendered chart.
-
Programmable Music Environment
Converts code into generated music on-the-fly. There’s a sub-genre of electronic music that uses programming tools at live shows where the musician grows the program by writing and reinterpreting code as the audience watches and listens.
-
Learning Fringe Programming Languages Makes You Faster
Learning a programming language that is immature and substantially different from what’s commonly used in the industry makes you faster at programming, specifically debugging and unblocking. These skills generalize to any programming and make you faster at ‘figuring things out’ next time something unexpected happens.