Can we resist the trend of every programming language gradually turning into the same meta-programming language as they all add from the global kitchen sink of language features please

@sir I think a generalized Zawinsky's law would make it impossible.

@sir ha! A language isn’t complete until it’s added superficial list comprehensions and anonymous functions. ;)

@sir given that most features added to most languages these days are optional - what's wrong with choice?

I'm thinking, for example, of the Python PEP from yesterday - `match` is entirely optional, but can do a lot to clean up gnarly if/else blocks, and is a proven idea from other languages.

Its addition hurts nobody, but can serve to benefit readability. The cost is only in the interpreter which... rarely gets rewritten/reimplemented. Speaking as a MicroPython contributor, even.

@klardotsh @sir
While this particular feature may enhance readability, in general the more features a language has, the harder it is to read. Especially if you're using code written by multiple people with different styles.

A simple language is easy to read and easy to reason about. Less language constructs you need to remember means more headspace to think about the higher-level architecture of the code you're reading, and to know these few constructs more in-depth.

1. "I will write a language that's simpler than Lisp by using a more sophisticated syntax."
2. "Now I will add all the features of Lisp."
3. "Oh no!"

Sign in to participate in the conversation

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!