# Install one-ml with Homebrew

Reboot of ML, unifying its core and (now first-class) module layers. Version 0.1 via Homebrew; verified 2026-07-11.

## Install

```sh
sudo av install brew:one-ml
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install one-ml
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:one-ml
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/one-ml>
- **Version:** 0.1
- **Source summary:** Reboot of ML, unifying its core and (now first-class) module layers
- **Homepage:** <https://people.mpi-sws.org/~rossberg/1ml/>
- **Upstream docs:** <https://people.mpi-sws.org/~rossberg/1ml/>
- **License:** Apache-2.0
- **Source archive:** <https://people.mpi-sws.org/~rossberg/1ml/1ml-0.1.zip>
- **Last updated:** 2026-07-11T09:50:48+09:00
- **Generated:** 2026-08-04T22:13:35+00:00

## Executables

- 1ml (cli)
- 1ml (alias)

## Build dependencies

- ocaml

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-08-04
- Package-manager version: 0.1
- Package-manager updated: 2026-07-11
- Local data: ok
- Upstream repository: https://people.mpi-sws.org/~rossberg/1ml/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

1ML is Andreas Rossberg's research reboot of ML that treats first-class modules as the starting point and collapses the traditional split between ML's core language and module language into one small language.

### Project history

The 1ML line began as a research language and prototype interpreter tied to Rossberg's work on modules. The project page lists the original ICFP 2015 paper, an extended 2015 version with technical appendix, a 2016 extension with effect and generativity polymorphism, and a revised Journal of Functional Programming article published in 2018.

The GitHub repository describes the code as a 2014 toy interpreter, written mainly to experiment with 1ML type checking. Its README is explicit about the prototype's limits: it is basic, omits many features expected from a real ML, has basic error messages, and implements type checking naively.

### Adoption history

1ML's adoption is primarily academic and experimental rather than production-language adoption. Homebrew packages the prototype as one-ml, making the 1ml executable easy to install for people who want to run examples from the papers or inspect the type-system design.

### How it is used

Developers use the 1ml executable either as an interactive prompt or against .1ml files, often with the bundled prelude. The practical workflow is exploration: load the prelude, evaluate bindings, inspect type-checking behavior, and compare programs with the examples from the papers.

### Why package nerds care

For package nerds, one-ml is a rare packaged research artifact: a runnable slice of programming-language theory where the package is not a general runtime so much as an executable companion to a type-system proposal.

### Timeline

- 2014: the prototype interpreter README identifies the code as a 2014 proof-of-concept.
- 2015: Rossberg's 1ML paper appeared at ICFP, with an extended version in the same year.
- 2016: the project page lists 1ML with Special Effects as a WadlerFest extension.
- 2018: the revised and expanded 1ML article appeared in Journal of Functional Programming.

### Sources

- <https://formulae.brew.sh/formula/one-ml>
- <https://github.com/rossberg/1ml>
- <https://people.mpi-sws.org/~rossberg/1ml/>
- <https://www.cambridge.org/core/journals/journal-of-functional-programming/article/1ml-core-and-modules-united/47B10882829E4B32F98FBA93B28CEF30>


## Security Notes

narrow executable package without higher-risk signals.

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

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** one-ml
- **Version Scheme:** 0
- **Revision:** 2
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable


## Related links

- [Terminal utility packages](https://pkg.so/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Language runtime packages](https://pkg.so/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://pkg.so/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Package ecosystem packages](https://pkg.so/package-ecosystem-tools/) - Matched package manager, installer, dependency, registry, or publishing metadata.
- [ocaml](https://pkg.so/brew/ocaml/) - Build dependency declared by Homebrew.
- [ruby](https://pkg.so/brew/ruby/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [lua](https://pkg.so/brew/lua/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [algol68g](https://pkg.so/brew/algol68g/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [picat](https://pkg.so/brew/picat/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [arturo](https://pkg.so/brew/arturo/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [mosml](https://pkg.so/brew/mosml/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, ml, programming-language.
- [latino](https://pkg.so/brew/latino/) - Shares pkgdb curated category or tags: cli, interpreter, language-runtime, programming-language.
- [rust](https://pkg.so/brew/rust/) - Shares pkgdb curated category or tags: cli, language-runtime, programming-language.

## Combined YAML source

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


## Sources

- pkg.so package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- pkgdb category and tag curation
- package relationship graph
- cross-ecosystem install command graph
