@SuperDicq@minidisc.tokyo Only delved into webdev and Python, and not into other programming languages, but what's with the drama with the Rust language? I've heard that it takes a while to compile and that it might not actually be memory safe like advertised, but I haven't looked into it.
Conversation
Notices
-
Embed this notice
Poppy (Back from tha dead) :neofox_flag_trans: (radmin@limepeeps.perchinup.top)'s status on Friday, 01-Mar-2024 06:08:03 JST Poppy (Back from tha dead) :neofox_flag_trans: -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Friday, 01-Mar-2024 06:08:02 JST SuperDicq @radmin@limepeeps.perchinup.top The issues with Rust that I am aware of is that the Rust foundation has issues around their unclear trademark policies.
It is currently still unknown how to properly make a fork of Rust adhering to their policy, making the rust language sort of nonfree in a sense?
Also another big issue is that Cargo is incapable of making reproducible builds. This is a huge issue for distro repository maintainers.
Rust is working on reproducible builds right now, but I don't know why this wasn't a thing in the first place. I mean GNU managed to make reproducible C programs since the 90s?Haelwenn /элвэн/ :triskell: likes this. -
Embed this notice
翠星石 (suiseiseki@freesoftwareextremist.com)'s status on Friday, 01-Mar-2024 18:43:33 JST 翠星石 @SuperDicq >I don't know why this wasn't a thing in the first place.
It's so difficult because only complete rust compiler exists and that compiler can only be compiled with rust compiler version N-1.
There is a rust port in the works for gcc, but last time I checked it couldn't even compile hello world after months of work by skilled developers - which is quite telling as to the quality of the language.
Rust isn't exactly memory safe, memory vulnerabilities aren't the only vulnerabilities that exist and the complexity of the language makes it extremely difficult to programs things, plus rust is really heavy into static linking.
Maybe rust will eventually eliminate memory safety bugs by restricting more how the programmer can program, but I get the feeling that any nontrivial rust program will require more code than say writing it in GNU C and therefore have more bugs.
Plenty of memory safety analyzers do exist for C, but for some reason, nobody wants to use them. -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Friday, 01-Mar-2024 18:46:49 JST SuperDicq @Suiseiseki@freesoftwareextremist.com Personally I think memory safety is not an issue that should be fixed by the programming language per se.
You can totally write perfect memory safe C code, if you can't do that it's just a skill issue amirite? -
Embed this notice
翠星石 (suiseiseki@freesoftwareextremist.com)'s status on Friday, 01-Mar-2024 18:52:05 JST 翠星石 @SuperDicq Yes, you can indeed just write the C correctly.
The based GNU developers have done that for the most start - researchers have analyzed GNU code and determined that it has the least errors and bugs of any project of its size.
It's also actually possible to apply a mathematical proof to prove the correctness of C due to its simplicity - good luck with that for languages dozens of times more complicated. -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Friday, 01-Mar-2024 18:53:03 JST SuperDicq @Suiseiseki@freesoftwareextremist.com I kinda want to see the source of this search that says GNU code is the best code.
-
Embed this notice
翠星石 (suiseiseki@freesoftwareextremist.com)'s status on Friday, 01-Mar-2024 19:24:35 JST 翠星石 @SuperDicq It came to me in a dream.
I remember reading an article about the error rate of the GNU project and how it turned out to be surprisingly low, although I can't remember the name of the site.
On a related note, there was one study that compared the reliably and error rate of the coreutils of many different proprietary Unix's and GNU and found that; "The failure rate of the public GNU utilities was the lowest in our study, at only 6%."
https://users.cs.northwestern.edu/~robby/courses/395-495-2009-fall/fuzz-revisited.pdf
It's a real shame that the authors of the study made many errors and also compared GNU coreutils running on a proprietary Unix with GNU coreutils running on GNU/Linux without even realizing that, but the results speak for themselves.
Unless the specific binary was compiled wrong, GNU software hasn't ever failed me thus far. -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Friday, 01-Mar-2024 19:38:45 JST SuperDicq @Suiseiseki@freesoftwareextremist.com I kinda want a modern version of a study like this that compares GNU with other free software alternatives like BSD with also some meme ones like BusyBox, uutils, 9base, etc.
-
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 00:53:14 JST SuperDicq @Haijo7@snac.haijo.eu @radmin@limepeeps.perchinup.top I really don't give a damn about my publicly accessible free software code being added to a pile of training data. Isn't that the entire point of developing free software? Do what you want?
I do however have objections to the use of Github, as they do not care free software (they have a ton of proprietary software to work with Github) and actively censor repositories for "DMCA" reasons while ignoring the actual contents of the repository.
Why would the Rust Foundation make Github mandatory for submitting to Cargo? Did they receive a big cheque from Microsoft? There are many other good Git repository platforms out there. -
Embed this notice
Haijo7 (haijo7@snac.haijo.eu)'s status on Saturday, 02-Mar-2024 00:53:15 JST Haijo7 Another thing is that to submit a library to the Cargo repositories, you need to release the source code for your library on Github. Which means letting Microsoft's legally questionable AI feed on the code you wrote.
CC: @radmin@limepeeps.perchinup.top -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 01:04:15 JST SuperDicq @Haijo7@snac.haijo.eu @radmin@limepeeps.perchinup.top To clarify the issue with machine learning models is not the training data.
It is the way the output is presented that is the problem. I've seen examples of Microsoft's Copilot outputting already existing GPL'd code line for line, including comments.
If you were to use the code that Copilot outputted in a project with a license not compatible with the GPL, you could be sued for copyright infringement.
Neural networks that aid in programming should be configurable in such a way that the user should be able to select the dataset. For example if you're working on a GPL project, the neural network should only return code that is compatible with the GPL.
And most importantly the neural network should list the copyright notices of all the people's code that were used to generate your answer. So you can give proper attribution if you decide to use it in your project. -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 01:12:53 JST SuperDicq @Haijo7@snac.haijo.eu @radmin@limepeeps.perchinup.top In short about the "questionable legality" you mentioned.
I don't think there's any questionable legality with training a neural network.
There are many good fair use arguments on why you should be able to use something as training data for a neural network without implicit permission from the author.
The real questionable legality is in the output that these machine learning models produce. You should be careful with that, as you might be unknowingly copying something that already exists. -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 01:14:57 JST SuperDicq @Haijo7@snac.haijo.eu @radmin@limepeeps.perchinup.top Why are you CCing someone quotes while they are already mentioned in my post?
-
Embed this notice
Haijo7 (haijo7@snac.haijo.eu)'s status on Saturday, 02-Mar-2024 01:14:59 JST Haijo7 Why would the Rust Foundation make Github mandatory for submitting to Cargo?
No idea honestly, but if you check the website for cargo you'll see that all of the packages are on Github. Which leads me to believe it's a requirement
CC: @radmin@limepeeps.perchinup.top -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 01:27:00 JST SuperDicq @Haijo7@snac.haijo.eu @radmin@limepeeps.perchinup.top Yeah that's a thing as well. There's nothing wrong using very small trivial snippets of code generated by a neural network, nobody could ever claim copyright on that.
However in the case of Copilot there has been a lot of documented evidence of it generating complete files, classes and functions that are very obviously copied from other projects.
Now that's pretty dangerous. -
Embed this notice
Haijo7 (haijo7@snac.haijo.eu)'s status on Saturday, 02-Mar-2024 01:27:01 JST Haijo7 A neural network can only construct something out of things it has previously been given as input. So you could say everything it outputs is something that already exists. You could ofc say that makes sense, because there are only so many keywords in a programming language. Some pieces of code might be too small to be copyrightable or might be commonly used techniques.
But it's impossible to check the output to verify the source of any part of the output, so you never know if the output is legal to use in anything other than a personal use project you don't release
CC: @radmin@limepeeps.perchinup.top -
Embed this notice
Reid :ablobcatattention: (reiddragon@fedi.reimu.info)'s status on Saturday, 02-Mar-2024 20:27:30 JST Reid :ablobcatattention: @Suiseiseki @SuperDicq there are also plenty of memory safe languages that don't overcomplicate things like Rust does. Pascal, Oberon, and Ada are all compiled languages with strong and static typing for all who demand strict control over every detail, and for people who prefer dynamic (but still fairly strict) typing and don't mind or even prefer the compiler doing some optimisations on their part, there's Common Lisp and Scheme (among others in both categories)
the issue with Rust is it took an already solved problem, pretended no one had ever solved it before, then made something that looks like a solution but it's so needlessly complicated you can't even tell if it actually solves the problem or not anymore -
Embed this notice
SuperDicq (superdicq@minidisc.tokyo)'s status on Saturday, 02-Mar-2024 20:31:52 JST SuperDicq @Reiddragon@fedi.reimu.info @Suiseiseki@freesoftwareextremist.com the issue with Rust is it took an already solved problem, pretended no one had ever solved it before, then made something that looks like a solution but it's so needlessly complicated you can't even tell if it actually solves the problem or not anymoreThat's a good one, I'll remember it.
-
Embed this notice
翠星石 (suiseiseki@freesoftwareextremist.com)'s status on Monday, 04-Mar-2024 20:21:37 JST 翠星石 @Pawlicker >that's the idea behind ada/spark, which has multiple implementations btw
Yeeeah, no complete ada compiler is currently bootstrappable without relying on mystery meat binaries.
The based neox is working on that for GNUboot mind you. -
Embed this notice
PC-9801 Enjoyer (pawlicker@bae.st)'s status on Monday, 04-Mar-2024 20:21:38 JST PC-9801 Enjoyer @Suiseiseki @SuperDicq that's the idea behind ada/spark, which has multiple implementations btw -
Embed this notice
翠星石 (suiseiseki@freesoftwareextremist.com)'s status on Tuesday, 05-Mar-2024 20:59:08 JST 翠星石 @Pawlicker Previous versions of gcc (I think 4.0) was all holy C, which you can compile with Tiny C Compiler.
Guix has bootstrapped the whole chain from a tiny binary seed, to tcc, to C-gcc to the newest gcc, with no mystery meat binaries. -
Embed this notice
PC-9801 Enjoyer (pawlicker@bae.st)'s status on Tuesday, 05-Mar-2024 20:59:09 JST PC-9801 Enjoyer @Suiseiseki Isn't GCC the same way where you need GCC to build GCC, hence the Trusting Trust attack? -
Embed this notice
iced depresso (icedquinn@blob.cat)'s status on Wednesday, 06-Mar-2024 16:26:26 JST iced depresso @SuperDicq @radmin i forget that cargo is made by assclowns.
in nim we have a package manager too but i don't use it and just vendor everything on my own :blobcatoverlycute:
-
Embed this notice