caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Modules within classes
@ 2006-09-13  7:44 Martin Hofmann
  2006-09-13  8:10 ` [Caml-list] " Jonathan Roewen
  2006-09-13  9:36 ` Pietro Abate
  0 siblings, 2 replies; 4+ messages in thread
From: Martin Hofmann @ 2006-09-13  7:44 UTC (permalink / raw)
  To: caml-list; +Cc: Oliver.Friedmann

Dear all, 

Can someone explain what is wrong here and perhaps suggest a workaround? 

class ['a] test ( l : 'a list) = 
object 
   method result = 
     let module M = 
      struct
        type t = 'a      
        let compare x y =
          if x < y then -1 else if x > y then 1 else 0
      end
  in
    let module MSet = Set.Make(M)
    in  MSet.elements (List.fold_right MSet.add l MSet.empty) 
end;;

OCaml says: "Unbound type parameter 'a". 

Our aim is of course not to program sorting the umpteenth time but to 
have a means for using Pervasives.Set within a parametrised class.

The problem seems to be that although "class ['a]" binds 'a its use is 
nevertheless disallowed in the scope of the class declaration. 

Many thanks in advance!

Martin Hofmann (on behalf of Oliver Friedmann)


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-09-13  9:48 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-09-13  7:44 Modules within classes Martin Hofmann
2006-09-13  8:10 ` [Caml-list] " Jonathan Roewen
2006-09-13  9:48   ` Jonathan Roewen
2006-09-13  9:36 ` Pietro Abate

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).