Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Caml-list] Modules

2 views
Skip to first unread message

Wouter Swierstra

unread,
Nov 10, 2009, 3:13:29 AM11/10/09
to caml...@inria.fr
Dear all,

I've been learning OCaml, coming from a Haskell background. While I'm
familiar with functional programming, I am occasionally puzzled by
errors relating to the module system. I was wondering if there was a
comprehensive overview/tutorial of OCaml's module system. I couldn't
find anything on the OCaml Hump - but perhaps someone on this list
might know a good reference.

Thanks in advance,

Wouter

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Pierre-Evariste Dagand

unread,
Nov 10, 2009, 3:32:02 AM11/10/09
to Wouter Swierstra, caml...@inria.fr
Hi Wouter,

> While I'm familiar with functional programming, I am occasionally puzzled by
> errors relating to the module system.

That's normal, everyone does, at some point. Especially when you start
having Parameterized Modules (called Functors in ML) all over the
place.

> I was wondering if there was a
> comprehensive overview/tutorial of OCaml's module system.

For a comprehensive source of information, there is the OCaml manual:

http://caml.inria.fr/pub/docs/manual-ocaml/manual004.html

For a tutorial on modules, I would recommend Chapter 14 of "Developing
Applications With Objective Caml":

http://caml.inria.fr/pub/docs/oreilly-book/html/index.html


Hope this helps,


--
Pierre-Evariste DAGAND
http://perso.eleves.bretagne.ens-cachan.fr/~dagand/

blue storm

unread,
Nov 10, 2009, 3:39:44 AM11/10/09
to Pierre-Evariste Dagand, caml...@inria.fr
I'd also add :
- the "formal" part of the manual (Part II) description of module
types : http://caml.inria.fr/pub/docs/manual-ocaml/manual018.html . In
particular the "Type specifications" section is quite informative
imho.
- the module-related chapter of the "UUU book" :
http://caml.inria.fr/pub/docs/u3-ocaml/ocaml-modules.html

If you're interested in theory, you can find an introduction to the ML
Module system theory in the Pierce's book "Advanced topic in Types and
Programming Languages" [1], and a some more advanced papers in the "A
Few Paper On Caml" section of this website :
http://caml.inria.fr/about/papers.en.html

[1] http://books.google.com/books?id=A5ic1MPTvVsC&pg=PA293&dq=pierce+module+ML#v=onepage&q=pierce%20module%20ML&f=false

0 new messages