macOS
brew install snobol4local Homebrew formula metadata
sudo port install snobol4MacPorts ports tree · lang/snobol4/Portfile · source: api.github.com
brew
String oriented and symbolic programming language. Version 2.3.4 via Homebrew; verified 2026-05-12.
install
brew install snobol4local Homebrew formula metadata
sudo port install snobol4MacPorts ports tree · lang/snobol4/Portfile · source: api.github.com
sudo dnf install snobol4Fedora Rawhide package metadata · snobol4 · source: dl.fedoraproject.org
nix profile install nixpkgs#snobol4nixpkgs package indexes · pkgs/by-name/sn/snobol4/package.nix · source: api.github.com
sudo zypper install snobol4openSUSE Tumbleweed package metadata · snobol4 · source: download.opensuse.org
overview
String oriented and symbolic programming language
history
CSNOBOL4 is Phil Budne's maintained C port of the original Bell Labs Macro SNOBOL4 implementation, preserving a historically important string-processing language in a form that modern Unix package managers can build and ship.
The SNOBOL family began at Bell Labs in 1962, with SNOBOL4 work beginning in 1966 as a portable macro implementation written in SIL. The Regressive.org history page describes Macro SNOBOL4 as having been ported to more than 50 systems, making portability part of the language's culture from early on.
CSNOBOL4 carries that lineage forward by translating the Macro SNOBOL4 implementation to C. Its README describes it as a free port of the original SIL macro version, developed at Bell Labs, with dynamic typing, garbage collection, user data types, and on-the-fly compilation. The current release page lists CSNOBOL4 2.3.4 in April 2026 and notes support for the full SNOBOL4 language plus BLOCKS, SPITBOL, and other extensions.
The supplied package metadata lists CSNOBOL4 as available through Homebrew, Fedora/dnf, MacPorts, Nix, and openSUSE/zypper. That distribution footprint is the practical reason many modern users encounter SNOBOL4: not as an active mainstream language, but as a preserved runtime available from the same package managers used for contemporary developer tools.
The package installs the `snobol4` interpreter along with related tools such as `sdb` and `snopea`. It is used for running legacy SNOBOL4 programs, studying pattern matching and symbolic programming, and experimenting with extensions documented in the CSNOBOL4 manual pages.
CSNOBOL4 matters to package nerds because it is living software archaeology: a 1960s language implementation lineage maintained with modern C portability, manual pages, release notes, and a GitHub issue tracker. It gives package collections a compact way to keep a historically significant programming environment installable.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
sdb-2.3.4 | cli | global executable | |
snobol4 | cli | global executable | |
snobol4-2.3.4 | cli | global executable | |
snopea | cli | global executable | |
snopea-2.3.4 | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://www.regressive.org/snobol4/
install metadata
| Package key | brew:snobol4 |
|---|---|
| Version | 2.3.4 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/snobol4 |
| Homepage | https://www.regressive.org/snobol4/ |
| Repository | https://github.com/philbudne/csnobol4 |
| Upstream docs | https://www.regressive.org/snobol4/csnobol4/curr |
| License | BSD-2-Clause |
| Source archive | https://ftp.regressive.org/snobol/snobol4-2.3.4.tar.gz |
| Last updated | 2026-05-12T21:47:11Z |
| Pulse | updated |
| Dependencies | openssl@4 |
| Uses from macOS | libffi, sqlite |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | snobol4 |
| Version Scheme | 0 |
| Revision | 0 |
| Conflicts With |
|
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
snobol4
nix profile install nixpkgs#snobol4snobol4 2.3.1-8.fc44
A port of Macro SNOBOL4
https://www.regressive.org/snobol4/csnobol4/curr/
sudo dnf install snobol4snobol4-devel 2.3.1-8.fc44
Development files for snobol4
https://www.regressive.org/snobol4/csnobol4/curr/
sudo dnf install snobol4-develsnobol4 2.3.1-2.9
A port of Macro SNOBOL4
https://www.regressive.org/snobol4/csnobol4/curr/
sudo zypper install snobol4snobol4-devel 2.3.1-2.9
Development files for snobol4
https://www.regressive.org/snobol4/csnobol4/curr/
sudo zypper install snobol4-develsnobol4
sudo port install snobol4source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.