Diagramming Program Values by Spatial Refinement
summary
A declarative DSL called Spytial maps runtime value graphs to 2D layouts via constraint solving and produces interactive diagrams with enforced spatial rules (dragging refuses moves that violate constraints). The semantics treat a program as the set of arrangements satisfying all constraints so adding a rule strictly refines layouts; unsatisfiable sets yield diagrammatic counterfactual diagnostics. Implementations exist for Python, Rust, and Pyret; 22 CLRS data structures reproduce with few refinements; typical renders are under 1s, worst cases near 10s.
AI-written summary · about
chapters (12)
- 0:00Spatial refinement introduction
- 1:25Spatial as programming problem
- 2:51Diagramming workflow
- 4:34Spatial rules vocabulary
- 5:17Cognitive science design
- 6:01CLRS diagrams recreated
- 7:04Rendering performance
- 7:26Spatial programs meaning
- 8:27Conflicting constraints handling
- 9:51Error reports for debugging
- 10:13Spatial language integration
- 11:15Summary and try spatial
related talks
21mPractical compositional diagramming
28mManipulating GUI Structures Declaratively
15mManipulating GUI Structures Declaratively
54mKotlin DSLs as a Single Source of Truth for Multiple Tasks
34mDiagram as Code - Decoding Architectural Diagrams
39mTowards a Graphical Language Server Protocol for Diagrams?
01h 00mC4 models as code
34mConstraint Logic Propagation Conflict Spreadsheets
