u/bjzabaPikelet, Unnamed Binary DDLin r/ProgrammingLanguages • Recommends
#racket#fructure#structuredediting
(ninth RacketCon): Andrew Blinn – Fructure: A Structured Editing Engine in Racket
5K subscribers • 11 videos on Hallway
- Recommended by 3 people: 2 on Hacker News and 1 in engineering communities.
- Presented by Andrew Blinn
Intermediate. Assumes working knowledge.
9.8K views7 years ago3 recommendations
Programming languagesTools and practiceVim, Emacs and editorsLisp and ClojureLanguage design and type systems
Andrew Blinn presents Fructure, an experimental structured editing engine in Racket that allows editing code directly via its AST structure.
Fructure is a prototype for an extensible structured editing engine. In structured editing, core edit actions reflect the extended selves of the objects you're bringing to life (grammatical programs with semantic properties), as opposed to the shape of their serialization (text files). Editing abstractions like cursors and code-folding are reimagined as syntactic scaffolding in a meta-grammar of syntactic affordances. Fructure lets language providers specify syntactic forms and semantic refactorings as production and transformation rules in a tiny term-rewriting DSL. Lessening reliance on after-the-fact correction or ad-hoc autocompletion, program creation consists rather of a guided search in the space of valid programs. Over the hood, my emphasis is on visual and kinetic appeal; creating a fun, fluid editing process with an eye to discoverability.Why it's here
3 people recommend thisWhat people say. Highly recommended as an inspiring demonstration of structured editing and alternative, non-textual ways of manipulating code.
disposedtrolleyon Hacker News • Recommends
On “MicroBlocks: Scratch and Smalltalk-inspired MCU VM for live embedded programming”
loosetypeson Hacker News • Recommends
On “Hazel: A live functional programming environment featuring typed holes”
u/bigamogiwotunin r/ProgrammingLanguages • Mentions
On “How could we get Lisp-style homoiconicity and macros in a language with C-style syntax?”
disconcisionon Hacker News • Mentions
On “How can we develop transformative tools for thought?”
TuringTeston Hacker News • Mentions
On “How can we develop transformative tools for thought?”
threatofrainon Hacker News • Mentions
On “Lisp Programming in Vim with Slimv or Vlime”
spaethnlon Hacker News • Mentions
On “Simula: A VR window manager for Linux”
disconcisionon Hacker News • Mentions
On “Snap is Scheme disguised as Scratch [pdf]”