Est. 2006 Advanced

Zero

A small 2006 esoteric language by Seirian J. Pardoe, known today only from a single two-dimensional 99 Bottles of Beer program. Its Visual Basic interpreter has been lost.

Created by Seirian J. Pardoe

Paradigm Esoteric (apparently two-dimensional)
Typing Unknown
First Appeared 2006
Latest Version Zero 1.0 (by April 2006)

Zero is a small esoteric programming language created around 2006 by Seirian J. Pardoe, a hobbyist who published Visual Basic games and examples on a free web host. Almost everything known about it comes from one artefact: a 99 Bottles of Beer program Pardoe submitted to 99-bottles-of-beer.net, where it was listed as entry 1110 in the “esoteric language” category. Zero’s interpreter, written in Visual Basic, was hosted on the author’s personal site. That site no longer exists, and no copy of the interpreter or any documentation is known to survive. Zero is one of the programming languages that is known by name and by a single program, but that can no longer be run.

History & Origins

The author and the site

Pardoe’s first appearance in the 99 Bottles of Beer archive is a Visual Basic 6 entry, a “scrolling text” version of the song, published on 27 February 2006. It gives the author’s homepage as http://www.freewebs.com/blackdragonvb/. Wayback Machine captures from 2007 and 2008 show that page as “Black Dragon VB”, described in its metadata as “Maps, Mods and Visual Basic Games and Examples”. It was a frameset site, and the archive saved only the outer frame. The navigation and content pages, including the “VB section” where the Zero interpreter lived, were never captured.

The Zero program

The Zero program’s header comment reads:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
 99 Bottles of Beer in Zero
 --------------------------
       by Seirian J. Pardoe
       on 7/4/06

   Compatible with Zero 1.0+

   Zero intepreter can be found at
     www.freewebs.com\blackdragonvb
        in the VB section.

Pardoe used day/month order in program headers: the Visual Basic entry is headed “25/2/05”. So “7/4/06” most plausibly means 7 April 2006. 99-bottles-of-beer.net used month/day order and dated the Zero entry 04/11/06, which is 11 April 2006. Taken together, the program was written in early April 2006 and published a few days later. By then a version 1.0 of the language already existed. The earliest Wayback Machine capture of the entry’s page is from July 2008.

Disappearance

By the end of 2008, the Black Dragon VB page had been replaced with a notice: “This site has been moved to http://alternatelogic.net/". A December 2008 capture of alternatelogic.net shows a similar frameset site now titled “Alternate Logic”, with the description “Games & Devtools” and the keywords “games, c++, opengl, tools”. Again, only the outer frame was archived. By October 2011 the domain was serving a parked-domain page. No release of the Zero interpreter from either site has been found in the Internet Archive, and the esolangs.org wiki has no article about it.

Design Philosophy

No specification, manual or description of Zero’s design survives, so its goals can’t be stated with confidence. The one program suggests a language in the spirit of two-dimensional esoteric languages such as Befunge: the source is laid out as a picture, and control flow travels along drawn paths. Pardoe even adds a presentation note, “Best viewd in Lucida Console, size 10”, which suggests the layout mattered. However, the program never names Befunge or any other language as an inspiration, so no influence is listed on this page.

Key Features

Without an interpreter or documentation, the only honest way to describe Zero is to report what is visible in the surviving code:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
      /-[*99>]>--!-[p~ bottles of beer~]\
      |$%[-[c]3£]\/[~,llaw eht no ~[<1]]/
      \----------/\[[1>]~ bottle of beer~]--\
 /[~,dnuora ti ssap dna nwod eno ekaT ~[<1]]/
 \[[1>]~ Go to the store and buy some more.~]-\
                            /-----------------/
                           //0[~ 99~]>[[0]]>[[01>]]>[[05>]0>p][fx]
                 /---------/\[<0[<50]]<0[[<40]]-[0p<0[<50]]<[[0]]-\
                //[[05>]0>p0p]0[~ No more~]>[[0]]>[[01>]]>[[05>]]>/
             /--/\<[[<10]]<[[0]]<[~erom on ~0[<50]]<[[<30]]0\
          /--/-![3£[2>]]->-[[01>]]->-%>![[02>]]->-[[5>]0>p0]/
          \%-+-![3£[0]]->-[[1>]]->-%>![[0]]->-[[5>]0>p0]0\
             \-\/->1-<0-[£]-<--[>1]-%--[<[<50]]<[[<30]]--/
              //\-![3£[0]]->-[[1>]]->-[[5>]>p0p]\
              \------------------[£]-<0-%-------/

Several things stand out:

  • Drawn control paths. The characters /, \, |, - and + form closed loops and corridors, much like mirrors and paths in other 2D languages. This strongly suggests that the instruction pointer moves across the grid, not line by line.
  • Strings delimited by tildes. Text such as ~ bottles of beer~ and ~ Go to the store and buy some more.~ sits between ~ characters.
  • Reversed strings. Some text appears backwards (~,llaw eht no ~ is “on the wall,”; ~,dnuora ti ssap dna nwod eno ekaT ~ is “Take one down and pass it around,”; ~erom on ~ is “no more”). This fits an instruction pointer that reads those rows from right to left.
  • Heavy use of brackets and digits. Nested groups such as [[01>]], [<50] and [[<30]] repeat throughout. They may be addressing or memory operations, but their meaning is not documented anywhere.
  • Unusual symbols. The code uses !, $, %, *, p, c, f, x and the pound sign £. Using £ as an operator is a rare choice, and it hints that the author typed on a UK keyboard. This is only an inference, and the page does not rely on it for any other claim.

What these operators actually did is unknown. Any “reference” to Zero’s instruction set would be invented, so this page does not give one.

Evolution

There is no evidence of Zero changing after 2006. The only version ever mentioned is “Zero 1.0”. No later program, update to the 99 Bottles entry, or discussion of the language has been found. When the author moved to alternatelogic.net in 2008, the new site’s description (“Games & Devtools”, C++ and OpenGL) shows no sign that Zero was still a focus.

Current Relevance

Zero is effectively extinct:

  • No implementation survives. The Visual Basic interpreter was only ever distributed from the author’s freewebs.com site, and the archive never captured it.
  • No documentation survives. No manual, specification or esolangs.org article exists.
  • Its one public record is gone from the live web. 99-bottles-of-beer.net has since gone offline, and its domain no longer resolves. The Zero entry and its two reader comments survive only in Wayback Machine captures. A June 2010 capture shows a score of 2.86 from 7 votes. The two comments were a row of screamed “A"s (November 2008) and, in April 2010, “This must be the most elegant language I have ever seen”, which was most likely tongue-in-cheek.

A crowded name

“Zero” has been used for several unrelated languages, and they are easy to confuse:

LanguageYearDescription
Zero (Pardoe)2006The 2D esoteric language described on this page
zerolang (Jakub Woźniak)2013A Brainfuck-style toy with 0-prefixed commands, implemented in a single Python file on GitHub
Zero (Tailcalled)2014An esolangs.org thought experiment: Brainfuck opcodes XORed with the halting sequence, deliberately uncomputable to translate or run in general
Zero / zerolang (Vercel Labs)2026An experimental, “graph-native” “programming language for agents” with its own compiler toolchain; its GitHub repository was created in May 2026

The entry for Zero in our encyclopedia listing gives the year as 2015 and classes it as a procedural systems language. We found no language named Zero that matches that description in 2015. The name matches Pardoe’s catalogued esoteric language, which is firmly dated to 2006.

Why It Matters

Zero shows how fragile hobbyist language design was in the free-hosting era of the mid-2000s. One person could invent a language, write an interpreter in Visual Basic, and publish a showcase program in a well-known catalogue. Yet within a few years the interpreter, the documentation and the website were all gone, because frameset pages on free hosts were rarely archived in full. The 99 Bottles of Beer project preserved the program, a date and a name, and that is enough to show the language existed and had a distinctive visual style. It is not enough to run it. Zero is a reminder that preserving a language means preserving its implementation, not just examples of its code.

Timeline

2006
On 27 February, 99-bottles-of-beer.net publishes a Visual Basic 6 entry by Seirian J. Pardoe that links to the author's freewebs.com/blackdragonvb site
2006
Pardoe writes '99 Bottles of Beer in Zero' (header dated 7/4/06), noting it is 'Compatible with Zero 1.0+' and that the Zero interpreter is in the VB section of the author's site
2006
The program is published on 99-bottles-of-beer.net as entry 1110, dated 04/11/06 and filed under 'esoteric language'
2007
Earliest Wayback Machine capture (8 September) of 'Black Dragon VB', the frameset site said to host the interpreter; none of its inner pages were archived
2008
Earliest Wayback Machine capture of the Zero page on 99-bottles-of-beer.net (5 July); by late December the Black Dragon VB page says the site has moved to alternatelogic.net
2011
By October, alternatelogic.net is serving a parked-domain page, and no copy of the Zero interpreter is known to survive
2026
99-bottles-of-beer.net, the language's only surviving record, goes offline; the Zero entry now survives only in web archives

Notable Uses & Legacy

99 Bottles of Beer project

Entry 1110 on 99-bottles-of-beer.net, a 15-row two-dimensional program by the language's author, is the only known surviving Zero source code

Running Today

Run examples using the official Docker image:

docker pull
Last updated: