Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (rescript-blossom) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
ReScript-Blossom 🌺
ReScript-Blossom is a ReScript implementation of the famous blossom algorithm. It finds a maximum matching of vertices on general, undirected, weighted graphs.
Installation
You can add ReScript-Blossom to your project by running:
npm install rescript-blossomYou will need to edit your project's rescript.json file and list
ReScript-Blossom in the bs-dependencies.
{
"bs-dependencies": ["rescript-blossom"]
}Development
Download the code:
git clone https://github.com/johnridesabike/rescript-blossom.gitIf you want to make your own changes, then it's recommended to fork the repository on GitHub and clone your forked version.
Install the dependencies:
npm installCompile a production build:
npm run buildRun the ReScript watcher.
npm run startRun the tests:
npm run testRun benchmarks that compare it to the similar JavaScript algorithm:
npm run benchRun benchmarks in a browser:
npm run browserThen open the URL provided and navigate to the __benchmarks__ directory.
This code uses many terms and ideas from "Efficient algorithms for finding maximum matching in graphs" by Zvi Galil, ACM Computing Surveys, 1986. Reading the paper will make this code much more understandable.