AI prompts
base on Write programs like message passing graphs and get parallelism for free. Statically typed and compiled to machine code! <div align="center">
<img src="./assets/logo/light_gradient.svg" alt="Nevalang logo">
</div>
<div align="center" style="display:grid;place-items:center;">
<h1>Neva Programming Language</h1>


[](https://goreportcard.com/report/github.com/nevalang/neva)

[](https://discord.gg/dmXbC79UuH)

[](https://opensource.org/licenses/MIT)
</div>
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.
## Hello, World!
```neva
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.
## Key Features
- **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!
## Architecture
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.
<div align="center">
```mermaid
flowchart LR
source_code-->compiler-->|go_code| go_compiler
subgraph compiler
parser-->analyzer-->backend
end
go_compiler-->machine_code
go_compiler-->wasm
```
</div>
## Why?
1. Controlflow paradigm is is well established while dataflow is underrepresented.
2. Existing visual tools lacks the expressiveness of traditional languages.
3. Many languages treat concurrency as an advanced feature, not the default.
4. Not many languages compiles to Go or interops with it, while it has state of the art runtime and standard library.
## Contributing
1. See [contributing](./CONTRIBUTING.md) and [architecture](./ARCHITECTURE.md)
2. Check out the [roadmap](https://github.com/nevalang/neva/milestones?direction=asc&sort=due_date&state=open)
3. Read our [CoC](./CODE_OF_CONDUCT.md)
4. Join [discord server](https://discord.gg/dmXbC79UuH) 👈
## Community
Your support by joining us will show interest and motivate us to continue.
[](https://discord.gg/dmXbC79UuH)
[](https://t.me/+H1kRClL8ppI1MWJi)
[](https://www.reddit.com/r/nevalang/)
[](https://x.com/neva_language)
## ⭐️ Star History
<p align="center">
<a href="https://star-history.com/#nevalang/neva&Timeline">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=nevalang/neva&type=Timeline&theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=nevalang/neva&type=Timeline" />
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=nevalang/neva&type=Timeline" />
</picture>
</a>
</p>
## Support
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. 🚀
<p align="center">
<img src="./assets/animations/github_star.gif" alt="GitHub Star">
</p>
Every share helps us grow our community.
<div align="center" style="display:grid;place-items:center;">
[](https://x.com/intent/tweet?text=Check%20out%20Nevalang%20on%20GitHub:%20https://github.com/nevalang/neva%20%23Programming%20%23DataFlow%20%23Concurrency)
[](https://www.facebook.com/sharer/sharer.php?u=https://github.com/nevalang/neva)
[](https://www.reddit.com/submit?title=Check%20out%20Nevalang%20on%20GitHub:%20https://github.com/nevalang/neva)
[](https://t.me/share/url?url=https://github.com/nevalang/neva&text=Check%20out%20Nevalang%20on%20GitHub)
[](https://wa.me/?text=Check%20out%20Nevalang%20on%20GitHub:%20https://github.com/nevalang/neva)
[](https://news.ycombinator.com/submitlink?u=https://github.com/nevalang/neva&t=Nevalang:%20Next-generation%20programming%20language%20with%20implicit%20parallelism)
[](https://www.linkedin.com/sharing/share-offsite/?url=https://github.com/nevalang/neva)
</div>
", Assign "at most 3 tags" to the expected json: {"id":"12825","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"