From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id VAA28898; Mon, 28 May 2001 21:10:28 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 VAA28823 for ; Mon, 28 May 2001 21:10:27 +0200 (MET DST) Received: from mta5.snfc21.pbi.net (mta5.snfc21.pbi.net [206.13.28.241]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f4SJAP910016; Mon, 28 May 2001 21:10:26 +0200 (MET DST) Received: from checkerlap.d6.com ([64.160.52.153]) by mta5.snfc21.pbi.net (Sun Internet Mail Server sims.3.5.2000.01.05.12.18.p9) with ESMTP id <0GE2004N57X9RW@mta5.snfc21.pbi.net>; Mon, 28 May 2001 12:10:22 -0700 (PDT) Date: Mon, 28 May 2001 12:02:01 -0700 From: Chris Hecker Subject: Re: [Caml-list] lisp -> ocaml In-reply-to: <20010528153256.C21783@pauillac.inria.fr> X-Sender: def6@shell16.ba.best.com To: Xavier Leroy Cc: Miles Egan , caml-list@inria.fr Message-id: <4.3.2.7.2.20010528111151.026ca2a0@shell16.ba.best.com> MIME-version: 1.0 X-Mailer: QUALCOMM Windows Eudora Version 4.3.2 Content-type: text/plain; charset="us-ascii" References: <4.3.2.7.2.20010527170201.02754820@shell16.ba.best.com> <20010522093341.A97425@caddr.com> <20010522093341.A97425@caddr.com> <20010527150119.A8468@pauillac.inria.fr> <4.3.2.7.2.20010527170201.02754820@shell16.ba.best.com> Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk >reflected in the type of atoms. Of course, to preserve type safety, >property keys need to be typed, so that when we recover a data from a >property list, its type is known. Yeah, this was the part that I was missing (that you needed to have the preallocated property around to pass in). So, in lisp, I assume I don't need to pass in this other piece of data since it's dynamically typed. However, with this, it seems like I need to pass in the same property instance to "get" that I gave to "put" (so that the closure sets the right thing), so if I want somebody else to be able to get the properties I set, then I have to pass them all my property instances as well, right? Which sort of causes the same heterogeneity problem again. ;) Or am I missing something? I guess you could preallocate properties for the basic types in the atoms.mli file so everybody could use them, but you'd still have to have a set that your app uses for your own types. Still, it's definitely a cute trick! Somebody needs to make a website with "wacky but potentially useful functional patterns", since there's no way I'd have thought of this, or combinators, or whatever. :) Chris ------------------- To unsubscribe, mail caml-list-request@inria.fr. Archives: http://caml.inria.fr