Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002564OCaml~DO NOT USE (was: OCaml general)public2004-05-09 19:332016-12-08 14:00
Assigned To 
StatusclosedResolutionwon't fix 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0002564: Hierarchical Modules
DescriptionFull_Name: Kenneth Knowles
Version: 3.07+14
OS: linux
Submission from: (

I recall seeing a "wish not granted" bug asking for namespacing (i.e. modules
without real signatures, for distribution purposes only)... but I can't find it
now, perhaps I am mistaken.

I would love some kind of namespacing construct, but failing that, the GHC
compiler has a very useful, (and simple!), syntactic extension to allow periods
in the names of modules. This is my feature request: [^]

My reason for wanting this is to accomodate a hierarchical distribution model,
take Simple Directmedia Layer for example (this module layout is not the one
that ocamlsdl actually has):

User installs SDL, which contains
modules SDL = struct
   module Video = struct ... end
   module Timer
   module Audio

However, there are extension libraries which one may like to install
independently, such as SDL_Image. For this to appear within the SDL module
would be nice, i.e.:

module SDL.Image = = struct

I don't desire that this new module appear in the signature of the SDL module,
but rather that it be able to be referenced via the identifier SDL.Image.

It is only an illusion of the appearance of

module SDL = struct
    module Video
    module ....
    module Image

Forgive me if this has been requested before and I failed to locate the feature


TagsNo tags attached.
Attached Files

- Relationships

-  Notes
shinwell (developer)
2016-12-08 14:00

This seems most unlikely to be implemented.
(There are modern namespacing proposals in the pipeline.)

- Issue History
Date Modified Username Field Change
2005-11-18 10:13 administrator New Issue
2016-12-08 14:00 shinwell Note Added: 0016877
2016-12-08 14:00 shinwell Status acknowledged => closed
2016-12-08 14:00 shinwell Resolution open => won't fix
2017-02-23 16:36 doligez Category OCaml general => -OCaml general
2017-03-03 17:55 doligez Category -OCaml general => -(deprecated) general
2017-03-03 18:01 doligez Category -(deprecated) general => ~deprecated (was: OCaml general)
2017-03-06 17:04 doligez Category ~deprecated (was: OCaml general) => ~DO NOT USE (was: OCaml general)

Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker