Working Notes: a commonplace notebook for recording & exploring ideas.
Home. Site Map. Subscribe. More at expLog.
Repls
- Read-eval-print-loop
- Misc
- Papers
- A principled approach to REPL interpreters
- https://maveme.github.io/assets/pdfs/Onward2020-preprint.pdf
- Features considered essential for REPLs
- Snippet execution
- Snippet completion
- Save and load (state, program, snippets)
- Summary of effects -- previous results
- Command history
- Help
- Modify definitions
- "Sequential Language"
- Full input to a REPL is a valid program
- Written as sequences of valid programs that manipulate context (configuration)
- REPLs accumulate effects
- "Exploring interpreters"
- Allow reverting to a previous good state of the program
- Interesting references
- Programming with a Read-Eval-Synth-Loop
- History of REPLs
- Also referred to as a means for exploratory programming
- Notebook on top of an exploratory interpreter
- Clojure
- Notes to self:
- Explore IPython REPLs; very few people seem to use them the way I do
- discussion between going between production code and exploratory programming
- I almost use them like a PHP endpoint -- edit file, refresh page (call function), see changes
- state is maintained that otherwise wasn't
- VSCode Jupyter REPLs and their adoption, any discussions online?
- Figure out the mechanics and shortcomings of %autoreload
- What would an ideal autoreload look like
- the idea of being able to revert to a good state is amazing
- Explore Web App REPLs -- the tech is there, putting it together is missing
- Explore prominent REPLs and their histories, as well as their forms of interaction; go only for widely adopted variants (ie not pasted on after the fact)
- Lisps -- get a lisp machine?
- Forth
- Erlang
- Javascript
- Smalltalk (why isn't this considered a REPL)
- Standard shell is also a REPL? yes/no?
- What about SQL
- Any CLI that allows interactive programming?
- Debugger vs repl?
— Kunal