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 WAA00258; Fri, 2 Jan 2004 22:06:33 +0100 (MET) 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 WAA32448 for ; Fri, 2 Jan 2004 22:06:32 +0100 (MET) Received: from wetware.com (wetware.wetware.com [199.108.16.1]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id i02L5pv00797 for ; Fri, 2 Jan 2004 22:06:11 +0100 (MET) Received: from [208.177.152.18] (helo=[10.0.1.5]) by wetware.com with esmtp (Exim 4.20) id 1AcWUQ-0004Ct-IJ for caml-list@inria.fr; Fri, 02 Jan 2004 13:05:50 -0800 Mime-Version: 1.0 (Apple Message framework v609) Content-Transfer-Encoding: 7bit Message-Id: <6F13BE12-3D67-11D8-A3F4-000393B8133A@wetware.com> Content-Type: text/plain; charset=US-ASCII; format=flowed To: The Trade From: james woodyatt Subject: Re: [Caml-list] flow optimization q Date: Fri, 2 Jan 2004 13:05:46 -0800 X-Mailer: Apple Mail (2.609) X-Loop: caml-list@inria.fr X-Spam: no; 0.00; woodyatt:01 jhw:01 wetware:01 caml-list:01 wetware:01 2004:99 jhw:01 ozemail:01 rcpt:99 ozemail:01 550:99 exim:99 4.20:01 2004:99 pelican:01 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk skaller-- I tried to send this back-channel, but it bounced. Begin forwarded message: > From: Mail Delivery System > Date: 02 January 2004 12:40:39 PST > To: jhw@wetware.com > Subject: Mail delivery failed: returning message to sender > > This message was created automatically by mail delivery software. > > A message that you sent could not be delivered to one or more of its > recipients. This is a permanent error. The following address(es) > failed: > > skaller@ozemail.com.au > SMTP error from remote mailer after RCPT > TO:: > host mx.ozemail.com.au [203.2.192.76]: 550 Invalid recipient: > > > ------ This is a copy of the message, including all the headers. ------ > > Return-path: > Received: from [208.177.152.18] (helo=[10.0.1.5]) > by wetware.com with esmtp (Exim 4.20) > id 1AcW5x-00046L-G0 > for skaller@ozemail.com.au; Fri, 02 Jan 2004 12:40:34 -0800 > Mime-Version: 1.0 (Apple Message framework v609) > In-Reply-To: <1072936720.4626.18.camel@pelican> > References: <1072936720.4626.18.camel@pelican> > Content-Type: text/plain; charset=US-ASCII; format=flowed > Message-Id: > Content-Transfer-Encoding: 7bit > From: james woodyatt > Subject: Re: [Caml-list] flow optimisation q > Date: Fri, 2 Jan 2004 12:40:28 -0800 > To: skaller@ozemail.com.au > X-Mailer: Apple Mail (2.609) > > On 02 Jan 2004, at 18:54, skaller wrote: >> >> Nothing to do with ocaml, but some people here >> might know.. Suppose there is a set of >> primitive procedures pr1 pr2 and a procedure constructor: >> >> proc = proc list >> >> which defines a new procedure to be a list of calls >> to other procedures, with mutual recursion allowed. >> >> A special procedure is the empty >> procedure whose call list is empty. >> >> Problem: remove all empty procedures >> (and of course calls to them). >> >> My current algorithm is functional: >> make a new set of procedures which >> (a) excludes empty procedures >> (b) has calls to empty procedures elided >> >> To make this solve the problem requires >> repeated application until there are no >> empty procedures left. >> >> I get the feeling there should be a way to do it >> a bit more efficiently :-) > > I have a hunch that your current approach might be equivalent to > executing an NFA, which you could improve by using a DFA instead. Just > a hunch, though-- I haven't given it more than cursory thought. > > > -- > j h woodyatt > markets are only free to the people who own them. > ------------------- 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