4 ms·
Yeah to be honest after trying for many years to understand what is so special about this famous Clojure REPL I struggled to see how it was that different in pr
by joshlemer 6mo ago
Yeah to be honest after trying for many years to understand what is so special about this famous Clojure REPL I struggled to see how it was that different in practice from Python or other languages. In Python you can also highlight a section code and send it to the console to be evaluated.
I think debuggers are just better anyways. When I got into the weeds trying to do this interactive REPL workflow on an actually running webapp it was a big mess. You have to write custom code all the time to basically capture data and save it into global variables, so that you can inspect them (as opposed to a debugger where you can just set a breakpoint and inspect all the variables in the middle of the precise spot in the request-response cycle).
I think maybe this was ahead of its time when it came out in 2008 or got popular in 2010-2015, but nowadays I am not seeing what's specifically more productive about the Clojure REPL than the interactive development experiences available in Laravel, Python, JS, etc.
- stephbook 6mo agoTo be fair to Clojure, I think it's perfect for rule-engines, where the users supply "business logic" at runtime. That's where "code is data" shines and you can manipulate it at will. For the rest, I'm glad I have "code as text" in my editor, where I can see and inspect it far more easily than one line at a time.
- slifin 6mo agoAs someone who loves the clojure repl I do somewhat agree with debuggers are better If it was like a choice, Clojure has my favourite reverse debugger flowstorm which also exposes the runtime information of your program programmatically So you can code cool visual programs against the runtime values of your first program Like I built an emulator at work that simulates our program in production as a flowstorm plugin then you can step through the program frame by frame I love taking the guess work out of production issues, just get the computer to show you exactly how everything went down It's like a rewindable movie made up of thousands or millions of frames of the execution of your program