Hacker News new | past | comments | ask | show | jobs | submit login
Nim's author on v1 launch: Personal words about version 1 (nim-lang.org)
124 points by sergiotapia on Sept 26, 2019 | hide | past | favorite | 14 comments



Interesting last sentence in the context of shipping a programming language: "It's like a marriage, it doesn't stop with the wedding."


The more I view things, the more I feel marriage probably is the best metaphor for any nontrivial undertaking that is worth a lifelong investment, for a group of people.

Think about it, marriage requires:

* Love

* Dedication

* Persistence

* Endurance

* Mutual respect

Pretty much the same thing for any highly functioning team!


Any chance NIM will get memory safety like Rust?


Araq's musings before implementing the newruntime with owned references:

https://nim-lang.org/araq/ownedrefs.html


Does everything have to be about Rust?


There's nothing inherently wrong with wanting a language to ape a solid aspect of another nature. For all you know (chain) OP _wants_ to write Nim but needs memory safety.


Nim is already memory safe.

If you want to run without GC, the new runtime is has an ownership model.



Blog post has no link: https://nim-lang.org/


Nim is not so simple language. A cheatsheet could be nice.



Thanks. Some of the syntax seems rather arbitrary, but maybe just to my layman eyes...

    var
      child: tuple[name: string, age: int]
but

    type
      Color = enum cRed, cBlue, cGreen
why not

    type
      Color = enum[cRed, cBlue, cGreen]


Because a type declaration is declaring multiple identifiers. Each of the enum variants is a legal name.

The tuple declaration is declaring one identifier with multiple fields. The names of the field are only legal as, well, fields of the outer object.


A tuple is a product type, an enum is a sum type.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: