Nim v2: what would you change?

2022-05-23 Thread j-james
I agree with everything you mentioned. With regard to the extensions: having an abandoned extension with almost ten times the number of installs as the actively-developed extension is another issue. Rust had a similar problem with rust-analyzer vs. the official Rust extension, and is now mergin

Nim v2: what would you change?

2022-05-23 Thread avandy
contracts in the language core, not the library

Nim v2: what would you change?

2022-05-23 Thread konsumlamm
LLVM support already does exist as an external library, in the form of `nlvm`: .

How to avoid memory capture violation during addExitProc capture?

2022-05-23 Thread DMisener
Thanks... the previous **casting** version did work... but certainly had a **bad smell** to it :-). I think I'll steer clear of the **ref parameters** for now in my pure nim code... It's probably contraindicated except for mixed language interop type code?? I had tried many iterations before po

Building Nim + Nimble on Ubuntu 22, "could not import: SSL_get_peer_certificate"

2022-05-23 Thread federico3
Nim 1.6.6 does not support OpenSSL 3. See

Nim v2: what would you change?

2022-05-23 Thread cmc
Nimroutines. One thing I'm constantly envying Go for is easy coroutines that can be scheduled across threads. I know the same thing was done for Jester but it would be good to make this the default, easy go-to way of having concurrency in Nim. Overhaul pragrmas. I don't object to having a lot

Best practices for porting huge C projects to Nim

2022-05-23 Thread cmc
Now this does not come from C per se but if you want that code to get ported in a way that is a very close drop-in replacement the first thing you want to do is write tests for everything that is important, including performance. Then I would suggest to isolate some core mechanisms that are writ

Nim v2: what would you change?

2022-05-23 Thread pdkoekfr
algebraic data type (sum type) and Null safety structured concurrency as language primitive more toolchain(lsp) friendly (unconstrained macros makes them hard to implement)