Aeneas Mackenzie

  • User since
  • Last active
  • Started 1 topic
  • Posted 2 times

Recent activity

Posted in Minimal features required for an extensible language

ddrone: Sorry, I will explain better, although I think Kartik Agaram has understood what I meant.

I am interested in languages that achieve some level of extensibility and flexibility "from scratch". Often in small lisp implementations people use host-level lambdas to achieve functions, but this is not a small implementation, this is the entire host language plus the implementation. A lisp interpreter starting from only a few functions could be minimal, because (in theory) you only need those functions, an environment of definitions and a REPL. The GC is a complication here. Similarly forth has been implemented in extremely small packages, and a REPL can be made which only needs an initial small environment.

Kartik: thanks for those references, they are very interesting.

I may have answered most of my own question by phrasing it better: is there a way meaningfully different from "REPL + small environment" to create a fully featured language? What are some examples of ways to structure the REPL or environment to create different features? Forth and Lisp are very different languages although they can both be small.

Started Minimal features required for an extensible language

I am interested in languages which do not need very much support for a functional environment. The key examples are Forth and Lisp with a simple evaluator. See here for the scale of a barebones lisp (the original, in fact), although forth can get smaller in terms of actual implemented size. Are there other models of small interpreters? I'm especially interested in real departures from either of these models.