Why other languages don't have REPLs like LISP's?

There’s a few ways you can evaluate languages and tooling:

  1. Quantitatively, which is hard, but most data actually show little significance to language choices. But of the small effects it shows, it does seem like Clojure always fall in the most productive, most safe language bracket, and in the middle of the pack for performance.
  2. Qualitatively, which will be things like does it have a REPL, can it run on platform X, is there library to help do Y, does it have test tooling, what is the memory profile when doing Z, how easy can I hire an expert in it, etc. You need to know what qualities you’re looking for or value to leverage that method.
  3. Preferentially, as in, what do you personally know best, are most familiar with, are most effective in, find more engaging to use, have more fun using it, find easier to leverage, etc.

I feel you’re trying to pretend like your “preferential” justifications are somehow quantitative or qualitative when they’re not.

Now, I believe the preferential dimension is very important, so I’m not dismissive of those reasons, but I like them explicitly called out. Because when it comes to influencing other’s who might not yet have a preference and are looking to explore and eventually develop some, I find it manipulative to claim ones preference as quantitative or qualitative facts.

I’d personally challenge anyone who’d claim that a fully dynamic language with proper support for a REPL and the required available tooling, and the use of REPL driven development yields superior or faster outcomes to all other languages and tooling without. There’s just no strong quantitative data about that. You can make qualitative arguments for why you’d want that, and you can prefer working in that way, and that’s all there is to it. Similarly, I’m challenging people who claim the opposite, that there are legitimate quantitative demonstrations that this way of coding is detrimental, slow, or yields worse outcomes.

That doesn’t mean that YOU personally will not see improvements to your productivity and the quality of the programs you output though. This is why I don’t dismiss the preferencial dimension. The developer is still the most impactful when it comes to quick delivery of software, of high impact, and of high quality.

That’s why using a language and a set of tools and methods that you’re most efficient with, most effective, most engaged, having the most fun in, that can sustain your concentration, help you where you personally have weaknesses, keep you motivated and focused, will have a dramatic effect.

Which is why I believe you, REPLs don’t work for you, and that’s totally fine and understandable, but understand that for others it is empowering and a huge boon to their productivity, happiness, motivation, engagement, and the resulting quality of the programs they develop with it.

5 Likes