Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

organisation of modules in standard library #7416

Closed
vicuna opened this issue Nov 16, 2016 · 4 comments
Closed

organisation of modules in standard library #7416

vicuna opened this issue Nov 16, 2016 · 4 comments

Comments

@vicuna
Copy link

vicuna commented Nov 16, 2016

Original bug ID: 7416
Reporter: william
Status: resolved (set by @damiendoligez on 2017-02-17T16:56:56Z)
Resolution: not a bug
Priority: normal
Severity: text
Version: 4.04.0
Category: standard library
Monitored by: @dbuenzli

Bug description

I feel like since some time the "coherence" of the standard library has worsen, probably because of the addition of many new (and undocumented) modules.

Maybe it is time to group modules by purpose, at least in index.html, in order to better identify what module is available for what purpose ?

Here is a grouping I made quite quickly to illustrate this. It is likely to have many inconsistencies, I just made an initial guess.

Best regards

Arg
Arg_helper
Genlex
Lexer
Lexing
Marshal
Parse
Parser
Parsing

Array
ArrayLabels
Char
Big_int
Bigarray
Buffer
Bytes
BytesLabels
Complex
Consistbl
Digest
Ephemeron
Filename
Format
Graphics
GraphicsX11
Hashtbl
Identifiable
Int32
Int64
Lazy
List
ListLabels
Map
MoreLabels
Mutex
Nativeint
Num
Numbers
Pervasives
Printexc
Printf
Queue
Random
Ratio
Scanf
Set
Sort
Stack
StdLabels
Str
Stream
String
StringLabels
Strongly_connected_components
Sys
Tbl
Uchar
Unix
UnixLabels
Weak

Ast_helper
Ast_invariants
Ast_iterator
Ast_mapper
Asttypes
Attr_helper
Builtin_attributes
Location
Longident
Parsetree
Pprintast
Printast

Arith_status
Callback
CamlinternalFormat
CamlinternalFormatBasics
CamlinternalLazy
CamlinternalMod
CamlinternalOO
Ccomp
Clflags
Config
Depend
Docstrings
Dynlink
Gc
Misc
Obj
Oo
Spacetime
Syntaxerr
Terminfo
Timings
Warnings

Condition
Event
Thread
ThreadUnix

@vicuna
Copy link
Author

vicuna commented Nov 16, 2016

Comment author: @Octachron

I fear that http://caml.inria.fr/pub/docs/manual-ocaml/libref/index.html is not the right place to look for modules in the standard library.

Indeed, this page includes modules that are part of the compiler libraries and are not to intended to be commonly used (nor are they automatically linked).

The standard library and its module are described here http://caml.inria.fr/pub/docs/manual-ocaml/stdlib.html.

However, I agree that it would be nice to regoup modules in http://caml.inria.fr/pub/docs/manual-ocaml/libref/index.html by library.

@vicuna
Copy link
Author

vicuna commented Nov 16, 2016

Comment author: @dbuenzli

FWIW in odig grouping by library is what I intend to implement at some point, see b0-system/odig#1

@vicuna
Copy link
Author

vicuna commented Nov 16, 2016

Comment author: william

ah, I got tricked by a google search :-) Sorry for this.

@vicuna
Copy link
Author

vicuna commented Feb 17, 2017

Comment author: @damiendoligez

@Octachron but libref/index.html is generated by ocamldoc so it's hard to change the grouping. And alphabetic ordering is also interesting in an index page (which this is) when you know what you're looking for.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant