Interview with Nim language creator Andreas Rumpf

preview_player
Показать описание
Nim is a statically typed compiled systems programming language that aims to be efficient, expressive, and elegant. Andreas Rumpf is Nim's inventor and lead developer.

Links:

Recent programming language talks at FOSDEM 2020, including four on Nim:
Рекомендации по теме
Комментарии
Автор

Your Channel is literally gold for programmers like me.
You highlight new, maybe small, but interesting languages, you talk about interesting and high level topics, you explain things exact and precise...
Keep up the good work! The big wave of subscribers will be coming soon. :)

Richard-tryy
Автор

This guy is very talented and have put a lot of effort to make this happen!

kanji_nakamoto
Автор

Just tried nim for the first time, it’s definitely gonna be a popular language soon. Love the ability to compile to 3 different languages.

yummy
Автор

I've programmed in Python for over a decade and I've fallen in love with Nim.

malusmundus-
Автор

I enjoy your video style of showing relevant webpages and info while the presenter is talking

drygordspellweaver
Автор

nim is technological feat. brilliant work Andreas!

driziiD
Автор

Genuinely elegant and productive language - makes the process of writing reliable and performant code a pleasure. Given the easy interop with C and the strong cross-platform capabilities, C developers should strongly consider making the move. Coding in C is basically a form of slow torture compared with Nim.

tullochgorum
Автор

This is a surprisingly good format, with relevant information displayed while Andreas answers the question. Well done!

paulwary
Автор

I am telling you these language designer guys never blink. It is the case Guido and Andreas

Автор

His energy and love for his language really shines through...

thegeniusfool
Автор

1. Is Nim with ORC GC memory safe while having an almost deterministic memory deallocation?
2. As of 2021, can Nim interface with C++ much better than in Rust?
3. Can we add something to detect and block cyclic references so that we can use ARC without the fear of memory leak?

If yes for 1+2, then Nim is the best of both worlds: not so complicated, memory safe, almost deterministic memory management

sken
Автор

I wish someone demoed how to debug Nim with VS Code

yaakovda
Автор

Great video. I'm hoping that a Nim (or a language like it) will catch on some day. Hope they can find a large backer.

TheArtofSoftware
Автор

Great talk. But how will one convince company/team to use this over C++/Java/GoLang?
Systems programming language and indentation? Not sure if this will work.

पापानटोले
Автор

Nim is nice: It’s case-insensitive to accommodate different styles in naming, but at the same time prevents me from proper, individually adjustable indentation, as using tabs is an error.. 😂

diktomat
Автор

case/underscore insensitivity. Good luck on your crusade, sir.

overclucker
Автор

Thank you both for the interview. I'm predicting Nim is going to mature very well and quite possibly overtake Python in popularity one day.

leonlysak
Автор

As far as the underscore insensitivity goes, I disagree that it's not an issue. For the most part it isn't, for sure, and personally I welcome it wholeheartedly because *I can't stand **_camelCase_** one bit!!, * and so Nim lets me use its standard lib in _camel_case_ if I want, but it's not entirely without issues. I don't interact much with the community, but I've seen a short discussion where some people were missing the ability to differentiate private stuff from public using a leading underscore. I myself wish Nim allowed that, like "__foo, "_ and even "___foo, "_ (youtube formatting sucks balls...) as that isn't too cluttering and makes a big difference in telling things apart. As it stands, you can only resort to some cluttering naming conventions. I tend to use a *p_* for private, as in *p_foo, * since I don't deal with pointers in Nim. But it doesn't really make private stuff more distinct, and may confuse people reading my code...

Another issue is that you can't just simply do this:
*type Foo = object*
*_x, _y:int*

*# getter/setter*
*proc x(self:Foo):int = self._x*
*proc `x=`(self:Foo, x:int) = self._x = x*

You'll need to think of something else to name your properties there... *p_x, * or *prv_x, * or *real_x, * or *THE_x, * or whatever...

skaruts
Автор

really interesting, thanks for posting this! I adore Python, and adore systems programming -- Nim is a perfect fit. I'm curious how it could be also used to replace some amount of Javascript/Typescript, on the server or web levels.
Also, thanks for showing so many sites: I'm off to investigate Rosettacode.

JohnMitchellCalif
Автор

.. no gc.. ah lol.. just realized im watching 3 years old video... while Nim 2.0 is out.
3 years later, hows the tooling for this language?

Microphunktv-jbkj
join shbcf.ru