Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Re: Obj module
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: doligez@p...
Subject: Re: Obj module

>From: Hendrik Tews <>

>where can I find documentation on the Obj module in the standard

This module is deliberately undocumented because it breaks the type
system.  If you use it, your program can crash or behave in erratic
ways.  We don't document the module because we don't want spurious bug
reports from users who use it without knowing what they're doing.

More seriously, there is no way to document this module in an
implementation-independent way, and its behaviour is likely to change
with every release of O'Caml.  Basically, the documentation is the
whole source code for the O'Caml compiler, runtime and libraries.  If
you don't understand it, don't use Obj.

>Can somebody explain the meaning of those C primitives starting
>with a percent sign, eg "%identity"?

They are not really C primitives, but pseudo-primitives that are
recognised and implemented by the code generator itself, so the linker
will never see them.  In the byte-code system, each of these is
expanded to one byte-code, in the native-code compiler, they are
replaced by a short sequence of instructions.

-- Damien