Multi-round Desktop Linux distribution showdown.
-
@krutonium @ar @abmurrow @rperezrosario
Perl & Ruby are both multi-paradigm languages, and the functional programming paradigm is well-supported by both, in addition to OOP.
@purrperl @ar @abmurrow @rperezrosario
Good to know!
I've never had an opportunity to use them, and now I kinda want to go read about this. -
@purrperl @ar @abmurrow @rperezrosario I'm not sure how cleanly you could do it, considering a number of factors like the entirety of nixpkgs also being implemented as nix, and it being a functional language, which I'm relatively sure (I've never used them) Ruby & Pearl are not, which is going to cause a lot of issues on it's own.
That said, don't let me stop you, I do not know a lot about this problem domain.
But bare minimum I think you'd end up having to implement the nix language as well as your own DSL. Or have your code transpile to Nix maybe?
@krutonium @purrperl @abmurrow @rperezrosario ruby can convincingly pretend to be a functional language.
Though I wouldn't want to start a new project in a language that features DHH on the front page.
Perl is something that would put me off from using Nix. I'm happy that some critical NixOS components are getting rewritten from perl into rust/python. I've been using Linux/unix-like systems for 25 years now, and perl did not seem to improve that much in all this time. It gained… function signatures. And for a while it had a "switch/case"-like syntax construct, but that has been deprecated again, apparently.
-
@krutonium @purrperl @abmurrow @rperezrosario ruby can convincingly pretend to be a functional language.
Though I wouldn't want to start a new project in a language that features DHH on the front page.
Perl is something that would put me off from using Nix. I'm happy that some critical NixOS components are getting rewritten from perl into rust/python. I've been using Linux/unix-like systems for 25 years now, and perl did not seem to improve that much in all this time. It gained… function signatures. And for a while it had a "switch/case"-like syntax construct, but that has been deprecated again, apparently.
@ar @krutonium @abmurrow @rperezrosario
Perl lost function signatures along the way, since they were considered impractical. Perl did gain a "class" keyword, to declare classes for OOP. It didn't use to have that, and supported OOP through an ugly bit of boilerplate code that Perl programmers would have to re-type for every class they wrote.
Raku is a sister language to Perl, written by the Perl community, and is a lot more modern, I'm told. I haven't tried Raku yet.
-
@ar @krutonium @abmurrow @rperezrosario
Perl lost function signatures along the way, since they were considered impractical. Perl did gain a "class" keyword, to declare classes for OOP. It didn't use to have that, and supported OOP through an ugly bit of boilerplate code that Perl programmers would have to re-type for every class they wrote.
Raku is a sister language to Perl, written by the Perl community, and is a lot more modern, I'm told. I haven't tried Raku yet.
@purrperl @krutonium @abmurrow @rperezrosario
Perl lost function signatures along the way, since they were considered impractical.
I still see them documented in perldoc, and no mention of deprecation.
https://perldoc.perl.org/perlsub#Signatures -
@krutonium @purrperl @abmurrow @rperezrosario ruby can convincingly pretend to be a functional language.
Though I wouldn't want to start a new project in a language that features DHH on the front page.
Perl is something that would put me off from using Nix. I'm happy that some critical NixOS components are getting rewritten from perl into rust/python. I've been using Linux/unix-like systems for 25 years now, and perl did not seem to improve that much in all this time. It gained… function signatures. And for a while it had a "switch/case"-like syntax construct, but that has been deprecated again, apparently.
@ar @krutonium @abmurrow @rperezrosario
Raku might actually be good candidate to replace Nix with.
Rust is too complicated, afaik, and I could be wrong about this, to be a easy, general purpose replacement for Nix.
Python is popular, though fragile due to whitespace sensitivity, which counts against it in this case.
-
@rperezrosario So here's my latest gripe with debian. I've been using debian (or its derivatives) on servers at most of the companies I've worked at, but only because most of my team members wouldn't be familiar with something that's different from "regular" linux distros.
debian packaging tools are funny. I encountered a package (not foss/in debian repos) with a
postinstscript that under certain (trivial) conditions would keep running forever. here's what happened when I tried installing it:- ctrl+c didn't work
- kill on the running apt/dpkg processes stopped it, but…
- it's impossible to remove the half-installed package;
apt purgetold me:Error: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem. - spoiler alert:
dpkg --configure -aattempts to finish installing packages. that includes trying to run thepostinstagain, which wouldn't finish.
I could work around that. But I've been using linux for 25 years now, and have been working in sysadmin/devops-like roles for almost 18 years now.
I can't imagine a regular user even knowing where to start fixing something like this.
-
@rperezrosario So here's my latest gripe with debian. I've been using debian (or its derivatives) on servers at most of the companies I've worked at, but only because most of my team members wouldn't be familiar with something that's different from "regular" linux distros.
debian packaging tools are funny. I encountered a package (not foss/in debian repos) with a
postinstscript that under certain (trivial) conditions would keep running forever. here's what happened when I tried installing it:- ctrl+c didn't work
- kill on the running apt/dpkg processes stopped it, but…
- it's impossible to remove the half-installed package;
apt purgetold me:Error: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem. - spoiler alert:
dpkg --configure -aattempts to finish installing packages. that includes trying to run thepostinstagain, which wouldn't finish.
I could work around that. But I've been using linux for 25 years now, and have been working in sysadmin/devops-like roles for almost 18 years now.
I can't imagine a regular user even knowing where to start fixing something like this.
@ar @rperezrosario I guess don't try to install wierd stuff. But this post now has me worried that I'll get this type of bs when I need to install some proprietary oem shit on my server
-
R AodeRelay shared this topic