Posted by Steve on February 12, 2004 at 18:59:16:
The grammar for P3 allows more then one argument to lambda expressions. How is that type represented? (t1, t2, t3) -> t4 ?
The homework description says: "types are generated from the grammar: t ::= t -> t | int | boolean | a where a ranges over a set of type variables" Does this mean that if we end up with a completely generic type, we should call it a, b, c, ... ?
What about ()'s in the result? I presume you want the minimum that will make the expression correct ?
What is the type of (if x #t 5) ?
What is the type of (set! x 5) ? (my scheme interrpreter returns undefined)
--
Steve