pemistahl / lingua-go

The most accurate natural language detection library for Go, suitable for short text and mixed-language text
Apache License 2.0
1.19k stars 66 forks source link

Replace native implementation with Go bindings to WASM module #68

Open pemistahl opened 1 month ago

pemistahl commented 1 month ago

I've been maintaining four implementations of this library, namely Rust, Python, Kotlin, and this one in Go. Due to serious time constraints, there will only be updates for the Rust and Python implementations in the future. The Go and Kotlin implementations will be replaced with bindings to a Web Assembly (WASM) module created from the Rust implementation. It turned out that Rust is the best language for this kind of library. It has the highest speed of execution and the lowest memory requirements.

In order to create the Go bindings, I will make use of a WASM runtime such as wasmer-go or wazero.

KasperTidemann commented 6 days ago

@pemistahl Thanks for your efforts here, they are greatly appreciated.