Browse thread
[Caml-list] Polymorphic method problem
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Alex Baretta <alex@b...> |
| Subject: | Re: [Caml-list] Polymorphic method problem |
Christian Szegedy wrote:
> Can anyone tell me, why does the following piece of
> code fail to compile, and how can I achieve
> equivalent effect in the most convenient way?
>
> class a () =
> object(self)
> method f : 'a. ((< f : unit; .. > as 'a) -> unit) = fun other ->
> other#f method g = (self :> a)
> end
>
> Thanks in advance!
>
Your type annotations are not correct. Omit the ones which are not
strictly needed.
class a =
object (self)
method f : 'a.((<f:unit; ..> as 'a) -> unit) > as 'a) -> unit) =
fun x -> x # f
method g = self
end
Alex
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners