Site logo

Gerald Jay Sussman: We Really Dont Know How To Compute! 12/06/22

As noted by Sussman, Lisp is great because it has uniform representation of programs as data.

Abstract Syntax Trees are in fact a representation of a program as a tree data structure.

JS libraries like acorn or astring make you realize that one can generate code and create Domain Specific Languages in very straightforward manner. Our languages have become quite broad, multi-purpose and general to accommodate various needs.

Today, what we're missing is not better tooling and more language features, but more domain-specific languages (Martin, 2018).

A few things are needed to write a programming language:

Then, to compile some source code:

References:

Notes from Sussman's lecture: