Hi John,
thank you very much for this detailed answer!
John Cowan wrote:
> I've reformatted your code to Lisp standard style (2 spaces instead of
> tabs, no parens on their own lines) for better readability.
Thank you for that input - I am relatively new to Scheme/Lisp and
therefore my idea of
I've reformatted your code to Lisp standard style (2 spaces instead of
tabs, no parens on their own lines) for better readability.
(define strange-warning (lambda (sym options)
(let ((el (assq sym options)))
(if (pair? el)
(if (list? el)
"list"
(cdr el)) ; <== strange
This was reported by Peter: egg build scripts on Windows did not abort on
error, as the exitlevel of each command has to be checked explicitly.
felix
From 29b7d964852c9701d559b351080874dfdd397f2d Mon Sep 17 00:00:00 2001
From: felix
Date: Sat, 30 Jun 2018 11:53:11 +0200
Subject: [PATCH] Check
sorry...
(import scheme chicken)
(define strange-warning (lambda (sym options)
(let ((el (assq sym options)))
(if (pair? el)
(if (list? el)
"list"
(cdr el) ; <== strange warning here
)
"found nothing"
)
)
))
(define no-warning (lambda (sym options)
(let ((el (assq sym
Hi,
the attached file contains 3 procedures
a) strange-warning
b) no-warning
c) also-no-warning
(a) and (b) should be semantically identical - just the if's are
rearranged.
"csc strange-warning.scm" produces a type-warning for (a) but not for
(b):
...call to `cdr', expected argument