Nil

From Esolang
Jump to: navigation, search

Nil is the world's first Nihilistic programming language. Essentially, it parses commands of any complexity, and then ignores them.

Examples[edit]

Here is the traditional Nil program:

I wandered lonely as a cloud.

A more practical program:

Please, give a NOP if life is either meaningful or not meaningful.

The shortest known Nil quine:


Implementations[edit]

One of the most widely deployed Nil interpreters is true, which is shipped as standard with many popular operating systems including GNU/Linux and Mac OS X. The traditional Nil program above (wordsworth.nil) can be invoked thus:

true wordsworth.nil

Alternatively, since the language syntax allows the use of 'shebang' lines, Nil programmers may wish to adopt the following convention to make their programs directly executable:

#!/usr/bin/true -w
I wandered lonely as a cloud.
./wordsworth.nil

Notice the use of the -w option in the above example, which turns on compiler warnings; novice Nil programmers are strongly encouraged to make use of this feature.

Bootstrapping[edit]

Incredibly, despite not being Turing-complete, the Nil language is expressive enough to implement an interpreter for itself, much more concisely than many 'proper' languages can. The example presented here is a simple implementation, but using advanced compression techniques Nil developers have been able to produce working interpreters in as little as 0 lines of code.

#!/usr/bin/true -w
My mother had a Flit gun
'Twas not devoid of charm
A bit of Flit
Shot out of it;
The rest shot up her arm

This can be seen to run any Nil program successfully, including our example programs from above:

> ./nil_interpreter.nil wordsworth.nil
> ./nil_interpreter.nil quine.nil

External resources[edit]