I got the following error: "Type Checker: Cannot apply expression of type
Procedure, since it is not a function type"

What is the rationale behind this?

I'm constructing a function wrapper that uses apply, but I don't know how
to type a function in the most general way.

The code is like:

(define (wrapper fun . args) ...
   ... (apply fun args))

I expect functions to have any numbers/types of arguments but always return
a type B.

I tried something like (All (A) (A ... A -> B)) but it does not catch all
cases... so I tried to use the type Procedure, which according to the
documentation "is the supertype of all function types."

Thanks
-- 
Ismael
_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/users

Reply via email to