Hi community,
I recently found now some spare time to finish a timerpool implementation in Nim (still some work open (buildscript and so on)) https://github.com/mikra01/timerpool
Until now I wrote only some testcode to explore the features of Nim. This is now my "biggest" project in Nim and my overall feeling with it is very good. Everything runs out of the box (except the API-Design :-) And from my point of view the syntax is very intuitive.
I struggeled a little bit over the guard pragma: if the lock is in another object than the value which should be guarded I always run into a compile error.
Nevertheless comments, bug reports and help to make the code more "nimish" are always welcome.
Hi andrea, yeah I agree there is still some room for improvements. actually only the source is documented.
A timerpool is a little library (often used within embedded environments) which simplifies running lots of timers (for event purposes only; constrained only by memory). but also some distributed algorithms (like raft consensus) need that (heartbeat, retransmission events for example). For me it was a good startig point to get into Nim and experiment with the threading features (wait and signal, passing data around and so on)