Re: [Chicken-users] and-let* syntax too permissive?

2013-06-30 Thread Peter Bex
On Sun, Jun 30, 2013 at 03:10:59PM +0200, Peter Bex wrote: > On Mon, Jun 24, 2013 at 11:34:02AM +0200, Michele La Monaca wrote: > > I think it's dangerous to leave it as it is. For example: > > > > #;3> (and-let* (((or #f #t))) 1);; correct > > 1 > > #;4> (and-let* ((or #f #t)) 1) ;; WRON

Re: [Chicken-users] and-let* syntax too permissive?

2013-06-30 Thread Peter Bex
On Mon, Jun 24, 2013 at 11:34:02AM +0200, Michele La Monaca wrote: > I think it's dangerous to leave it as it is. For example: > > #;3> (and-let* (((or #f #t))) 1);; correct > 1 > #;4> (and-let* ((or #f #t)) 1) ;; WRONG! -> a stricter syntax > would catch this error > #f I agree this t

Re: [Chicken-users] and-let* syntax too permissive?

2013-06-24 Thread John Cowan
Michele La Monaca scripsit: > This nonsense seems to be valid syntax: > > #;1> (and-let* ((foobar 1 2 3)) foobar) I grabbed the Chibi definition and translated it into Chicken. Unfortunately, (use and-let) does not override the core definition for some reason. Here it is with and-let* changed t

[Chicken-users] and-let* syntax too permissive?

2013-06-24 Thread Michele La Monaca
This nonsense seems to be valid syntax: #;1> (and-let* ((foobar 1 2 3)) foobar) 1 2 and 3 are not even evaluated as the following example demonstrates: #;2> (and-let* ((foobar 1 (sleep 100))) foobar) 1 I think it's dangerous to leave it as it is. For example: #;3> (and-let* (((or #f #t))) 1)