4 ms·
Not sure if you're looking for things as "trifling" as programming languages, but I do wish more people knew about Nim. It's fast, statically typed, reads more
by xwowsersx 3y ago
Not sure if you're looking for things as "trifling" as programming languages, but I do wish more people knew about Nim. It's fast, statically typed, reads more or less like Python, has a great effect system, etc. It's a joy to use. I've been working through writing an interpreter in it:
https://youtu.be/48CsjEFzyXQ https://youtu.be/48CsjEFzyXQ
- aredirect 3y agoI subscribed to your channel, power to you to finish up this series :). I love Nim, I even wrote a book on it! https://xmonader.github.io/nimdays https://xmonader.github.io/nimdays
- xwowsersx 3y agoThanks! I plan to record many more videos. Had some unplanned construction going on in my house so my recording setup is unavailable for a bit. As soon as it's done in a few weeks, I'll put out more videos. Your book looks great, will check it out.
- brightball 3y agoJust so you know, the call for speakers for the 2024 Carolina Code Conference (polyglot) will open January 1. A Nim talk would be a great fit for the event.
- pyjarrett 3y ago> 2024 Carolina Code Conference (polyglot) Thanks for mentioning this! I work remote in SC and its nice to hear about a nearby convention.
- yeck 3y agoI was using Nim for some of last years Advent of Code problems. I was mostly liking the syntax. Was a bit bother by the standard library have a snake case and camel case reference for each function (if I'm remember that correctly). At the time nimble also required me to have NPM to install the the Nim package manager, Nimble. This was not ideal, but looking at [the nimble project install docs](https://github.com/nim-lang/nimble#installation https://github.com/nim-lang/nimble#installation) it seems like it is now package with the language. Might try dusting it off for some AoC puzzles this year :)
- deleted 3y ago[deleted]
- cmdlineluser 3y agoThere's also `atlas` that was released with Nim 2.0. http://nim-lang.github.io/Nim/atlas.html http://nim-lang.github.io/Nim/atlas.html
- mb7733 3y agoI believe the whole language is "style insensitive" for variable names. So it's not just a feature of the stdlib.
- gemstones 3y agoAre you serious?
- dsrw 3y agoYes. It’s so you can maintain a consistent style in your code base even if your dependencies use different styles. Nim has excellent C/C++ interop and it’s relatively common to interact with C or C++ symbols directly, and being able to do this without needing to adopt the dependency’s style or wrap everything is nice. In python, for historical reasons the logging module uses camelCase while most other modules use snake_case, so it isn’t really possible to use the logging module and maintain a consistent style. This is a non-issue in Nim.
- j-james 3y agoThe downsides of this approach are unfortunately that it makes wrapping certain low-level libraries an absolute pain in the ass (especially anything to do with keyboards). But overall it's a non-issue, tooling recognizes both styles and you don't notice it.
- elcritch 3y agoNim 2.0 changed the default to treating style mismatches as warnings. E.g. it's something to check but not an error. You can easily set a config to make them an error or ignore them.
- ryukoposting 3y agoI have a handful of Nimble packages. Lovely language, though I haven't done much with it recently. I wish it were easier to sell people on style agnostic syntax.
- jasfi 3y agoNim should be more popular, but it seemed to take some time to get started properly. It's now far more ready for serious use. Python also took some time before it took off, so there's hope.
- esafak 3y agoMore power to nim. It just needs better tooling, IDE support.
- meatjuice 3y agoI hate nim for depriving me of the joy to use tabs instead of spaces. It's just... unreasonable.
- jasfi 3y agoSet tabs to 2 spaces in your editor.