Neva is a statically typed, compiled dataflow programming language.
Instead of writing step-by-step instructions, you create networks of nodes that exchange messages through ports.
import {
fmt
runtime
}
def Main(start any) (stop any) {
panic runtime.Panic
println fmt.Println<string>
---
:start -> 'Hello, World!' -> println
println:err -> panic
println:res -> :stop
}
This code imports fmt and runtime to use Println and Panic components, and defines Main with one input (start) and one output (stop). The two nodes are connected: when the program starts, 'hello world' is sent to println; if printing fails, errors go to panic; after printing, the program ends.
- Flow-Based Runtime - Everything runs in parallel by default
- Hybrid Programming (WIP) - Program both in text and visual editor
- Powerful Compiler - Strict static types and machine code compilation
- Go Interop - call Go code from Neva and vice versa for gradual adoption and reuse of the ecosystem
- Modern Language Design - errors as values, pattern matching, null safety, etc.
- And many more!
Neva compiles to clean, dependency-free Go code using goroutines and channels for message passing. The Go compiler then produces optimized binaries for any supported platform.
flowchart LR
source_code-->compiler-->|go_code| go_compiler
subgraph compiler
parser-->analyzer-->backend
end
go_compiler-->machine_code
go_compiler-->wasm
- Controlflow paradigm is is well established while dataflow is underrepresented.
- Existing visual tools lacks the expressiveness of traditional languages.
- Many languages treat concurrency as an advanced feature, not the default.
- Not many languages compiles to Go or interops with it, while it has state of the art runtime and standard library.
- See contributing and architecture
- Check out the roadmap
- Read our CoC
- Join discord server 👈
Your support by joining us will show interest and motivate us to continue.
Please give us a star ⭐️ to increase our chances of getting into GitHub trends. The more developers we reach, the more likely we are to build something truly revolutionary together. 🚀
Every share helps us grow our community.
