Lithp.py (~2008)

Old-school coding project sparks nostalgia as fans roast the gloriously ancient website

TLDR: Lithp is a heavily documented throwback project that recreates an early Lisp interpreter in Python and invites readers to learn from the source. The comment section stole the spotlight by lovingly roasting the page’s old-school table-based design, turning the whole thing into a nostalgia party.

A dusty little programming time capsule called Lithp has resurfaced, and the real action is not just in the code — it’s in the peanut gallery. The project is a lovingly documented attempt to recreate an early version of Lisp, one of the oldest programming languages around, in Python. In plain English: it’s a modern-ish remake of a computer language classic, built with enough notes and explanations that curious readers can follow along like a guided museum tour through old-school computer history.

But while the project page invites people to learn, comment, and share stories, the community instantly locked onto a different star of the show: the website itself. The loudest reaction came from Retr0id, who basically gave the page a fashion review, praising its “tasteful web design” before delivering the punchline — the layout is powered by the humble old HTML table. That one line packs the whole mood: part admiration, part gentle roast, and 100% nostalgia bait.

That’s the mini-drama here. Is this a serious educational project, or an accidental retro aesthetic masterpiece? Fans seem delighted that the code and the page both feel frozen in time. The joke is that a project about ancient computing ideas somehow arrived wrapped in an equally ancient internet look. Instead of mocking it outright, the vibe is more affectionate than cruel: the community seems to be saying, if you’re going to revive computing history, you may as well revive web design history too.

Key Points

  • The article introduces Lithp as a Python interpreter for John McCarthy’s original Lisp with heavily documented source code.
  • The project source is hosted on GitHub and includes multiple files such as `atom.py`, `env.py`, `lisp.py`, `reader.py`, and `core.lisp`.
  • The interpreter requires Python 2.6.1 or newer to function.
  • The `Lithp` class is presented as the interpreter driver responsible for environment setup, argument parsing, input reading, evaluation, printing, and looping.
  • The initialization code binds core Lisp functions, utility functions, special forms, core symbols like `t` and `nil`, and meta-bindings for the interpreter and global environment.

Hottest takes

"Very tasteful web design, too" — Retr0id
"the answer is the venerable <table>" — Retr0id
"I was curious how the layout was done" — Retr0id
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.