Introducing nuklĕus, a minimal IDE for LAST

Darius J Chuck

2023-11-28

Recently I’ve been working on something related to LAST again. Time has come to publish and introduce it. So here we go.

The thing is called nuklĕus and it is a minimal Integrated Development Environment (IDE) for LAST, which includes a compiler from LAST to a sort of a very closely-related minimal virtual machine code. The virtual machine is a variant of the original LAST machine.

On top of that there is a debugger which can step through the code and neatly visualize the state of the virtual machine. There is also an interactive I/O protocol. All this packaged up into a dependency-free webapp written in pure JavaScript.

I ended up creating nuklĕus because at some point I thought it would be cool to be able to see the state of the LAST machine visually in a way that makes it easier to understand connections between different things. Things escalated from there.

I think the goal has been achieved and I believe nuklĕus is a pretty nice tool that in a very minimal way ties together and helps understand many things at the foundations of computing. I hope you find it useful and enjoyable.

Below I paste a version of the README that gives an outline of the features at the moment and a little more info. The latest version of the README lives together with the source code on Codeberg.


nuklĕus is a minimal Integrated Development Environment (IDE) for the LAST programming language.

To run nuklĕus, click on the screenshot below.

a screenshot from nuklĕus

Features

The LAST programming language

LAST is an extremely minimal programming language which uses only 4 symbols (conventionally L, A, S, and T) to encode any algorithm. In that LAST is analogous with DNA, the language of biology, which uses only 4 symbols (conventionally C, G, A, and T) to encode any organism.

LAST grew out of a desire to understand the fundamentals of computing, as discovered and explained by great computer scientists. The language presents another perspective on their work, adding something to build upon further and hopefully helping others gain their own understanding.

LAST is a version of Alonzo Church’s lambda calculus, inspired by Justine Tunney’s SectorLambda implementation of John Tromp’s Binary Lambda Calculus (BLC).

To learn more about LAST, see the Introduction to the LAST programming language and Revelation: Lambda Calculus Reduced To Four Primitive Operations.

Documentation

To learn more about nuklĕus, see the manual.

Etymology and pronunciation

nuklĕus (can be pronounced the same as “nucleus” or /nuˈklɛ.us/) is named after the cell nucleus which deals with DNA, the language of all biological life, able to encode any organism using only 4 symbols. Analogously, nuklĕus deals with LAST, a minimal programming language, able to encode any program using only 4 symbols.

Comments

If you have any comments, you can post them on Mastodon.

Support TAO

If you like, you can support my work with a small donation.

Donate directly via Stripe   or   Buy Me a Coffee at ko-fi.com   Postaw mi kawę na buycoffee.to

Thank you!

Darius J Chuck