From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id NAA17522 for caml-redistribution; Wed, 20 Jan 1999 13:56:36 +0100 (MET) Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id AAA00288 for ; Wed, 20 Jan 1999 00:18:03 +0100 (MET) Received: from mail1.digital.com (mail1.digital.com [204.123.2.50]) by nez-perce.inria.fr (8.8.7/8.8.7) with ESMTP id AAA15210 for ; Wed, 20 Jan 1999 00:18:00 +0100 (MET) From: doligez@pa.dec.com Received: from six.pa.dec.com (six.pa.dec.com [16.4.80.66]) by mail1.digital.com (8.9.1a/8.9.1/WV2.0c) with SMTP id PAA00094; Tue, 19 Jan 1999 15:17:59 -0800 (PST) Received: by six.pa.dec.com; id AA08949; Tue, 19 Jan 1999 15:17:59 -0800 Message-Id: <199901192317.AA08949@six.pa.dec.com> To: Hendrik Tews Cc: caml-list@inria.fr Subject: Re: Obj module In-Reply-To: Message of Tue, 19 Jan 1999 14:09:00 +0100 from Hendrik Tews <199901191309.OAA31814@irritatie.cs.kun.nl> Date: Tue, 19 Jan 1999 15:17:59 -0800 X-Mts: smtp Sender: weis >From: Hendrik Tews >where can I find documentation on the Obj module in the standard >library? 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