What is the best nu lang Sup Forums?

What is the best nu lang Sup Forums?

Other urls found in this thread:

github.com/yegor256/eo
hashrocket.com/blog/posts/websocket-shootout
github.com/gobwas/ws
medium.freecodecamp.org/million-websockets-and-go-cc58418460bb
twitter.com/NSFWRedditImage

bump

install gentoo

Right-wing inanity.

b-but debian...

/thread

prolang

node.js or ruby

Idris. Only language that marries practicality with the bleeding edge of language research.
Needs some love in the way of tooling (including the compiler) and libraries, but the language is the best thing that has come out in the last 10 years.

Ponylang.org

perl6

Clojure

>Idris
>practicality
Who the hell are you kidding?

eolang

github.com/yegor256/eo

Prove me wrong as far as the language is concerned.
It's Haskell made useful.

It isn't Turing complete

I still don't understand this picture. Debian is a combination of a straight couple's names, Debra and Ian. That alone probable makes it one of the most heterosexual distros out there.

Watch the video by Simon Peyton Jones about useful or useless languages to understand what I mean.
Anyway, at least Idris isn't a lazy piece of shit, so it's already 10 times as useful as Haskell.

>most heterosexual distros out there
You've obviously never taken a look at how it's trun...

They both share the "bian" part. And what else do you expect from a weebshit?

10 x 0 = 0

Golang. Need to do something that benefits from concurrency? Golang is golden for that kind of shit.

>muh no generics

If you really want generics then go use another language? Not sure what your shitpost is about. I'm approaching it from a concurrency need.

>It isn't Turing complete
Idris is not Agda. You can have partial functions just fine.

I did watch it. And he said that Haskell was useless *before the IO Monad* because it was literally useless for writing applications.
Idris not only has IO capabilities but a lot of other useful tools for writing side-effects more safely. And of course, it fixes all the legacy shit from Haskell.

The Go model of concurrency is far from innovative.

Its concurrency isn't great either, though. Functional languages do it better, and with more efficiency.

Usefulness and uselessness are not binary.
Just because it has IO doesn't make it useful, as there are a lot of other factors which matter.

>The Go model of concurrency is far from innovative.
Who ever claimed that? It still is one of the best renditions of this model though, and is really neatly integrated into the whole programming language.

Sure, but I don't want to write a web parser in Haskell. I worked on 23andMe's software responsible for DNA parsing. It's all Golang because we found it to be the most efficient. Works like a champ.

>and with more efficiency.
No.

>as there are a lot of other factors which matter
Mind bringing up some specific to the language (and not the ecosystem)?
>inb4 hard for juniors
Not as much as it would seem. Being eager and just by choosing the keyword "interface" instead of "class" has made it piss-easy for me to teach the basics to a few people used to things like JS/PHP/Java only.

Rust, unironically. Its core devs might appear to be a bunch of SJW idiots, but some among them have managed to make a solidly-designed language.

Parasail. Implicit parallelism absolutely everywhere and uses correctness proofs to not only make it safe, but to vastly simplify things rather than making them more complex.

Not haskell, but clojure is great for that sort of thing.

hashrocket.com/blog/posts/websocket-shootout
>clojure only 2nd to C++

Quenya

Left-win inanity has so much more development though.

The fundamental principle of programming is the transformation of data (including the communication with devices), and this is also the main task of the programmer.
Create programs, which transform data, and interface with devices (which is basically the same).
In functional languages there are a lot of restrictions in the way data can be manipulated or transformed, as it is removed from the actual hardware.
This in turn often leaves the programmer unable to chose the most efficient or most fitting way of transforming or aligning the data he wishes to transform.
What FP wants to give us in return is a more correct code structure (and the ability to "program with types"), which certainly can be useful, but it is my believe that trading this neat structure, with all the benefits and tricks it brings, against a data oriented programming approach is more useful.
The data oriented programming approach, which has the goal of making the transformation of data on real hardware the top priority, often also gives a clear and concise understanding of our "structure", while enabling us to use our processor fully.
What could be said is that it is difficult for beginner to have the diligence or the ability to understand such a way or even employ it, but the problem lies with the teachers, and not with the students, which need to be taught accordingly.

All in all there are two main problems we have from a performance perspective today. Parallelism and memory access.
All other problems (most of them pertain to programming structure) are of slightly lesser importance.
A modern language that is truly useful must solve these two problems in an simple and easy to understand fashion.
One language which does solve those problems in a neat fashion is the Go programming language.
Goroutines and channels enable the efficient communication of processes, all while the alignment and access of data is fully controllable.

>hashrocket.com/blog/posts/websocket-shootout
The go one uses a rather unefficient implementation of websockets, so it's no surprise that it is slower.
Actually the package they used itself just says to use something else instead.
Still surprised to see it be so comparable.
Would like the others compared to this one
github.com/gobwas/ws
medium.freecodecamp.org/million-websockets-and-go-cc58418460bb
Or just even the more popular gorilla websocket.