questionable
sokol-rust
questionable | sokol-rust | |
---|---|---|
3 | 1 | |
113 | 54 | |
2.7% | - | |
7.0 | 8.6 | |
22 days ago | 7 days ago | |
Nim | C | |
GNU General Public License v3.0 or later | zlib License |
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.
questionable
-
Nim v2.0 Released
> You can also not really have productive and well-fitting errors-as-values in a language that emphasizes UFCS
Eh, https://github.com/arnetheduck/nim-results and associated syntax from https://github.com/codex-storage/questionable would beg to disagree. Nim's stdlib does not have productive and well-fitting errors because it suffers from inertia and started far before the robust wonders of recoverable error handling via errors-as-types entered the mainstream with Rust (IMO: and refined with Swift). Option/Result types are fantastic and I do so wish the standard library used them: but it's nothing a (very large) wrapper couldn't provide, I suppose.
I do strongly think that other languages are greatly missing out on UFCS and I miss it dearly whenever I go to write Python or anything else. I'm not quite sure how you think UFCS would make it impossible to have good error handling? Rust also has (limited, unfortunately) UFCS and syntax around error handling does not suffer because of it. If by errors-as-values you mean Go-style error handling, I quite despise it - I think any benefits of the approach are far offset by the verbosity, quite similarly to Java's checked exceptions.
-
Stop Building on Corporate-Controlled Languages
If exceptions aren’t your cup of tea, look into using stew/results and questionable instead:
https://github.com/status-im/nim-stew/blob/master/stew/resul...
https://github.com/status-im/questionable#readme
Re: std/db_sqlite, your probably better off using sqlite3_abi:
https://github.com/arnetheduck/nim-sqlite3-abi#readme
sokol-rust
-
Nim v2.0 Released
I maintain auto-generated bindings for my C libraries for Zig and Nim (and Odin and Rust - although the Rust bindings definitely need some love to make them a lot more idiomatic).
I think looking at the examples (which is essentially the same code in different languages) gives you a high level idea, but they only scratch the surface when it comes to language features (things like the Zig code not using comptime features):
Zig: https://github.com/floooh/sokol-zig/tree/master/src/examples
Nim: https://github.com/floooh/sokol-nim/tree/master/examples
Odin: https://github.com/floooh/sokol-odin/tree/main/examples
Rust: https://github.com/floooh/sokol-rust/tree/main/examples
What are some alternatives?
pekko - Build highly concurrent, distributed, and resilient message-driven applications using Java/Scala
mummy - An HTTP and WebSocket server for Nim that returns to the ancient ways of threads.
nim-chronos - Chronos - An efficient library for asynchronous programming
torrentinim - A very low memory-footprint, self hosted API-only torrent search engine. Sonarr + Radarr Compatible, native support for Linux, Mac and Windows.
owlkettle - A declarative user interface framework based on GTK 4
norm - A Nim ORM for SQLite and Postgres
v - Write Nim only with 'v'
futhark - Automatic wrapping of C headers in Nim
sokol-zig - Zig bindings for the sokol headers (https://github.com/floooh/sokol)
rust - Empowering everyone to build reliable and efficient software.
nlvm - LLVM-based compiler for the Nim language
pixie - Full-featured 2d graphics library for Nim.