From 7458a38e3e754cf8bb6e7ab02e2de56557dcbe2d Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Fri, 22 Sep 2023 10:14:52 -0400 Subject: add eval, hyperamp, poltys, table, test, unentangling --- 2023/talks/eval.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 2023/talks/eval.md (limited to '2023/talks/eval.md') 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"]] + + + + + +# Editor Integrated REPL Driven Development for all languages +Musa Al-hassy (he/him) - Pronunciation: moo seh, , + +[[!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 🔁 + + + +[1] REPL Driven Development :: Teaching a JavaScript runtime, +incrementally, to be a web server 🍽️ 🔁 � + + + + + +[[!inline pages="internal(2023/info/eval-after)" raw="yes"]] + +[[!inline pages="internal(2023/info/eval-nav)" raw="yes"]] + + -- cgit v1.2.3