Thought experiment: imagine a language model where you can describe exactly how you want software to behave, and it produces a binary that does that. You don't get the source code, but it works 100% of the time. As long as you can install this binary on whatever device you have, does this achieve the goals of free software?
@mjg59 it should be/isnt obvious that the more you obfuscate the process of compilation the farther you get from a compiler that gives you freedom 1- regardless of the input giving you 4freedoms & the output being a result of that input.
btw i wrote a toy transpiler that turned stallmans verbatim-copying-only essays into transformative, executable scripts and he didnt get the humour or the point. he thought i was trying to prove something- i was just trying to get him to look at it differently.
@trdebunked I completely agree there, you're pushing a free idea into an opaque blob in order to receive free code. But free software as defined in the 80s was fine with opaque compilers, and I don't think anything ever happened to expressly redefine that
@trdebunked (I don't think LLM models are inherently non-free - if someone supplied all the tools and the training data someone could rebuild that, the problem is that it would be implausibly expensive for most people to do so, but again that's not something that's been factored into the free software definition)
@mjg59 yeah not inherently, just most often in practice. its more of a tendency.
one of my bigger obsessions with free software is looking at ways that freedom can be effectively diminished without being explicitly violated.
note i prefer openbsd to gnu/linux because i think it does more to protect freedom 3, but i love any work done to remove non-free stuff from it too. if the goal is perfection there will be detours and setbacks, while the fsf paints things into corners.
@trdebunked I think it's interesting tying this into the "systemd isn't really free software because it's so complicated" kind of argument. Free software is never going to be equivalently free for everyone - people who can code enjoy more freedom than people who can't (unless they have enough money to pay someone to do it). Where do boundaries get drawn?
@mjg59 i simplify this by saying that the more bloated a project becomes, the closer it approaches a binary blob. my original interest was electronics, which makes me very sympathetic to free hw. i appreciate takes like yours that point out the times where machine code / decompiled binaries actually works like source code. not all hacking is source hacking- a lot of it isnt actually.
the other side of that of course, is that source code makes many changes more accessible.
@trdebunked I'd kind of like some sort of heuristic about this - I don't think systemd is any more complicated than the Linux kernel, which has its own build system, config system, linked list implementation, magical macros that do all kinds of things, and so on. But it's clear that many people do feel that there's a level of complexity that compromises freedom, and I have no idea how to identify where that is.