Live data from Hacker News

Nim (formerly Nimrod) 0.10.2 released

nim-lang.org

141–149 of 149 posts

Re: Nim (formerly Nimrod) 0.10.2 released

#141
post #119
post #114

Earlier quoted context omitted.

That looks amazing. One would expect it to be slower given all of the interesting language features. I've been wanting to learn one of the up and coming languages (Rust, D, Go, etc.). Would Nim be a good choice?

Probably depends on what software you would like to develop and what languages you already know and enjoy.

Well I've been writing Python for quite a while and I'm currently getting into both Scala and JS/Node.

Re: Nim (formerly Nimrod) 0.10.2 released

#142

Earlier quoted context omitted.

Actually it's being hyped that's weird. There are literally dozens of very interesting languages being created and developed right now and I bet you don't know of any of them. The only - and they are very few in comparison - languages which are being hyped since very early in their life cycle are the ones backed by corporations. Both Rust and Go are such languages and that's basically it. "Normal" languages live on a…

Last time I checked Io was slow and it didn't solve any new problems. If I wanted a slow OO language, I would rather keep using ruby/python as I already know them. Haxe has the small niche of flash type games, and I think it is doing fine in that area. But to expect it to be as popular as a general purpose language is not warranted.

Haxe is general purpose language. It compiles - among other things - to Neko VM, which is a really nice little VM, good for rapid prototyping and to C++ code which is good for everything. The latter is how Haxe supports iOS IIRC.

Io is not "slow", although the level of dynamism it provides has obvious performance downsides. It's generally "fast enough" and - in my experience - a bit faster than CPython. Slower than JITed Lua though. It does, however, solve the C10k problem with its coroutines, actors and futures, which are implemented transparently for the user and with niceties like automatic deadlock detection (on runtime). It's not exactly anything new, but it was new when Io first appeared (I mean the implementation as a language feature, not the concept which is probably 3x as old as even I am). It has also very nice C FFI and very flexible, easily modifiable syntax and optional lazy evaluation which makes it great for developing DSLs.

That being said I don't "expect" these languages to be popular. For the most part, for most developers out there, it genuinely makes no sense to know them. I'd like them to be more popular, but I'm not stressing over this. I know them and I think I can use them to my advantage where it makes sense and that's enough for me personally.

Re: Nim (formerly Nimrod) 0.10.2 released

#143
post #16

Earlier quoted context omitted.

Nimrod is a terrible name for a language. In North America it's synonymous with "idiot".

That's thanks to Bugs Bunny. Nimrod is traditionally the name of a mighty hunter so it made sense for Bugs to call Elmer that to show how far from a mighty hunter he was. But nowadays in the English speaking world we're more likely to think of the Bugs Bunny meaning than the biblical meaning. It's always hard naming things in a language that isn't your first.

I love learning etymological anecdotes like this.

Re: Nim (formerly Nimrod) 0.10.2 released

#144
post #3

The release is happening today, so I posted a bit early. Some parts, like the binaries, are not online yet. There are tutorials for newcomers: http://nim-lang.org/tut1.html https://nim-by-example.github.io/ Edit: Fixed tutorial link

First, congratulations on the new version. Been playing since 0.9.2 and I hope to try this latest version too. But, please make a zipped portable version available for Windows. You don't have to include a binary version of Nim (although that would be nice) but do put the required MinGW pieces off a subdirectory under Nim as was done with earlier releases. This allows unzipping to a thumb drive, xcopy installs, and us…

>(FWIW: The sad state of Windows is that almost every installer out there, MinGW included, means crapping in your system to some extent and never knowing what went on nor being able to removed all traces of what was installed. With each installed application you have to make a conscious decision whether it's worth the unpredictable OS pollution to install the application on a particular machine ... because you know with each install that your headed to that inevitable last one where you have to wipe the entire OS and start over.)

This is a huge point, and a huge downside about Windows, even in recent versions. E.g. some time ago I installed some utility EXE and suddenly my Skype stopped working - in a really weird way - the UI itself changed, IIRC it did not show the login screen, though it did start the app. But could not use it since I had no way to log in. Had to roll back to a previous system save point or some such to undo the damage. The Windows registry (being a single point of failure [1], plus not getting cleaned out or updated completely (i.e. not all the registry keys getting updated) on installs/uninstalls due to buggy (un)installers), and DLL hell [2] are major causes for this.

[1] http://en.wikipedia.org/wiki/Single_point_of_failure

[2] http://en.wikipedia.org/wiki/DLL_Hell

Re: Nim (formerly Nimrod) 0.10.2 released

#145
post #16

Why did they change the name?

Nimrod is a terrible name for a language. In North America it's synonymous with "idiot".

Nimrod was also the name of a British warplane, IIRC.

And also the name of a biblical king and mighty hunter.

http://en.wikipedia.org/wiki/Nimrod

Re: Nim (formerly Nimrod) 0.10.2 released

#146

Earlier quoted context omitted.

| Actually it's being hyped that's weird. | The economic realities of software development require disposable human resources.

And this is why most most large software projects fail. Software development is not something 'disposable human resources' can do reliably.

I agree. Software development is (as of now) in its arts and crafts stage of development. Expertise matters. Experience matters. Professionalism matters.

The "economic realities" are /symptomatic/ of the impedance mismatch of an 'industrial scale' demand on the consumer side and an arts and crafts production side.

> most .. projects fail.

It is a minor miracle that they can even be attempted and many even succeed.

Re: Nim (formerly Nimrod) 0.10.2 released

#147
post #57

Earlier quoted context omitted.

Wow, I just have to reply! Which one of these do you prefer: echo("Hello") echo "Hello" "Hello".echo "Hello".echo() Or something different?

Yeah, it's truly is fascinating. Maybe echo "Hello" Is the way ? :)

I'd say so. Maybe even echo"Hello" if you're in a hurry; it's just that it's then treated a raw string :p

Re: Nim (formerly Nimrod) 0.10.2 released

#148

As a long time Python programmer who has struggled to cross the gap from dynamic scripting languages to modern statically typed languages Nim is by far the most frictionless language I have tried. Before I found Nim I longed for a language like C# where the generics "just work" and overall the language just feels like it designed at-once rather than piecemeal overtime. Everything just seem really "nice" in C# and I a…

Looks fascinating. Have you used it in any real projects yet?

Re: Nim (formerly Nimrod) 0.10.2 released

#149

Earlier quoted context omitted.

Last time I checked Io was slow and it didn't solve any new problems. If I wanted a slow OO language, I would rather keep using ruby/python as I already know them. Haxe has the small niche of flash type games, and I think it is doing fine in that area. But to expect it to be as popular as a general purpose language is not warranted.

Haxe is general purpose language. It compiles - among other things - to Neko VM, which is a really nice little VM, good for rapid prototyping and to C++ code which is good for everything. The latter is how Haxe supports iOS IIRC. Io is not "slow", although the level of dynamism it provides has obvious performance downsides. It's generally "fast enough" and - in my experience - a bit faster than CPython. Slower than J…

But the thing is that Haxe doesn't really solve anything else other than being good for flash games. So even if it is Turing Complete, there is no point in spending time learning it if you do not care about making flash games.

And last time I checked, Io was slower than CPython and offered nothing more than a little more ideological OO purity. It didn't have any killer feature.

Post reply on HN