guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: The Guile junk drawer and a C plea


From: Dr. Arne Babenhauserheide
Subject: Re: The Guile junk drawer and a C plea
Date: Sat, 29 Jun 2024 10:12:26 +0200

Mikael Djurfeldt <mikael@djurfeldt.com> writes:

> design a new module hierarchy, introduce aliases for module bindings,
> and still supply the old module hierarchy during a few years for
> backward compatibility.

Please do not do this. It is a recipe for disaster.

Do you remember when Lilypond broke with Guile 2.0?
How long it took to get it working with modern Guile again?
This plan would cause the same — but much, much worse.

Lilypond is the one tool using Guile — the single tool — which actually
reigns supreme in its domain. Nothing else comes even close in quality.

The tools broken by breaking things “with sufficient warning” are
usually the most advanced ones. Specialized tools. The ones which rule
in their domain. That people depend on.

There’s something many useful things have in common: they work and need
little changes.

When the infrastructure these tools use intentionally breaks the tools
and requires constant upkeep just to keep working, this makes the
infrastructure volatile and unreliable.

Such large changes promise to make the system better, but they leave
it in a state of eternal semi-brokenness, because before the first
breakage is fully resolved, the next part gets rewritten and it causes
more breakage. And so the next breakage comes. Because doing such
“let’s just change it all” steps changes the culture.

Python tools had just kept working for years and years before Python 3.
After the release of Python 3, they broke every few years. The culture
had changed to one that accepts being volatile.

Making Guile volatile would make it a dumb idea to depend on it for
infrastructure. And I very much want to use Guile for my infrastructure.

I reduced my reliance on Python after having to spend time again and
again when my existing tools broke. Guile is becoming the replacement
for it. Please don’t plan to break it.

Please let us be a reliable foundation for infrastructure.

Best wishes,
Arne

PS: If this argument doesn’t suffice for you, before you discard it,
    please have a look at
    https://www.draketo.de/software/volatile-infrastructure
-- 
Unpolitisch sein
heißt politisch sein,
ohne es zu merken.
draketo.de

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]