Hi Andreas, On Tue, 20 Oct 2020 at 12:33, Andreas Enge <andr...@enge.fr> wrote:
> And since we are on the bikeshedding front, I feel like writing a second > message. You are playing the devil's lawyer role, right? > On Fri, Oct 16, 2020 at 12:38:23PM +0200, Ludovic Courtès wrote: > - The "non-typedness of booleans": Does "(if 1 2 3)" raise an exception or > work, and if the latter is true, what is the result? And if I replace > "1" by "0" or the empty list? (In Guix, this is related to the question: This is a question about the standard, right? It is not about #true or #false vs #t or #f. > Do I need to add #t or #f at the end of a phase, or is the value of its > last statement sufficient?) The question is how to know the value of the last statement. And it is Scheme/Guile question, right? Not really about the #true vs #t, isn't it? > - What are the different procedures for comparing things? The Guile manual explains well, isn't it? <https://www.gnu.org/software/guile/manual/html_node/Equality.html> Cheers, simon ps: Well, one example showing all the points is, IMHO: --8<---------------cut here---------------start------------->8--- scheme@(guix-user)> (define (f x) (when (> x 2) #true)) scheme@(guix-user)> (map f '(1 2 3 4)) $1 = (#<unspecified> #<unspecified> #t #t) --8<---------------cut here---------------end--------------->8--- (whatever the comparison (> x 2) is; could be package related.)