4 ms·
Fair point about my religious-war comment, and I apologize. I was probably deserving of the Smug Lisp Weenie label at one point in my career, and for whatever
by gmfawcett 6y ago
Fair point about my religious-war comment, and I apologize. I was probably deserving of the Smug Lisp Weenie label at one point in my career, and for whatever irrational reason your comment sparked those memories. (For what it's worth, while I don't use Clojure any more (and stopped before the CIDER days) I'm fairly familiar with the language -- I was even a core contributor for a brief shining moment. (I think my contribution was the :as clause in (use) statements. The old (use) clauses used to be horrendously long. No doubt that my code has been replaced 10 times over by now.)) At any rate, it was foolish of me to try suppressing a religious war by inciting one.
As for my argument, I think it was in two points. First was to challenge what evidence you had to support your claims. From your reply, I'm confident from that you're speaking from knowledge of many developers' experiences. Perhaps I am more of a special snowflake than I realized.
As for the second point, I'm basically restating Norvig's argument, as I think it's a good one. I'm not terribly concerned about distinctions between different REPL-ish tools. I do take your point that the distinctions can muddy conversation, e.g. when trying to relate experiences of (say) Jupyter users vs. `python-mode` users -- or worse, Lisp vs. Python.
But to paraphrase (co-opt?) Norvig, I think these are second-order differences. Important enough in a few contexts, but distracting in most. My thesis is simple: everyone should experience interactive programming, and should ideally incorporate it into their development process, because it makes development faster and more effective. Whether that means Jupyter, CIDER, SLIME, ghci, etc. is a local decision, based on where you're at and what your community is; I don't think "REPL" in particular is a special shibboleth of the Enlightened. The difference between the Java/C++/Rust set and the Python/Ruby/CL/Clojure set is far greater than any minor differences we might have within the interactive camp, and "internal" disagreements in front of the unindoctrinated tend to distract from the greater good, IMO.
Any way that we can help new developers to experience interactive programming is a positive step. Personally I think that's the first-order problem, and I think our collective, repeated failure to recognize that is a source of much pointless and religious argument. Perhaps that's why this conversation reminded me of those wasted days, and why I responded with more aggression than I should have.
- lvh 6y agoApology accepted: I completely understand why a reasonable person could infer those things, especially since I'm hardly a neutral party given that I founded a Clojure nonprofit--"partisan" would be an entirely fair assumption :-) I also happily stipulate that non-Lisps not working that way is largely praxis and not some fundamental language deficiency, and definitely strongly agree that interactive programming is a powerful tool we should get into more hands.