Welcome to the MimIR Plugin Registry! This repository lists third-party plugins for the MimIR compiler infrastructure.
Plugins are developed independently and are not maintained as part of the MimIR core repository.
| π·οΈ Name | π Repository | π§ Description | π€ Maintainer | β Version | ποΈ Notes |
|---|---|---|---|---|---|
eqsat |
https://github.com/ashiven/eqsat | This plugin integrates the egg and slotted-egraphs libraries into MimIR to enable optimizing programs through the process of equality saturation. | Jannik Novak @ashiven | 0.1 |
Each plugin entry includes:
- π·οΈ Name: Plugin identifier
- π Repository: Source URL (git)
- π§ Description: Short explanation of what the plugin does
- π€ Maintainer: Author or team
- β
Version: Last known working MimIR version (
major.minor) - ποΈ Notes: Optional remarks (experimental, deprecated, etc.)
MimIR provides a plugin interface that is versioned using the MimIR release version.
Plugins declare which MimIR version they are compatible with (major.minor).
MimIR may refuse to load plugins built for incompatible versions.
- MimIR
masteris under active development and may introduce breaking changes at any time. - Plugins are expected to target tagged MimIR releases (e.g.
0.1,0.2, ...). - Compatibility with
masteris not guaranteed. - This registry records the last known compatible MimIR version for each plugin.
Want your plugin listed here? Great.
To register a plugin:
- Fork this repository
- Add your plugin entry to the table above
- Ensure your plugin exports the required entrypoint (
mim_get_plugin()) - Open a pull request
Plugins should be buildable against at least one released MimIR version.
- MimIR releases (
0.1,0.2, ...) define the plugin API compatibility boundary. - Plugins should target released versions, not
master. - When MimIR introduces breaking plugin API changes, the MimIR version is bumped.
This registry does not guarantee that plugins remain compatible with future MimIR releases.
- This registry does not build, distribute, or validate plugins.
- It is purely informational.
- Use plugins at your own risk.