# Install mmix with Homebrew, apk

64-bit RISC architecture designed by Donald Knuth. Version 20160804 via Homebrew; verified from local package data. Also installable with apk: sudo apk add mmix.

## Install

```sh
sudo av install brew:mmix
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install mmix
```

  Evidence: local Homebrew formula metadata

### Linux

- apk (92%):

```sh
sudo apk add mmix
```

  Evidence: Alpine Linux edge package indexes: mmix from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz

## Package facts

- **Package key:** brew:mmix
- **Package manager:** Homebrew
- **Version:** 20160804
- **Source summary:** 64-bit RISC architecture designed by Donald Knuth
- **Homepage:** <https://mmix.cs.hm.edu/>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- mmix (alias)
- mmixal (alias)
- mmmix (alias)
- mmotype (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 20160804
## Project history and usage

MMIX is Donald E. Knuth's 64-bit RISC architecture and accompanying software suite, created to replace MIX, the educational machine used in earlier volumes of The Art of Computer Programming. Knuth's documentation explains that by the 1990s MIX no longer represented modern architecture, so MMIX was designed as a cleaner RISC-style machine with help from figures including John Hennessy and Dick Sites. The Munich University of Applied Sciences MMIX site quotes Knuth's 2011 summary of the project: during the 1990s he designed a computer representative of modern machines yet easy to learn, completed preliminary software in 1999, and later froze MMIXware for use with TAOCP material.

### Project history

The software distributed as MMIXware makes the architecture usable as a teaching and research artifact. Knuth's MMIXware page describes CWEB programs for an assembler that converts symbolic MMIX code into object files, simulators for executing those object files, and the MMMIX meta-simulator for dynamic scheduling of a complex pipeline with configurable functional units, caches, branch prediction, and interrupts. The MMIX documentation specifies a 64-bit RISC machine with 256 general-purpose registers, fixed four-byte instructions, a 64-bit address space, and big-endian memory semantics.

### How it is used

In package-manager form, `mmix` is less an everyday developer dependency than a compact distribution of the TAOCP architecture tools: `mmix`, `mmixal`, `mmmix`, and `mmotype`. It is useful for readers working through Knuth's MMIX examples, educators teaching assembly language or architecture concepts, and hobbyists exploring a literate-programming implementation of a designed CPU rather than an industrial ISA.

### Sources

- <https://cs.stanford.edu/~knuth/mmixware.html>
- <https://formulae.brew.sh/formula/mmix>
- <https://mmix.cs.hm.edu/>
- <https://mmix.cs.hm.edu/doc/mmix-doc.pdf>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Other Package-Manager Records

- apk - mmix - 0_git20221025-r0: normalized package name match | Alpine Linux edge package indexes: mmix from https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz | Assembler and instruction level simulator for the MMIX platform | http://www.mmix.cs.hm.edu/exe/index.html


## Combined YAML source

View the package source record on GitHub. [combined/mmix.yml](https://github.com/mxcl/pkgdb/blob/main/combined/mmix.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
