惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

人人都是产品经理
人人都是产品经理
博客园_首页
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
Hugging Face - Blog
Hugging Face - Blog
美团技术团队
小众软件
小众软件
T
Tailwind CSS Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
有赞技术团队
有赞技术团队
WordPress大学
WordPress大学
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
罗磊的独立博客
V
V2EX
酷 壳 – CoolShell
酷 壳 – CoolShell
IT之家
IT之家
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Recent Announcements
Recent Announcements
M
MIT News - Artificial intelligence
阮一峰的网络日志
阮一峰的网络日志
The GitHub Blog
The GitHub Blog

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - tamnd/python-0.9.1: Python 0.9.1 from 1991, Guid...
tamnd · 2026-04-24 · via Hacker News: Show HN

Note

This is Python 0.9.1, the first public beta release, written by Guido van Rossum in 1991. The source is preserved as-is. This fork patches it to compile on modern macOS and Linux with no changes to the language or runtime behavior.

Guido uploaded this to alt.sources on February 20, 1991. It predates classes (those came in 0.9.4), has no list.append, and only understands single-quoted strings. It is a fully working Python interpreter you can build and run today.

Here is how Guido described it at the time:

This is Python, an extensible interpreted programming language that combines remarkable power with very clear syntax.

Python can be used instead of shell, Awk or Perl scripts, to write prototypes of real applications, or as an extension language of large systems, you name it. There are built-in modules that interface to the operating system and to various window systems: X11, the Mac window system (you need STDWIN for these two), and Silicon Graphics' GL library. It runs on most modern versions of UNIX, on the Mac, and I wouldn't be surprised if it ran on MS-DOS unchanged.

Building and installing Python is easy (but do read the Makefile). A UNIX style manual page and extensive documentation (in LaTeX format) are provided.

— Guido van Rossum, CWI Amsterdam, 1991

Build

macOS

cd src
make python
./python

Requires Xcode Command Line Tools (xcode-select --install). Tested on macOS 15 with Apple clang 17.

Linux (Docker / Podman)

docker build -t python091 .
docker run --rm -it python091

Tested on Debian bookworm inside Podman on macOS. Swap docker for podman if that is what you have.

Run

>>> print 'hello, 1991'
hello, 1991
>>> 1 + 1
2
>>> def fact(n): return 1 if n <= 1 else n * fact(n-1)

Warning

Double-quoted strings do not exist in this version. Use single quotes only.

What works, what doesn't

The interpreter itself is solid. The demo scripts are a mixed bag:

Script Status Reason
demo/suff.py Works Basic string ops, no deps
demo/ptags.py Broken in operator bug on string membership
demo/mkreal.py Broken 64-bit integer overflow in the runtime
demo/xxci.py Broken Same overflow
demo/findlinksto.py Broken Same overflow
demo/stdwin/wdiff.py Broken Requires STDWIN (1991 window toolkit)
demo/sgi/* Broken SGI IRIX hardware only

The overflow bug: intobject.c checks for multiplication overflow using (long)0x80000000, which on a 64-bit system is +2147483648 instead of -2147483648. Every multiplication involving large constants triggers a false overflow. It is a known 32-bit assumption and not something we fixed.

See demo/README.md for full notes.

What changed from the original

Three minimal patches to compile on modern toolchains:

  1. src/Makefile added -std=gnu89 -w -Wno-incompatible-function-pointer-types -DSIGTYPE=void to CFLAGS and dropped a hardcoded SGI path from DEFPYTHONPATH
  2. src/ceval.h added a missing flushline() declaration (called in bltinmodule.c but never declared)
  3. src/bltinmodule.c added #include "fgetsintr.h" (called fgets_intr() without the header)

Nothing in the language, bytecode, or standard library was touched. See Dockerfile for the Linux build recipe.

Docs

The original LaTeX documentation is in doc/. A readable Markdown version converted from all the .tex files is at doc/README.md.

There is also a Unix man page at python.man.

Original README

Guido's original note is preserved at README.old.

Thanks

Big thanks to Skip Montanaro for preserving and archiving the original source at smontanaro/python-0.9.1. Without that work this repo would not exist.

License

CWI 1991 open source license. See LICENSE.