A high-performance, Wasm-native, extensible Natural Language Processing library in MoonBit.
git clone https://github.com/ppyq882/moonnlp.git
Set-Location moonnlp
moon version --all
moon update
moon fmt --check
moon check --deny-warn --target all
moon build --target all
moon test --deny-warn --target all
moon info --target allpowershell -ExecutionPolicy Bypass -File scripts/verify_acceptance.ps1 -SkipUpdatemoon run cmd/mainlet corpus = [["alpha", "beta"], ["alpha", "gamma"]]
match @segment.HMMModel::train(corpus) {
Ok(model) => {
let segmenter = @segment.HMMSegmenter::from_model(model)
println(segmenter.segment("alphabeta"))
}
Err(message) => println("HMM training error: " + message)
}moon run examples/train_hmmlet classifier = @analysis.NaiveBayesClassifier::new()
classifier.train("technology", ["MoonBit", "compiler", "tokenizer"])
let pipeline = @analysis.DocumentPipeline::with_classifier(classifier)
match pipeline.analyze("MoonBit compiler tokenizer", 3, 1) {
Ok(result) => println(result.summary)
Err(message) => println("analysis error: " + message)
}moon run examples/document_pipelineimport {
"ppyq882/moonnlp/core",
"ppyq882/moonnlp/segment",
"ppyq882/moonnlp/analysis",
}moon run benchmarksmoon add ppyq882/moonnlp --dry-runmoon add ppyq882/moonnlpmoon fmt --check
moon check --deny-warn --target all
moon build --target all
moon test --deny-warn --target all
moon info --target all
git diff --checkA high-performance, Wasm-native, extensible Natural Language Processing library in MoonBit.