3 ms·
The Bat* names strike me as a little odd. Does OCaml not have namespaces?
by machrider 17y ago
The Bat* names strike me as a little odd. Does OCaml not have namespaces?
- j_baker 17y agoIt's sort of .Net or Java-like. Each source file is its own module. However, when you open a module, you import everything into the current module. You can also use dotted notation: Module.thing
- mfp 17y agoThe new module organization avoids collisions with existing libraries like Extlib while allowing you to link Batteries' modules selectively, thus decreasing the size of the generated executables. For convenience, all the modules are also available under the Batteries namespace. In this case, however, all of Batteries' code will be included in the executable --- that's how OCaml's linker works at the moment. For instance, if you only use BatList in your code (or do module List = BatList to refer to it with that name), only that module will be included in the binary; if you do open Batteries and then refer to the module simply as List, all the other modules in the Batteries hierarchy will also be included in the binary.