[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Memoization as alternative to mutation



See Umut Acar's work for major recent advances on the topic of memoization
and its uses:

http://www-2.cs.cmu.edu/~umut/research/

-- emery

--
Emery Berger
Assistant Professor
Dept. of Computer Science
University of Massachusetts, Amherst
www.cs.umass.edu/~emery

> -----Original Message-----
> From: owner-ll1-discuss@ai.mit.edu [mailto:owner-ll1-discuss@ai.mit.edu]
> On Behalf Of Michael St. Hippolyte
> Sent: Thursday, February 12, 2004 11:16 AM
> To: ll1-discuss@ai.mit.edu
> Subject: Memoization as alternative to mutation
> 
> Hi all,
> 
> I'm curious as to what is the language community's general feeling towards
> memoization and caching as a substitute for mutation.  I'm less concerned
> with
> labels (i.e. whether or not memoization counts as "pure" FP) than with
> usefulness.  Has memoization proven to be a useful way to implement things
> like
> sorting algorithms, parsers, design patterns, etc?
> 
> I ask because after playing around with a very simple memoization approach
> for
> the last few weeks I've been amazed and intrigued at what can be done with
> it.
>   With memoization, you no longer think of state as information in a
> memory
> slot somewhere.  Rather, state becomes a dynamic property of lexical
> scopes.
> It's the ideal complement to lazy evaluation -- lazy unevaluation you
> might
> call it.  To me it seems both more general and more powerful than
> mutation.  Is
> this a shared view?  Or is memoization regarded more as just mutation in
> disguise?
> 
> Thanks in advance.
> 
> Michael St. Hippolyte
> http://www.bentodev.org