{"id":9389,"date":"2021-01-03T16:13:53","date_gmt":"2021-01-03T21:13:53","guid":{"rendered":"https:\/\/irreal.org\/blog\/?p=9389"},"modified":"2021-01-03T16:13:53","modified_gmt":"2021-01-03T21:13:53","slug":"repls","status":"publish","type":"post","link":"https:\/\/irreal.org\/blog\/?p=9389","title":{"rendered":"REPLs"},"content":{"rendered":"<p>Mikel Evins has a lovely post that considers <a href=\"http:\/\/mikelevins.github.io\/posts\/2020-12-18-repl-driven\/\">interactive programming and REPLs<\/a>. As many of you know, I love interactive programming and am a huge fan of it. I like how you can try out bits of code and feel your way to larger functions and finally a program. If you\u2019re not familiar with the concept, take a look at this <a href=\"https:\/\/www.youtube.com\/watch?v=XjKtkEMUYGc\">fascinating video<\/a> from Kris Jenkins as he writes a Spotify client in Elisp right before your eyes.<\/p>\n<p>Evins begins by examining the idea of a REPL and why they aren\u2019t all the same.There is, he says, a big difference between a Lisp or Smalltalk REPL and one provided by, say, Python. You should consult his post for exactly what that difference is but the TL;DR is that the Lisp REPL allows you to talk to your program as it\u2019s running, even if it enters an error state.<\/p>\n<p>He goes on to lament that many\u2014or perhaps most\u2014programmers today have never experienced this sort of programming and may not even know it exists. That\u2019s too bad, he says, because many of them would find that it makes them happier and more efficient. I certainly agree. I always enjoy programming more when I can do it in an interactive way. Of course, that means writing in a Lisp or Smalltalk so it\u2019s not always possible but it\u2019s great when I can.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mikel Evins has a lovely post that considers interactive programming and REPLs. As many of you know, I love interactive programming and am a huge fan of it. I like how you can try out bits of code and feel &hellip; <a href=\"https:\/\/irreal.org\/blog\/?p=9389\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[18,37],"class_list":["post-9389","post","type-post","status-publish","format-standard","hentry","category-programming","tag-emacs","tag-tech"],"_links":{"self":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/9389","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9389"}],"version-history":[{"count":1,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/9389\/revisions"}],"predecessor-version":[{"id":9390,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/9389\/revisions\/9390"}],"wp:attachment":[{"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9389"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9389"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/irreal.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9389"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}