guix-devel
[Top][All Lists]
Advanced

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

Re: question regarding substitute* and #t


From: Maxim Cournoyer
Subject: Re: question regarding substitute* and #t
Date: Thu, 25 Jan 2018 00:31:04 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Andy Wingo <address@hidden> writes:

> On Wed 24 Jan 2018 14:28, Mark H Weaver <address@hidden> writes:
>
>> Andy Wingo <address@hidden> writes:
>>
>>> On Wed 24 Jan 2018 13:06, Mark H Weaver <address@hidden> writes:
>>>
>>>> +             ;; Install to the right directory
>>>> +             (substitute* '("Makefile"
>>>> +                            "Qsci/Makefile")
>>>> +               (("\\$\\(INSTALL_ROOT\\)/gnu/store/[^/]+")
>>>> +                (assoc-ref outputs "out")))
>>>> +             #t)))))
>>>
>>> I guess once we switch over all instances of "system" and "system*" to
>>> use invoke, does that mean we will also be able to remove these
>>> vestigial "#t" returns?
>>
>> After we switch to using 'invoke' everywhere, or more precisely, after
>> we arrange to never return #false from any phase or snippet, then there
>> should be one more step before removing the vestigial #true returns: we
>> should change the code that calls phases or snippets to ignore the
>> value(s) returned by those procedures.  When that is done, then the #t's
>> will truly be vestigial.  Does that make sense?
>
> Sure, makes sense.  Thanks for thinking it through with me :)
>
> Andy

Where does this `invoke' comes from? Geiser is unhelpful at finding it,
and it doesn't seem to be documented in the Guile Reference?

Thanks,

Maxim



reply via email to

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