As programmers, we are continuously looking for languages that are performant, productive, and general purpose. Is there any programming language that currently satisfies these properties? Can we ever create one?
In this article, I present the 3P Principle, a fundamental trade-off that affects the design of programming languages and the success of software projects.
The 3P Principle dictates that a programming language cannot satisfy the following desirable properties at the same time: