futhark
nimbus-eth2
futhark | nimbus-eth2 | |
---|---|---|
8 | 70 | |
341 | 489 | |
- | 1.0% | |
7.6 | 9.8 | |
9 days ago | 3 days ago | |
Nim | Nim | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
futhark
-
C23: A Slightly Better C
You don't want nimterop, you want futhark (https://github.com/PMunch/futhark).
The C FFI Nim library lineage goes c2nim --> nimterop --> something i forgot --> futhark.
-
Nim v2.0 Released
Ones that have not been mentioned so far:
nlvm is an unofficial LLVM backend: https://github.com/arnetheduck/nlvm
npeg lets you write PEGs inline in almost normal PEG notation: https://github.com/zevv/npeg
futhark provides for much more automatic C interop: https://github.com/PMunch/futhark
nimpy allows calling Python code from Nim and vice versa: https://github.com/yglukhov/nimpy
questionable provides a lot of syntax sugar surrounding Option/Result types: https://github.com/codex-storage/questionable
ratel is a framework for embedded programming: https://github.com/PMunch/ratel
cps allows arbitrary procedure rewriting to continuation passing style: https://github.com/nim-works/cps
chronos is an alternative async/await backend: https://github.com/status-im/nim-chronos
zero-functional fixes some inefficiencies when chaining list operations: https://github.com/zero-functional/zero-functional
owlkettle is a declarative macro-oriented library for GTK: https://github.com/can-lehmann/owlkettle
A longer list can be found at https://github.com/ringabout/awesome-nim.
-
Why does Nim "wrap" C, rather than allow C code to be pasted directly to .nim files?
Have a look at Futhark . It does what you are requesting.
-
Current Goals for Nim?
I'm not sure if Nimterop was created specifically to make Nim more mainstream. We have quite a couple different C/C++ interop tools, from c2nim in the core distribution to something like Futhark which automatically wraps things based on libclang.
-
Nim -- a modern "glue" language like Python
c2nim is a tool to translate ANSI C code to Nim. The output is human-readable Nim code that is meant to be tweaked by hand after the translation process. If you are tired of wrapping C library, you can try futhark which supports "simply import C header files directly into Nim". Similar to futhark, cinterop allows one to interop with C/C++ code without having to create wrappers. nimLUA is a glue code generator to bind Nim and Lua together using Nim's powerful macro. nimpy and nimporter is a bridge between Nim and Python. rnim is a bridge between R and Nim. nimjl is a bridge between Nim and Julia! Last but not least, genny generates a shared library and bindings for many languages such as Python, Node.js, C.
- Automatic wrapping of C headers in Nim
- Futhark: Automatic wrapping of C headers in Nim
nimbus-eth2
- Nim v2.0 Released
-
Crystal 1.9.1 Is Released
Agreed! There's a couple of fairly large projects in Nim: https://nimbus.team/ (https://github.com/status-im/nimbus-eth2) or https://github.com/zedeus/nitter
Though there's still friction points I've been happy seeing the ecosystem grow lately. The compiler has seen a lot of bug fixes lately too which helps.
-
Daily General Discussion - June 22, 2023
Pretty big update for Nimbus out today, it's been a long time coming: https://github.com/status-im/nimbus-eth2/releases/tag/v23.6.0
-
erigon sync log correct?
consensus client/execution client -> ERIGON v2.45.2 and NIMBUS v23.5.1
-
[1 Year Review] Status still hasn't released anything or gained any real market share in private messaging
In the same year their beacon chain client followed Bellatrix (Merge) and Capella upgrades without a hitch, which is in many ways more impressive than a messenger.
-
Daily General Discussion - May 19, 2023
Nimbus claims to have a solution to the loss of finality problem that was caused by old attestations, by dramatically speeding up the verification of those attestations: https://github.com/status-im/nimbus-eth2/pull/4911
- Daily General Discussion - May 12, 2023
-
Daily General Discussion - May 9, 2023
Seems they just released 23.5.0, to fix many of the issues we've been having: https://github.com/status-im/nimbus-eth2/releases/tag/v23.5.0
-
Ethereum's pending withdrawals total $1.34 billion after Shapella
https://github.com/status-im/nimbus-eth2 69 contributors
-
Daily General Discussion - March 31, 2023
Daily Goerli: Was getting a lot of missed attestations with nimbus and after some back and forth with tersec, we confirmed that timeouts communicating with web3signer were the culprit. A fix should be merged soon.
What are some alternatives?
c2nim - c2nim is a tool to translate Ansi C code to Nim. The output is human-readable Nim code that is meant to be tweaked by hand before and after the translation process.
lighthouse - Ethereum consensus client in Rust
nimporter - Compile Nim Extensions for Python On Import!
prysm - Go implementation of Ethereum proof of stake
futhark - :boom::computer::boom: A data-parallel functional programming language
lodestar - 🌟 TypeScript Implementation of Ethereum Consensus
nimpy - Nim - Python bridge
Nethermind - A robust execution client for Ethereum node operators.
nimjl - A bridge between Nim-lang and Julia !
teku - Open-source Ethereum consensus client written in Java
owlkettle - A declarative user interface framework based on GTK 4
libsignal - Home to the Signal Protocol as well as other cryptographic primitives which make Signal possible.