I read the article. Still no idea what Nim is good for and why it's better than some other language.. and for which use cases?
I read the article, and I’ve been spending the past 20 minutes looking at the SPA framework. I’m still not sure what it is or why anyone would use it. It looks extremely complicated and verbose.
A Programming Language Underdog
191–200 of 238 posts
Re: A Programming Language Underdog
#192I do not think all this language fragmentation is a good thing. A million little obscure languages that all at the end of the day do the same thing. Yeah, we need language research to keep devising new features and more efficient ways of programming, but this is different. I wish the world would get behind a couple well thought out languages that cover most programming needs (functional, systems/bare metal, scripting…
Re: A Programming Language Underdog
#193Earlier quoted context omitted.
Still more work than just using braces.
>Still more work than just using braces. How so? It's a one time change to a setting in your editor, vs thousands and thousands of keystrokes.
No extra work is less work than even a little.
Re: A Programming Language Underdog
#194Earlier quoted context omitted.
i must admit that i'm not a big fan of nimble (nim's package manager; for a few reasons) but on the other site you have apt, pacman, yum, whatelsenot, afaik most of them are not even able to install two versions of the same library side by side. The situation is so bad that most applications these days are packed with `flatpack` or something else, because of the so broken linux package management... In contrast to eg…
> most of them are not even able to install two versions of the same library That's entirely by design. Distributions exist to provide a set of packages that are well tested, and work reliably, together. And then guarantee that such set will stay the same and receive timely security updates for 3 or 5 or more years so that people can reliably use it in production.
Re: A Programming Language Underdog
#195Earlier quoted context omitted.
> It uses whitespace for blocks, like Python. Why is this a con?
It's arguably more error-prone, e.g. Rob Pike justifies Go's decision to use curly braces like so: >Some observers objected to Go's C-like block structure with braces, preferring the use of spaces for indentation, in the style of Python or Haskell. However, we have had extensive experience tracking down build and test failures caused by cross-language builds where a Python snippet embedded in another language, for in…
Re: A Programming Language Underdog
#196Earlier quoted context omitted.
Actually, I'm curious why people don't like white space sensitive languages. I get the tab v space thing, and there are certainly a couple of other down sides, but none of these seem like deal breakers to me. Given that python was the second language I learned, it's possible that I drank the coolaid early and I'm blind to some things that are truly egregious. So the question is: why do folks completely avoid a langua…
> why do folks completely avoid a language for a single relatively bland syntactic feature? Personal preference isn't a good enough reason? I don't like white space sensitive languages because I've seen what happens in python when somebody accidentally adds a couple of lines formatted with spaces into a file formatted with tabs. I've seen git and svn mangle tabs. Long blocks are harder to track. Refactoring functions…
Re: A Programming Language Underdog
#197Earlier quoted context omitted.
Post author here. A few things that make me sad in the pants: - js doesn't have source maps (kinda of a big deal to me) - some error messages are head scratchers (seem to remember trying to add things to an immutable array not being clear) - docs could use love (eg seeing more examples of macros in action) - devel (their nightly compiler) can be rough (e.g. i found the "strings cannot be null" cutover a bit rocky --…
The docs issue and devel being rough are both due to the pre-1.0 status and the smaller community. It's a little bit of a catch-22; you need adoption to gain contributors but people won't adopt until there's enough contributions to make it stable.
I really really think "underdog" is the best way to describe Nim because of this.
Re: A Programming Language Underdog
#198Earlier quoted context omitted.
Agreed. I purged a bunch of stuff and still feel like I left too much in. A couple of bonus facts for you: - they've got an effects tracking system where you can have the compiler track (and whistleblow!) which functions are pure or not - their multi-phase compiler allows you to read in source code at build time (from files or external programs!) - their macro system is typesafe as it operates at the AST level - the…
> - the guy who created it will always tell you how he feels What does this mean?
Re: A Programming Language Underdog
#199Earlier quoted context omitted.
I read the article, and I’ve been spending the past 20 minutes looking at the SPA framework. I’m still not sure what it is or why anyone would use it. It looks extremely complicated and verbose.
Don't know why you're being downvoted. I had the same experience reading through Karax GitHub. I might be spoiled by other docs.
Re: A Programming Language Underdog
#200Earlier quoted context omitted.
I like the concept of Nim, as in: fast, statically typed, inferred, compiled etc. but I do not enjoy whitespace-sensitive languages, so am keeping an eye on Crystal more than Nim. If that doesn't bother you, Nim is really neat.
Nim is my first whitespace-sensitive language. I had no plans to love it. We're now engaged.