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 QAA18894; Sat, 20 Jul 2002 16:28:01 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id QAA18890 for caml-list@pauillac.inria.fr; Sat, 20 Jul 2002 16:28:01 +0200 (MET DST) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id BAA20698 for ; Fri, 19 Jul 2002 01:41:39 +0200 (MET DST) X-SPAM-Warning: Sending machine is listed in blackholes.five-ten-sg.com Received: from sccmmhc02.mchsi.com (sccmmhc02.mchsi.com [204.127.203.184]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id g6INerT17459 for ; Fri, 19 Jul 2002 01:41:11 +0200 (MET DST) Received: from blue.weeg.uiowa.edu ([12.217.240.97]) by sccmmhc02.mchsi.com (InterMail vM.4.01.03.27 201-229-121-127-20010626) with ESMTP id <20020718233954.UCTQ25309.sccmmhc02.mchsi.com@blue.weeg.uiowa.edu> for ; Thu, 18 Jul 2002 23:39:54 +0000 Message-ID: <3D374ED0.8000208@blue.weeg.uiowa.edu> Date: Thu, 18 Jul 2002 18:27:12 -0500 From: Brian Smith User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:0.9.8+) Gecko/20020222 X-Accept-Language: en-us MIME-Version: 1.0 To: caml-list Subject: Re: [Caml-list] productivity improvement References: <20020716172916.4903.qmail@web10702.mail.yahoo.com> <200207182313.TAA19905@dewberry.cc.columbia.edu> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Oleg wrote: > You will need to modify the original node type and function "eval" by adding > an extra pattern to "match" statement, and then recompile everying that > depends on it. At the same time, with C++ the type of node remains the same. > You just need to derive a new class from it: I am wondering about this point too. But, perhaps you can use O'Caml classes to do the same thing as the C++ template classes? Anway, I think that the above "problem" can also be an asset. If you are building an interpreter, and you add a new construct to the interpreted language, then all code that claims to know about every construct will become erroneous, and so you will know right away what new code needs to be added. There doesn't seem to be anything like that in an inheritance-based model. - Brian ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners