Autor: Joel Roth Datum: To: dng Betreff: Re: [DNG] About the rust language
On Wed, May 29, 2024 at 02:25:40PM +0200, Simon Walter wrote: > On 2024-05-28 23:16, Steve Litt wrote:
> ...
> > What I mean by "broader" is that you need to memorize a whole lot of
> > stuff because a whole lot of stuff is built into the language instead
> > of just being createable in the language.
>
> WRT golang, that is the standard library. It's very nice that golang has
> many useful things in the standard library. You could write them
> yourself again or chose some other 3rd party library. However, the
> quality of the standard library is good. It's very nice when working in
> a team. You don't need to argue over something.
Sometimes described as "batteries included."
> I use golang daily. I would say it's great for people scared of C, and
> compiled languages in general. The tooling is hard to beat.
>
> Though, for personal projects, I prefer other languages.
I have only personal projects, mainly in perl.
I did find OO to be helpful to organize my code in the one
larger project I attempted. I don't think of OO as passing a
message to an object. An object is just a data structure with
subroutines in one bundle. The original OO implementation in
Perl 5 makes it easy to understand how OO behavior works.
You have references that include a class name, classes are
just namespaces with subroutines. Similar to python's
approach.
More recently, composition (using roles) is preferred to
inheritance relationships. And even more recently, a
new class keyword has been included in core, after
years of experimentation in various libraries, and
by some top perl programmers in large project.
The raku language is a batteries-included sister to perl
that addresses perl's worst pain points, and has inspired
much of development in perl over the last decades. If I were
going to invest in learning another language, raku seems
just amazing. The foreign function interface is much easier
to use than perl's xs language. Raku also provides
asynchronous and concurrency features without working at the
level of threads, and therefore is much less error prone.
The unicode support is among the best of any language.
Have fun programming in whatever language you like, or
whichever pays your bills! And writing about it, too :-)