Package ocaml

Annot
AsttypesAuxiliary AST types used by parsetree and typedtree.
Backend_intfKnowledge that the middle end needs about the backend.
Cmo_format
Cmx_format
Expunge
Inlining_decision_intf
Main
Odoc
Odoc_args
Odoc_dag2html
Odoc_dot
Odoc_gen
Odoc_html
Odoc_latex
Odoc_latex_style
Odoc_man
Odoc_ocamlhtml
Odoc_test
Odoc_texi
Odoc_to_text
Optmain
Outcometree
ParsetreeAbstract syntax tree produced by parsing
Profiling
Simplify_boxed_integer_ops_intf
Std_exit
Topstart
X86_astStructured representation of Intel assembly language (32 and 64 bit).
Bigarray

graphics

Graphics
GraphicsX11

nums

Arith_status
Big_int
Nat
Num
Ratio
Raw_spacetime_lib

stdlib

ArgParsing of command line arguments.
ArrayArray operations.
ArrayLabelsArray operations.
BufferExtensible buffers.
BytesByte sequence operations.
BytesLabelsByte sequence operations.
CallbackRegistering OCaml values with the C runtime.
CamlinternalFormat
CamlinternalFormatBasics
CamlinternalLazyRun-time support for lazy values. All functions in this module are for system use only, not for the casual user.
CamlinternalModRun-time support for recursive modules. All functions in this module are for system use only, not for the casual user.
CamlinternalOORun-time support for objects and classes. All functions in this module are for system use only, not for the casual user.
CharCharacter operations.
ComplexComplex numbers.
DigestMD5 message digest.
EphemeronEphemerons and weak hash table
FilenameOperations on file names.
FormatPretty printing.
GcMemory management control and statistics; finalised values.
GenlexA generic lexical analyzer.
HashtblHash tables and hash functions.
Int3232-bit integers.
Int6464-bit integers.
LazyDeferred computations.
LexingThe run-time library for lexers generated by ocamllex.
ListList operations.
ListLabelsList operations.
MapAssociation tables over ordered types.
MarshalMarshaling of data structures.
MoreLabelsExtra labeled libraries.
NativeintProcessor-native integers.
ObjOperations on internal representations of values.
OoOperations on objects
ParsingThe run-time library for parsers generated by ocamlyacc.
PervasivesThe initially opened module.
PrintexcFacilities for printing exceptions and inspecting current call stack.
PrintfFormatted output functions.
QueueFirst-in first-out queues.
RandomPseudo-random number generators (PRNG).
ScanfFormatted input functions.
SetSets over ordered types.
SortSorting and merging lists.
SpacetimeProfiling of a program's space behaviour over time. Currently only supported on x86-64 platforms running 64-bit code.
StackLast-in first-out stacks.
StdLabelsStandard labeled libraries.
StreamStreams and parsers.
StringString operations.
StringLabelsString operations.
SysSystem interface.
UcharUnicode characters.
WeakArrays of weak pointers and hash sets of weak pointers.
Str

unix

Unix
UnixLabels

compiler-libs/ocamlbytecomp

Bytegen
Bytelibrarian
Bytepackager
BytesectionsRecording sections written to a bytecode executable file
Compile
Compplugin
Dll
Emitcode
Errors
Instruct
Meta
Opcodes
Printinstr
Symtable

compiler-libs/ocamlcommon

Arg_helperDecipher command line arguments of the form <value> | <key>=<value>,... (as used for example for the specification of inlining parameters varying by simplification round).
Ast_helperHelpers to produce Parsetree fragments
Ast_invariantsCheck AST invariants
Ast_iteratoriterator allows to implement AST inspection using open recursion. A typical mapper would be based on default_iterator, a trivial iterator, and will fall back on it for handling the syntax it does not modify.
Ast_mapperThe interface of a -ppx rewriter
Attr_helperHelpers for attributes
Btype
Builtin_attributes
Ccomp
Clflags
Cmi_format
Cmt_formatcmt and cmti files format.
Compenv
Compmisc
Config
Consistbl
Ctype
Datarepr
DependModule dependencies.
DocstringsDocumentation comments
Env
Envaux
Ident
IdentifiableUniform interface for common data structures over various things.
Includeclass
Includecore
Includemod
Lambda
Lexer
LocationSource code locations (ranges of positions), used in parsetree.
LongidentLong identifiers, used in parsetree.
Main_args
Matching
Misc
Mtype
NumbersModules about numbers that satisfy Identifiable.S.
Oprint
Parmatch
ParseEntry points in the parser
Parser
Path
Pparse
Pprintast
Predef
Primitive
Printast
Printlambda
Printtyp
Printtyped
Runtimedef
Simplif
Strongly_connected_componentsKosaraju's algorithm for strongly connected components.
Stypes
Subst
Switch
SyntaxerrAuxiliary type for reporting syntax errors
Tast_mapper

A generic Typedtree mapper

Tbl
Terminfo
TimingsCompiler performance recording
Translattribute
Translclass
Translcore
Translmod
Translobj
Typeclass
Typecore
Typedecl
TypedtreeAbstract syntax tree after typing
TypedtreeIter
TypedtreeMap
Typemod
Typeopt
Types
Representation of types and declarations
Typetexp
Untypeast
Warnings

compiler-libs/ocamloptcomp

Alias_analysis
Allocated_constConstants that are always allocated (possibly statically). Blocks are not included here since they are always encoded using Prim (Pmakeblock, ...).
Arch
Asmgen
Asmlibrarian
Asmpackager
Augment_specialised_argsHelper module for adding specialised arguments to sets of closures.
Branch_relaxation
Branch_relaxation_intf
Build_export_infoConstruct export information, for emission into .cmx files, from an Flambda program.
CSE
CSEgen
Clambda
Closure
Closure_conversion
Closure_conversion_auxEnvironments and auxiliary structures used during closure conversion.
Closure_element
Closure_idCR-someday lwhite: "Closure_id" is quite a generic name. I wonder whether something like "Closure_label" would better capture that it is the label of a projection.
Closure_offsetsAssign numerical offsets, within closure blocks, for code pointers and environment entries.
Cmm
Cmmgen
Coloring
Comballoc
Compilation_unit
Compilenv
Deadcode
Debuginfo
Effect_analysisSimple side effect analysis.
Emit
Emitaux
Export_id
Export_infoExported information (that is to say, information written into a .cmx file) about a compilation unit.
Export_info_for_packTransformations on export information that are only used for the building of packs.
Extract_projectionsIdentify projections from variables used in function bodies (free variables or specialised args, for example, according to which_variables below). Projections from variables that are also used boxed are not returned.
Find_recursive_functions"Recursive functions" are those functions f that might call either:
FlambdaIntermediate language used for tree-based analysis and optimization.
Flambda_invariants
Flambda_iterators
Flambda_to_clambda
Flambda_utilsUtility functions for the Flambda intermediate language.
FresheningFreshening of various identifiers.
Id_types
Import_approxCreate simple value approximations from the export information in .cmx files.
Inconstant_idents
Initialize_symbol_to_let_symbol
Inline_and_simplify
Inline_and_simplify_auxEnvironments and result structures used during inlining and simplification. (See inline_and_simplify.ml.)
Inlining_costMeasurement of the cost (including cost in space) of Flambda terms in the context of inlining.
Inlining_decisionSee the Flambda manual chapter for an explanation in prose of the inlining decision procedure.
Inlining_stats
Inlining_stats_types
Inlining_transformsSource code transformations used during inlining.
Interf
Invariant_params
Lift_code
Lift_constantsThe aim of this pass is to assign symbols to values known to be constant (in other words, whose values we know at compile time), with appropriate sharing of constants, and replace the occurrences of the constants with their corresponding symbols.
Lift_let_to_initialize_symbol
Linearize
Linkage_name
Liveness
Mach
Middle_end
Mutable_variable
Optcompile
Opterrors
Pass_wrapper
Printclambda
Printcmm
Printlinear
Printmach
Proc
ProjectionRepresentation of projections from closures and blocks.
Ref_to_variablesTransform let-bound references into variables.
Reg
Reload
Reloadgen
Remove_free_vars_equal_to_argsReplace free variables in closures known to be equal to specialised arguments of such closures with those specialised arguments.
Remove_unused_arguments
Remove_unused_closure_vars
Remove_unused_program_constructs
Schedgen
Scheduling
Selectgen
Selection
Semantics_of_primitivesDescription of the semantics of primitives, to be used for optimization purposes.
Set_of_closures_idAn identifier, unique across the whole program, that identifies a set of closures (viz. Set_of_closures).
Set_of_closures_origin
Share_constantsShare lifted constants that are eligible for sharing (e.g. not strings) and have equal definitions.
Simple_value_approxSimple approximations to the runtime results of computations. This pass is designed for speed rather than accuracy; the performance is important since it is used heavily during inlining.
Simplify_boxed_integer_ops
Simplify_commonconst_*_expr expr v annot, where the expression expr is known to evaluate to the value v, attempt to produce a more simple expression together with its approximation and the benefit gained by replacing expr with this new expression. This simplification is only performed if expr is known to have no side effects. Otherwise, expr itself is returned, with an appropriate approximation but zero benefit.
Simplify_primitives
Spacetime_profilingInsertion of instrumentation code for Spacetime profiling.
Spill
Split
Static_exceptionAn identifier that is used to label static exceptions. Its uniqueness properties are unspecified.
Strmatch
SymbolA symbol identifies a constant provided by either:
TagTags on runtime boxed values.
Un_anf
Unbox_closuresTurn free variables of closures into specialised arguments. The aim is to cause the closure to become closed.
Unbox_free_vars_of_closuresWhen approximations of free variables of closures indicate that they are closures or blocks, rewrite projections from such blocks to new variables (which become free in the closures), with the defining expressions of the projections lifted out of the corresponding sets of closures.
Unbox_specialised_argsWhen approximations of specialised arguments indicate that they are closures or blocks, add more specialised arguments corresponding to the projections from such blocks (with definitions of such projections lifted out), such that the original specialised arguments may later be eliminated.
Var_within_closureAn identifier, unique across the whole program, that identifies a particular variable within a particular closure. Only Project_var, and not Var, nodes are tagged with these identifiers.
VariableVariable.t is the equivalent of a non-persistent Ident.t in the Flambda tree. It wraps an Ident.t together with its source compilation_unit. As such, it is unique within a whole program, not just one compilation unit.
X86_dslHelpers for Intel code generators
X86_gasEmit assembly instructions for gas.
X86_masmEmit assembly instructions for MASM (Intel syntax).
X86_procDefinitions shared between the 32 and 64 bit Intel backends.

compiler-libs/ocamltoplevel

Genprintval
Topdirs
Topdirs
Toploop
Topmain
Trace

ocamldoc/odoc_info

Odoc_analyse
Odoc_ast
Odoc_class
Odoc_comments
Odoc_comments_global
Odoc_config
Odoc_control
Odoc_cross
Odoc_dep
Odoc_env
Odoc_exception
Odoc_extension
Odoc_global
Odoc_info
Odoc_inherit
Odoc_lexer
Odoc_merge
Odoc_messages
Odoc_misc
Odoc_module
Odoc_name
Odoc_parameter
Odoc_parser
Odoc_print
Odoc_scan
Odoc_see_lexer
Odoc_sig
Odoc_str
Odoc_text
Odoc_text_lexer
Odoc_text_parser
Odoc_type
Odoc_types
Odoc_value

ocplib-compat/ocplib-compat

OcpCompat
StringCompat

ocplib-config/ocplib-config

PythonConfig
SimpleConfig
SimpleConfigOCaml
SimpleConfigTypes
OcpDebug

ocplib-file/ocplib-file

File
FileChannel
FileDir
FileGen
FileLabels
FileLines
FileOS
FilePath
FileSig
FileString

ocplib-lang/ocplib-lang

Ocamllexer
OcpArray
OcpDigest
OcpGenlex
OcpHashtbl
OcpList
OcpManpage
OcpOption
OcpPervasives
OcpReuse
OcpStream
OcpString
OcpSubst
OcpToposort
StdlibArg
Subcommands

ocplib-system/ocplib-system

OcpDate
OcpFilename
OcpUnix

ocplib-unix/ocplib-unix

MinUnix
OnlyUnix
OnlyWin32

threads/threads

Condition
Condition
Event
Event
Mutex
Mutex
Thread
ThreadUnix

vmthreads/threads

Thread
ThreadUnix

Info

version?