From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id A156BBC50 for ; Fri, 6 Oct 2006 05:22:48 +0200 (CEST) Received: from mail.cs.rice.edu (mail.cs.rice.edu [128.42.1.31]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id k963MlhD024436 for ; Fri, 6 Oct 2006 05:22:48 +0200 Received: from mail.cs.rice.edu (localhost.localdomain [127.0.0.1]) by mail.cs.rice.edu (Postfix) with ESMTP id BBA112C2A83; Thu, 5 Oct 2006 22:22:46 -0500 (CDT) X-Virus-Scanned: by amavis-2.4.0 at mail.cs.rice.edu Received: from mail.cs.rice.edu ([127.0.0.1]) by mail.cs.rice.edu (mail.cs.rice.edu [127.0.0.1]) (amavisd-new, port 10024) with LMTP id KrgvqQ0Y7g5T; Thu, 5 Oct 2006 22:22:46 -0500 (CDT) Received: from [192.168.1.100] (cpe-67-10-165-127.houston.res.rr.com [67.10.165.127]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.cs.rice.edu (Postfix) with ESMTP id 0DAC72C2A82; Thu, 5 Oct 2006 22:22:46 -0500 (CDT) Date: Thu, 5 Oct 2006 22:22:44 -0500 (CDT) From: Walid Taha X-X-Sender: taha@walid-tahas-computer.local To: William Neumann Cc: Erik de Castro Lopo , caml-list@inria.fr Subject: Re: [Caml-list] Memoization In-Reply-To: <3C306BC4-702A-451A-A44E-9659DC73FFE7@cs.unm.edu> Message-ID: References: <20060909103332.0397efea.mle+ocaml@mega-nerd.com> <3C306BC4-702A-451A-A44E-9659DC73FFE7@cs.unm.edu> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Miltered: at discorde with ID 4525CC07.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; taha:01 taha:01 memoization:01 memoization:01 ocaml:01 staging:01 pepm:01 monadic:01 combinator:01 wrappers:01 sml:01 ocaml:01 beginner's:01 bug:01 06.:98 We recently had to put together a generic account of memoization in a functional language (in our case OCaml) so that we can address a staging problem in a generic manner. Section 3 of http://www.cs.rice.edu/~taha/publications/conference/pepm06.pdf is a low-impact buildup to memoization as a monadic library. Walid. |(resending to include the mailing list) | |On Sep 8, 2006, at 6:33 PM, Erik de Castro Lopo wrote: | |> Unfortunately, the URL is dead. Does anybody have another link for |> that code or some other polymorphic memoizer? | |You may want to take a look at this paper by Bruce McAdam that uses a fix-point |combinator to create all sorts of wrappers for functions, including |memoization. The examples ore in SML, but translate pretty easily to OCaml. | |http://www.lfcs.inf.ed.ac.uk/reports/97/ECS-LFCS-97-375/ | | |William D. Neumann | |"I eat T-bone steaks, I lift barbell plates, I'm sweeter than a |German chocolate cake. I'm the reflection of perfection, the number |one selection. I'm the man of the hour, the man with the power, too |sweet to be sour. The ladies' pet, the men's regret, where what you |see is what you get, and what you don't see, is better yet." | | --Superstar Billy Graham | | | |_______________________________________________ |Caml-list mailing list. Subscription management: |http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list |Archives: http://caml.inria.fr |Beginner's list: http://groups.yahoo.com/group/ocaml_beginners |Bug reports: http://caml.inria.fr/bin/caml-bugs | |!DSPAM:4503307f144882042218820!