Favourite programming languages
Smalltalk and Lisp (Common Lisp) are my favourite programming languages. Apart from them, there are not many programming languages with:
- A robust theoretical core. Smalltalk syntax fits in a post-card. Lisp has been described as the “Maxwell’s equations of software”. Both created quite a long time ago, with some very bright minds involved in their design.
- Uniformity. In Smalltalk, all there is are classes and objects, and message passing between them; and that uniformity is reflected in the syntax too. In Lisp, code is data, and data is code, and everything looks like a list.
- Interactive development. Both languages are image based. The image provides access to the running application, and there are no separate compile/run/debug phases. Both Smalltalk and Lisp provide the tools for live exploration, inspection, debugging, and much more.
- Development of DSLs. Lisp is the best suited for this, as it provides macros. Smalltalk flexible syntax is good enough for developing embedded DSLs.
Page design by Ankit Sultana