[plt-scheme] srfi-7 bug

From: Grzegorz Chrupała (grzegorz at pithekos.net)
Date: Mon Mar 8 09:43:59 EST 2004

Hi all,
The srfi-7 spec says:
(feature-cond <feature-cond clause>+)                                                                      
           The meaning of a FEATURE-COND clause is that of the
           <program-clause>s in the first <feature-cond   
           clause> whose <implementation-requirement> is satisfied by
           the implementation. If an ELSE clause is present it is used
           if and only if no preceding clause is satisfied;

The mzscheme implementation seems wrong (it runs the code in the else 
clause even if a preceding clause was satisfied):
[grzegorz at pithekos grzegorz]$ cat x
(program
(feature-cond
 ((and)
  (code (display "OK")
        (newline)))
 (else
  (code (display "Won't be printed")
        (newline)))))
[grzegorz at pithekos grzegorz]$ mzscheme -L 7.ss srfi -r x
OK
Won't be printed

Cheers,
-- 
Grzegorz Chrupała | http://pithekos.net | grzegorzc at jabber.org
gosh -bE "print (map (cut number->string <> 36) '(18 806564\
          1714020422))" -Eexit



Posted on the users mailing list.