Live data from Hacker News

Nim – Natively compiled language with hot code-reloading at runtime [video]

youtube.com

91–100 of 118 posts

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#91
Whenever I've been working in Nim, going back to other languages is always - codewise - a letdown. Alas, I often must go back, almost always for the same reason: The lack of libraries (and || or) attendant documentation. One doesn't always have the time, inclination, or ability to work everything up from scratch.

Otherwise, it's such an overwhelmingly pleasing toolset to work with. Clean code, ultrafast compilation producing rocksolid executables as small and tight as you care to make them. Joy all around.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#92
post #52

Earlier quoted context omitted.

Are there any Nim benchmarks vs. Go, Crystal, Python, Rust, etc.?

You can find them although they tend to be out of date and/or piecemeal. I think they're still useful. For example: https://github.com/drujensen/fib https://gist.github.com/sdwfrost/7c660322c6c33961297a826df4c... https://github.com/kostya/benchmarks My general sense is that Nim is most competitive as an alternative to Python and/or things like Julia, in that it's as expressive and easy to understand as those, but has…

As far as I understanf, you can call numpy from nim using a lightweight wrapper.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#93

Whenever I've been working in Nim, going back to other languages is always - codewise - a letdown. Alas, I often must go back, almost always for the same reason: The lack of libraries (and || or) attendant documentation. One doesn't always have the time, inclination, or ability to work everything up from scratch. Otherwise, it's such an overwhelmingly pleasing toolset to work with. Clean code, ultrafast compilation p…

> The lack of libraries

Yup. It's too bad there has been no en-mass conversion/import of popular libraries.

The thing that makes python such a terrific swiss-army-knife is that there are libraries available for just about every imaginable use case.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#94
post #88

Earlier quoted context omitted.

That's wrong! Those fall squarely in the application domain. By your argument Ruby and Python are also systems languages because they can be used to write servers and job queues. You're not doing real time programming with Go. Don't make systems programming lose its meaning by promulgating this myth.

Real-time programming can be done in any language, Java for example. I think you're conflating writing device drivers/kernels with systems programming, which includes those things but is not limited by them. Regardless, the term's meaning can't be lost if its apparently this hazy.

I don't think you understand what real time programming is.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#95
post #86

Nim is an amazing language. The syntax is cleaner (IMO) and easier-to-read than Go and approaches Python in its readability, which is impressive for a statically typed, compiled language[0]. The design is focused on performance above all else, but it still has metaprogramming[1] and functional features. However, Go and other languages have a huge ecosystem and many more libraries. Nim only has a few web servers/frame…

Minor nit. Every language you mentioned with a GC is not a systems language.

That's not a minor nit, that's a digression from object-level discussion to arguing about word definitions.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#96
post #94

Earlier quoted context omitted.

Real-time programming can be done in any language, Java for example. I think you're conflating writing device drivers/kernels with systems programming, which includes those things but is not limited by them. Regardless, the term's meaning can't be lost if its apparently this hazy.

I don't think you understand what real time programming is.

Enlighten me, please.

https://www.aicas.com/cms/rtsj

http://blogs.windriver.com/wind_river_blog/2017/05/java-on-v...

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#97
post #94

Earlier quoted context omitted.

I don't think you understand what real time programming is.

Enlighten me, please. https://www.aicas.com/cms/rtsj http://blogs.windriver.com/wind_river_blog/2017/05/java-on-v...

This is swapping out the JVM. It's not even the same language at that point.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#98
post #97

Earlier quoted context omitted.

Enlighten me, please. https://www.aicas.com/cms/rtsj http://blogs.windriver.com/wind_river_blog/2017/05/java-on-v...

This is swapping out the JVM. It's not even the same language at that point.

Maybe it would be easier for both of us if you wrote the definition for real-time or systems programming, rather than just saying something isn't one or the other.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#99
post #14
post #5

Earlier quoted context omitted.

Educate me if I am wrong, but there are natively compiled Erlang modules, but no longer any natively compiled Erlang. It only runs on the BEAM, and ever since BEAM/C fell out of use in OTP R5 no native code is generated.

BEAM is still present but HiPE interfaces with it using some specific ABI that allows mixing AOT compiled native modules (just machine code) and the BEAM register machine. I'm not sure if there are new caveats as I regard HiPE as a compatibility feature rather than something under active development (I may be wrong but it seems to fail to compile all of OTP's Erlang code now). The overhead of that context switch is a…

> http://erlang.org/download/otp_src_22.0-rc3.readme

It's in active dev. ctrl+f "hipe-3.19"

> I may be wrong but it seems to fail to compile all of OTP's Erlang code now

See OTP-15596.

Re: Nim – Natively compiled language with hot code-reloading at runtime [video]

#100
post #73
post #66

Earlier quoted context omitted.

Interpreters tend to have repls, which tends to influence how development happens. I'm not stating an absolute law though. I think you may be misinterpreting my original question. It was asked out of ignorance, it wasn't a challenge. I was hypothesising some kind of self modifying code, or realtime adaptive optimising or something. I was attempting to show you my current level of knowledge so you could ELI7 instead o…

It's mostly just that the feature is always useful (that's why it's present so often in interpreted langauges), but muuuuuch harder to do for non-interpreted languages. Notably, a subsequent goal for the Nim feature is indeed to add a full-blown REPL to Nim too, I believe. Also, worth to note that some non-interpreted languages do also have REPLs, e.g.: Haskell, OCaml, C++ (! — see CLING).

I'm aware of plenty of exceptions myself.

Forth, and I've even come across an ASM REPL.

Theres exceptions the other way, Awk is interpreted but doesn't as far as I'm aware have a REPL, Sed doesn't either. But then both of those have varying implementations, so there could be exceptions to the exceptions.

Post reply on HN