TL;DR
A project called rust-autolisp implements an AutoLISP interpreter written in Rust and compiled to WebAssembly, enabling AutoLISP code to run in a web browser without AutoCAD. The tool outputs SVG and AutoCAD R12 (DXF/AC1009) formats and includes an interactive demo and source on GitHub.
What happened
rust-autolisp is an AutoLISP interpreter implemented in Rust and compiled to WebAssembly so AutoLISP scripts can be executed directly inside a web browser. The project highlights a CAD automation workflow that dates back to a 1991 schematic generator developed for a small electrical firm in Unterneukirchen, Bavaria: that system used CSV files, templates and LISP routines to automate drawing creation. The new interpreter supports common AutoLISP constructs — including defun, setq, control structures, arithmetic and list operations — and exposes a command interface for generating drawing primitives. Generated output can be produced as SVG or DXF (AutoCAD R12/AC1009). The project provides an interactive web demo (requires JavaScript and WebAssembly) and links to the source code on GitHub, showing an example AutoLISP routine for drawing a rectangle.
Why it matters
- Runs AutoLISP code in browsers without requiring an AutoCAD installation, lowering the barrier to access legacy CAD automation.
- Produces interoperable vector outputs (SVG and DXF R12/AC1009) that can be consumed by common CAD and graphics tools.
- Revisits a decades-old automation workflow, demonstrating preservation and reuse of legacy CAD scripting techniques.
- Bridges older CAD scripting (AutoLISP) with modern toolchains (Rust and WebAssembly), enabling web-based tooling and demos.
Key facts
- Project name: rust-autolisp (AutoLISP interpreter implemented in Rust).
- Target platform: compiled to WebAssembly (WASM) for execution in web browsers.
- Browser demo: interactive demo available; it requires JavaScript and WebAssembly to run.
- Output formats supported: SVG and DXF (AutoCAD R12 / AC1009).
- Supported AutoLISP features include: defun, setq, if, while, cond, arithmetic operators, sin, cos, sqrt, car, cdr, list, nth, command, princ and others.
- Example provided: a short AutoLISP function that draws a rectangle using successive LINE commands.
- Historic origin: the underlying CAD workflow traces to a 1991 schematic generator used by a small electrical company in Unterneukirchen, Bavaria.
- Source code is available on GitHub (link provided by the project).
What to watch next
- Interactive web demo requiring JavaScript and WebAssembly is available now.
- Broader AutoLISP function coverage and compatibility with newer AutoCAD features — not confirmed in the source.
- Integration with desktop CAD applications or plugins for round‑trip editing — not confirmed in the source.
Quick glossary
- AutoLISP: A dialect of the Lisp programming language embedded in AutoCAD, used historically to automate drawing and CAD workflows.
- Rust: A systems programming language focused on safety and performance, often used for building reliable low-level code.
- WebAssembly (WASM): A binary instruction format that enables high-performance code to run in web browsers alongside JavaScript.
- DXF (Drawing Exchange Format): A CAD data file format developed by Autodesk for interoperability between CAD programs; R12/AC1009 denotes an older release level.
- SVG: Scalable Vector Graphics, an XML-based format for two-dimensional vector images supported across web browsers.
Reader FAQ
Can I run AutoLISP without AutoCAD using this project?
Yes — rust-autolisp is designed to execute AutoLISP code in a web browser without requiring AutoCAD.
What output formats does the interpreter produce?
The project can emit SVG and DXF files compatible with AutoCAD R12 (AC1009).
Is the project source code available?
Yes — the project links to its source code on GitHub.
Does it fully implement all AutoLISP features and modern AutoCAD APIs?
Not confirmed in the source.
rust-autolisp: AutoLISP Interpreter in Rust/WebAssembly Hinweis: Die interaktive Demo benötigt JavaScript und WebAssembly. Zur interaktiven Version Was ist rust-autolisp? rust-autolisp ist ein AutoLISP Interpreter, der in Rust geschrieben und zu…
Sources
- Show HN: AutoLISP interpreter in Rust/WASM – a CAD workflow invented 33 yrs ago
- Lisp Interpreter in a Browser using WASM
- Awesome WebAssembly Languages …
- A Gentle Introduction to WebAssembly in Rust (2025 Edition)
Related posts
- Unix “find” expressions compiled to bytecode — compiling find’s expression language
- LearnixOS: Step-by-step guide to building a POSIX OS in Rust
- Tachyon: High-frequency statistical sampling profiler for Python