Re:REPL vs CLI: IDE wars
by leephillips on Thursday July 01, 2021 @12:24PM
(#27700853)
No, Julia and Elixir are the same as Python in that regard (Python is more annoying because of the indentation problem). I was just talking about interactive evaluation of expressions selected in the editor. Although I’ve messed with Clojure a bit, I admit I don’t fully appreciate what you’re describing. I’m a little afraid to find out, frankly, because it sounds seductive.
Julia is much closer to Clojure than to Python in this regard, which brings back the point from above that homoiconity isn't the key ingredient
Re:REPL vs CLI: IDE wars
by leephillips on Thursday July 01, 2021 @03:53PM
(#27703808)
How so? In julia, one problem is that you can’t redefine datatypes in the REPL. You need to restart.
Yes, that restart is painful exactly because it interrupts the "built your program in memory while you’re writing the source code file" OP talks about.
my inkling is that the more special forms the more difficult it is to repl a language. if everything is an expression not only can you eval parts of it, but that is enough to support quite a bit of extensibility sans macro.
In Clojure, you literally built your program in memory while you’re writing the source code file, updating the memory representation of your running program part-by-part without ever stopping it.
This experience is absolutely magical, and it’s very hard to go back to edit-compile-run loop in other languages after that. It is completely different from “my language has a REPL and I can execute parts of code in it”.