July 3, 2026

SELECT * FROM nostalgia_drama();

Commodore 64 Basic for PostgreSQL

Old-school Commodore code invades a database and the internet is losing it

TLDR: A developer stuffed old Commodore 64 BASIC, the language from a beloved 1980s home computer, inside a modern database so it can run there today. Commenters were torn between delighted nostalgia, "why not?" chaos, and a sharp side debate over AI-style writing and forgotten computing history.

The internet has found its latest "wait… why does this exist?" masterpiece: somebody got 1982 Commodore 64 BASIC — the super-old home computer language with the famous blue screen — running inside PostgreSQL, a modern database. Yes, really. That means people can write tiny retro programs with line numbers like 10 and 20, and have them run from inside database functions. For nostalgic readers, this was pure catnip; for everyone else, it was a glorious fever dream.

The comments instantly split into two camps: the awed nostalgics and the side-eye skeptics. One fan basically summed up the mood with, don’t ask why, just admire it. Another cheered that the internet is now constantly answering the question, "what if developers could build literally anything with almost no effort?" And honestly, that vibe dominated: half amazement, half "we have gone too far," all entertainment. The jokes got even better when one commenter casually dropped a link showing you can also run Commodore 64 BASIC on an HP calculator, because apparently reality has stopped having rules.

But of course, no online party survives without drama. One commenter took a flamethrower to the write-up itself, complaining it was "littered with AI-isms," while another used the moment to lament that Commodore keeps getting erased from computing history. So the real story wasn’t just retro code in a database — it was nostalgia, nitpicking, and nerd pride colliding in public, exactly as the comment section gods intended.

Key Points

  • PL/CBMBASIC is a PostgreSQL procedural language extension that runs Commodore 64 BASIC V2 code inside database backend processes.
  • The extension embeds the original 1982 Microsoft/Commodore interpreter through Michael Steil's cbmbasic project, which recompiled the 6502 ROM into C.
  • Each function call resets an emulated 64KB machine state and re-enters the ROM, with the article claiming about 15 to 20 microseconds per call.
  • Function arguments are injected into reserved BASIC lines and mapped to Commodore-style variable types such as `$` for strings, `%` for integers, and CBM floating point for numerics.
  • The extension can return OUT/INOUT values by reading BASIC variable tables in emulated memory and can execute SQL by treating PostgreSQL as Commodore device 8 via SPI.

Hottest takes

"ignore asking why and sit in awe of the what" — rgacote
"answered all over the Internet every day and I love it" — wewewedxfgdf
"absolutely littered with AI-isms" — 0x0
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.