Skip to content

v0.31.1

Latest
Compare
Choose a tag to compare
@emil14 emil14 released this 04 Mar 09:09
· 5 commits to main since this release
4598082

Neva is a programming language where instead of writing step-by-step instructions, you create networks where data flows between nodes as immutable messages, with everything running in parallel. After type-checking, your program is compiled into machine code and can be distributed as a single executable with zero dependencies.

It excels at stream processing and concurrency while remaining simple and enjoyable for general development. Future updates will add visual programming and Go interop to enable gradual adoption.

What's Changed?

  • Fixed deadlock caused caused by bug in desugarer (unhandled case of using anonymous port node -> ... with ? error-guard operator - when calling getFirstOutportName to get node:port sometimes we got :err which must've been skipped because of ?)
  • New cli flag --emit-ir added for neva run command, that allows to emit IR in yaml while running the program to get the exact same IR that is actually executed (implementation and API needs to be refactored in the future)
    • E2E Test added
  • Fixed marshalling to JSON (and YAML added) of IR (related to #883) by adding missing method
  • Added marshalling to YAML of IR
  • Go updated to 1.24
  • golangci-lint updated to 1.64 (still no support for Go 1.24?)
  • Minor refactor in desugarer - part of functionality moved from src.Scope (with fixes)

Important

This is an ambitious project maintained by a small group of enthusiasts. Your support by joining us will show interest and motivate us to continue.

Also, please give us a star ⭐️ to increase our chances of getting into GitHub's trending repositories and tell your friends about the project. The more attention Nevalang gets, the higher our chances of actually making a difference!