guix-devel
[Top][All Lists]
Advanced

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

Re: Etymology of derivation


From: Timothy Sample
Subject: Re: Etymology of derivation
Date: Tue, 03 Nov 2020 09:53:25 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Hello,

Ludovic Courtès <ludo@gnu.org> writes:

> Arun Isaac <arunisaac@systemreboot.net> skribis:
>
>> The original Nix publication was helpful. On page 22 of the full thesis,
>> it says:
>>
>> Derivation is Nix-speak for a component build action, which derives
>> the component from its inputs.
>
> Not sure if it helps, but I struggled a bit with the etymology of the
> word as well and wrote this in the manual (info "(guix) Programming
> Interface"):
>
>      Lower-level APIs are available to interact with the daemon and the
>   store.  To instruct the daemon to perform a build action, users actually
>   provide it with a “derivation”.  A derivation is a low-level
>   representation of the build actions to be taken, and the environment in
>   which they should occur—derivations are to package definitions what
>   assembly is to C programs.  The term “derivation” comes from the fact
>   that build results _derive_ from them.

This is a good explanation of the term in the context of Guix.  Going
back to the etymology, we do use “derivation” in a similar way in
mathematics.  I don’t think it’s particularly elegant, but it shows up.

A “derivation” is the answer to the question “how do you derive X?”.  In
this case, “how do you derive X?” is the same as asking “how did you
arrive at X?” or “what are the steps used to produce X?”.  (Note that it
has nothing to do with taking a derivative in the calculus sense!)

For instance, you might ask “how do you derive the formula for the area
of a circle?”.  If you flip the question around, you could ask “what is
the derivation of the formula for the area of a circle?”.  Here’s an
example titled “Area of a circle - derivation” [1].  I also see people
on popular forums asking things like “can anyone show me the derivation
of this formula for the radius of electron from nucleus?”.

Similarly, I might have “/gnu/store/…-hello” and ask “what were the
steps used to produce this?” or, equivalently, “can anyone show me the
derivation of this?”.  At this point Guix comes to the rescue and says
“/gnu/store/…-hello.drv”!

Of course, I don’t know what Eelco Dolstra was thinking, but that’s how
I understand the term.


-- Tim

[1] https://www.mathopenref.com/circleareaderive.html



reply via email to

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