diff options
Diffstat (limited to '')
-rw-r--r-- | 2023/talks/eval.md | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/2023/talks/eval.md b/2023/talks/eval.md new file mode 100644 index 00000000..fc1c180a --- /dev/null +++ b/2023/talks/eval.md @@ -0,0 +1,43 @@ +[[!meta title="Editor Integrated REPL Driven Development for all languages"]] +[[!meta copyright="Copyright © 2023 Musa Al-hassy"]] +[[!inline pages="internal(2023/info/eval-nav)" raw="yes"]] + +<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing --> +<!-- You can manually edit this file to update the abstract, add links, etc. ---> + + +# Editor Integrated REPL Driven Development for all languages +Musa Al-hassy (he/him) - Pronunciation: moo seh, <http://alhassy.com/> <https://github.com/alhassy>, <mailto:Alhassy@gmail.com> + +[[!inline pages="internal(2023/info/eval-before)" raw="yes"]] + +Emacs’ C-x C-e is arguably one of its killer features: The ability to run +arbitrary Lisp code, anywhere. We demonstrate that the **idea** is portable +to other languages [0, 1]. The result is an Emacs interface for any +language, where code of your choosing is evaluated, and results are echoed +at your cursor in overlays. We will demonstrate how to solve simple +problems such as FizzBuzz in a RDD style using, say, Java or any language +that the audience chooses. We will also look quickly at "growing programs" +such as a photo gallery application, starting from scratch. Along the way, +we discuss what features make a RDD system pleasant and how they can be +implemented with our system. Finally, we conclude with how this RDD setup +allows for inserting results of a computation as a use case for writing +tests —i.e., we we show how user-definitions of a read protocol (the 'R' +of 'REPL') can result in an analog of C-u C-x C-e. + +[0] 💐 Repl Driven Development: Editor Integrated REPLs for all languages 🔁 + +<http://alhassy.com/repl-driven-development> + +[1] REPL Driven Development :: Teaching a JavaScript runtime, +incrementally, to be a web server 🍽️ 🔁 � + +<https://youtu.be/b6Z3NQVn4lY?si=MTMJDSdzszhbA267> + + + +[[!inline pages="internal(2023/info/eval-after)" raw="yes"]] + +[[!inline pages="internal(2023/info/eval-nav)" raw="yes"]] + + |