Lily Programming Language

HN asks “Why Lily?” as others dream of a safer Lua vibe

TLDR: Lily is a new safety‑focused language you can embed in apps, showing off with an old‑school calculator demo. The crowd split between “Why make this?” skepticism, “typed Lua” hopes, and a spicy detour into AI‑friendly language design—signaling real appetite for safer scripting and future‑proof tools.

Meet Lily, a new programming language that checks your code before it runs (that’s what “statically-typed” means), plugs into C apps, and keeps memory tidy with counting and a backup cleanup. It ships with guard-rail features like safe “Option/Result” outcomes, single-inheritance classes, exceptions, and even a built‑in template mode. The demo? A throwback RPN (reverse‑polish notation) calculator—old‑school calculator lovers swooned.

But the comments stole the show. One voice thundered the eternal internet question: “Why Lily?” A chorus nodded: do we really need another language? Right behind them, a curious camp asked if Lily could be the statically‑typed Lua people didn’t know they wanted—something you can drop into apps, but with more safety checks. That split the room into Team “Give me safety in scripts” vs. Team “Dynamic forever.” Meanwhile, an unabashed fan cheered the embeddable vibes and RPN nostalgia—cue jokes about dusting off graphing calculators. Then someone tossed a wildcard: what if a language was designed to be easiest for AI coding agents to use? The thread briefly transformed into a futurist talk show—dreams of AI‑friendly syntax, fears of robot engineers, and a lot of popcorn. Verdict: Lily’s tiny, tidy vision sparked big questions—and even bigger hot takes.

Key Points

  • Lily is a statically-typed language with a reference interpreter.
  • Memory management uses reference counting with garbage collection as a fallback.
  • Features include built-in template mode, C embedding, single inheritance, exceptions, generics, and ADTs.
  • Predefined ADTs Option and Result are available for common patterns.
  • An RPN example demonstrates typed lambdas, generics, error handling, and Result-based outcomes.

Hottest takes

“Why Lily?” — oneseven
“a statically-typed alternative to Lua?” — pansa2
“cheapest/easiest to use by an AI coding agent?” — 7e
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.