On 6/5/26 08:54, Divya Ranjan Pattanaik wrote:
programming is not equivalent to code generation.
This is exactly the point. The code generation is usually not the
interesting/important/creative part of programming, so we might as well
outsource that part to a machine, especially where it does a better job.
On 6/5/26 08:54, Divya Ranjan Pattanaik wrote:
>> Programs must be written for people to read, and only incidentally
>> for machines to execute.
Yes, I agree, computer programs are primarily a way to communicate ideas
between people.
Part of the disconnect in this discussion might be that I have no
problem holding both these beliefs at the same time, while many seem to
find them contradictory.
Yes, often the communication worsens when LLMs are used to express an
idea. But most ideas are rather mundane or pragmatic; LLM use can be
fine in those cases, as it can smooth the communication by eliminating
distractions. I'd like as little creativity as possible in package
descriptions, and maybe in the Guix code in general, exactly because
that makes the ideas easier to communicate.
We're not writing poetry, e.g. for the IOCCC, or for PoC||GTFO or
tmpout.sh; there it would make less sense to use an LLM.
The creative part of Guix is not even in 'the code'; we could
reimplement Guix in Haskell and the ideas we want to convey would still
be there. I believe LLMs can be an excellent addition to our tools to
express the ideas we want to convey more clearly, if used well.
Hugo
P.S. there is still the point of how to use LLMs ethically and
sustainably, which you bring up as well, but it is only worth tackling
those once it is clear why and when LLMs are worthwhile to use at all.