Overview
Syllabus
Intro
About Me
About Clojure
Rationale
A La Carte Read
Custom Print
Custom Error Printing
Common REPL Concerns
"Just a Shell" is Not Enough
Sidecar Shells: JShell
REPL is Not About Text Entry
Spaghetti Code?
Functional Code
Task-Specific Dev
Example Data
Generating Data
Load What You Need
Spreadsheet It
Picture It
Too Much Work?
Rich Comment Blocks
What About Tests?
Transcriptor
Sets: Scissors-Ready Data
Ad hoc Merge
Ad Hoc Enumeration
Slots vs. Sets
Query the Program
Transform the Program
Codeveloping Two Libs
Live Coding vs. Reloading
What About GUI Debuggers?
Live Data: Clojure spec
spec as Exploration Tool
From Basic Predicates
To Testable Types
Exercising Data
Exercising Code
Instrumentation
Reflections
Taught by
Strange Loop Conference