[plt-scheme] interesting DrScheme error message

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Thu Sep 29 11:27:28 EDT 2005

Yes, known bug. -- Matthias

On Sep 22, 2005, at 9:55 PM, Prabhakar Ragde wrote:

> I had a student who wrote code that looked something like this 
> (simplified to convey the essence):
>
> (define (f x y)
>   (+ x y))
>
> (define (g x y)
>   (+
>    (f x x)
>    10)
>   20)
>
> Running this in Beginning Student (299.400) highlights the "f" in the 
> definition of g and gives the error message:
>
> f: name is not defined, not an argument, and not a primitive name
>
> If, on the other hand, I replace the expression (+ (f x x) 10) with (+ 
> 2 10), I get the 20 highlighted, and the more reasonable error 
> message:
>
> define: expected only one expression for the function body, but found 
> one extra part
>
> Is there a logical explanation for this? From the student's point of 
> view, the first error message is quite incomprehensible. Thanks. --PR
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme



Posted on the users mailing list.