Member-only story
Programming Paradigms as Language Destiny
Why do some programming languages feel neat and orderly and others seem loaded with inconsistencies?

When I first started trying to write my own programming language I was surprised by how difficult it seemed to be to find best practices on language design. In an industry filled with opinions, where people will fight to the death over tabs -vs- spaces, there isn’t much guidance for would-be program language designers.
Eventually I came to my own conclusions: the pathway to success with program language design is to think of programming paradigms as logical groupings of abstractions and be as intentional about what is included and what isn’t.
What Is a Programming Paradigm?
A programming paradigm can be thought of as a philosophy of structuring and executing code. Unlike styles and conventions, paradigms cannot be leveraged unless they are built into the design of the language. You probably already know many programming paradigms:
- Object-orientated programming
- Functional programming
- Procedural programming
Then there are some more obscure ones you might not know about:
- Logical programming
- Agent-orientated programming