Show HN: Bithoven – A high-level, imperative language for Bitcoin Smart Contract

Bithoven drops: devs cheer, purists groan, memes sing

TLDR: Bithoven promises easier Bitcoin contracts by compiling readable code into script. Comments split between excitement and skepticism, with questions about Turing completeness and gas, calls for a simulator, and reminders that Bitcoin’s contracts are intentionally limited—making this useful for specific cases but not a do‑everything tool.

Bithoven crashes the party with a promise: write human‑friendly Bitcoin “smart contracts” and let it compile the scary script for you. The crowd split immediately. One camp dove into the docs and cheered readable if/else logic, named variables, and safety checks; finally, no stack spaghetti. The skeptics rolled their eyes, saying Bitcoin’s contract language is too limited anyway, while name‑dropping Miniscript and other prior tools as receipts that this symphony’s been played before.

Curious onlookers asked the big newbie question: are Bitcoin contracts “Turing complete” (aka can they do everything) and do they have Ethereum‑style gas fees? Old‑hands replied: Bitcoin scripts are intentionally restricted, and there’s no gas—just strict limits—so costs are predictable. A respected voice loved the idea but begged for a simulator to test every spend path; money code needs more than vibes. The creator even flexed a nerdy detail: a formal grammar with an LALR parser, keeping the language unambiguous.

The vibe? Half hype, half reality check. Devs highlight clean HTLC examples (time‑locked trades), and optimists imagine safer multi‑path contracts. Purists dismiss it as a fun toy. Memes landed too: “Bithoven” jokes turned Satoshi’s script into sheet music. Whether concerto or cover band, the comments stole the show.

Key Points

  • Bithoven is a high-level, type-safe language that compiles to native Bitcoin Script.
  • It offers imperative syntax, named variables, and safety checks to simplify smart contract development.
  • Supports multiple spending paths and targeted compilation for legacy, SegWit, and Taproot via pragmas.
  • Provides native primitives for timelocks, cryptography (sha256, checksig), and verification (verify).
  • Includes a Web IDE, documentation, and installation via cargo and npm; an HTLC example demonstrates usage.

Hottest takes

"adding simulators for checking all spend paths would add comfort. A lot of comfort." — vessenes
"I don't think it makes any sense except for fun, Bitcoin scripts are pretty limited" — wslh
"are Bitcoin smart contracts Turing Complete and suffer the same gas issue as ETH" — OsrsNeedsf2P
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.