Soppo
A language that compiles to Go, adding ergonomic and type safety features that Go lacks. Soppo uses Go syntax wherever possible - if you know Go, you know most of Soppo.
Take the tour · Visit the playground · See the website
Why Soppo?
- Enums & pattern matching: Tagged unions with exhaustive matching
- Nil safety: Compile-time nil checks
- Error handling:
?propagation with custom handling blocks - Rust-inspired diagnostics: Helpful compiler error messages
- Go interop: Use any Go library directly
- Batteries included: LSP, formatter, linter, test runner with doctests
See docs/guide.md for the language guide.
Installation
Install via SOPMOD, the version manager for Soppo, written in Soppo:
|
Or install manually with Cargo: cargo install soppo
License
BSD 3-Clause. See LICENSE.