I love Lisps, ML-family languages, etc. Languages like Java or Go are just painful for me to program in, and I know I’m probably in the minority there.
But honestly, I think a lot of it comes down to the fact that syntax carries semantic expectations. Certain syntax makes you expect a certain model of programming: mutability, imperative control flow, objects everywhere, etc.
Gleam is a good counterexample. It has an ALGOL-ish syntax, but semantically it’s a functional language, and it’s wonderful to read/write.
Same with Ruby: the parts of Ruby that still make me smile are mostly the parts that feel Lisp-adjacent.
It’s kind of wild that we live in a world where, for most programmers, syntax seems to matter more than semantics.
But honestly, I think a lot of it comes down to the fact that syntax carries semantic expectations. Certain syntax makes you expect a certain model of programming: mutability, imperative control flow, objects everywhere, etc.
Gleam is a good counterexample. It has an ALGOL-ish syntax, but semantically it’s a functional language, and it’s wonderful to read/write.
Same with Ruby: the parts of Ruby that still make me smile are mostly the parts that feel Lisp-adjacent.
It’s kind of wild that we live in a world where, for most programmers, syntax seems to matter more than semantics.