• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Selective Memoization

Cached

  • Download as a PDF
  •  
  • Download as a PS

Download Links

  • [ttic.uchicago.edu]
  • [ttic.uchicago.edu]
  • [reports-archive.adm.cs.cmu.edu]
  • [reports-archive.adm.cs.cmu.edu]
  • [www.aladdin.cs.cmu.edu]
  • [pag.lcs.mit.edu]
  • [pag.csail.mit.edu]
  • [www-2.cs.cmu.edu]
  • [www-2.cs.cmu.edu]
  • [www.cs.cmu.edu]
  • [www.cs.cmu.edu]
  • [www-2.cs.cmu.edu]
  • [www.cs.cmu.edu]

  • Other Repositories/Bibliography

  • DBLP
  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Umut A. Acar , Guy E. Blelloch , Robert Harper
Citations:40 - 18 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Acar_selectivememoization,
    author = {Umut A. Acar and Guy E. Blelloch and Robert Harper},
    title = {Selective Memoization },
    year = {}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

We present a framework for applying memoization selectively. The framework provides programmer control over equality, space usage, and identification of precise dependences so that memoization can be applied according to the needs of an application. Two key properties of the framework are that it is efficient and yields programs whose performance can be analyzed using standard techniques. We describe the framework in the context of a functional language and an implementation as an SML library. The language is based on a modal type system and allows the programmer to express programs that reveal their true data dependences when executed. The SML implementation cannot support this modal type system statically, but instead employs run-time checks to ensure correct usage of primitives.

Citations

7321 Introduction to Algorithms - Cormen, Leiserson, et al. - 2001
2172 The Design and Analysis of Computer Algorithms - Aho, Hopcroft, et al. - 1974
1964 Dynamic Programming - Bellman - 1957
515 The Implementation of Functional Programming Languages - Jones - 1987
215 Data structures for mobile data - Basch, Guibas, et al. - 1997
182 A basis for a mathematical theory of computation - McCarthy - 1963
143 R.: A Judgmental Reconstruction of Modal Logic - Pfenning, Davies
83 Memo functions and machine learning - Michie - 1968
66 Tabulation techniques for recursive programs - Bird - 1980
60 Analysis and caching of dependencies - Abadi, Lampson, et al. - 1996
58 Incremental computation via function caching - Pugh, Teitelbaum - 1989
55 Structural cut elimination - Pfenning - 1995
52 Adaptive functional programming - Acar, Blelloch, et al. - 2002
50 Lazy memo-functions - Hughes - 1985
48 Dynamic graph algorithms - Eppstein, Galil, et al. - 1996
46 Vectorized garbage collection - Appel, Bendiksen - 1989
42 Static caching for incremental computation - Liu, Stoller, et al. - 1998
39 Caching function calls using precise dependencies - Heydon, Levin, et al. - 2000
38 Systematic Derivation of Incremental Programs - Liu, Teitelbaum - 1995
37 Incremental evaluation for attribute grammars with unrestricted movement between tree modifications - Reps - 1986
31 Anatomy of LISP - Allen - 1978
31 Natural deduction for intuitionistic non-commutative linear logic - Polakow, Pfenning - 1999
30 Monocopy and associative algorithms in extended Lisp - Goto - 1974
26 D.: Dynamic programming via static incrementalization - Liu, Stoller - 2003
25 Eliminating redundant recursive calls - Cohen - 1983
24 The Vesta Approach to Software Configuration Management - Heydon, Levin, et al. - 2001
24 memo” functions and machine learning. Nature - Michie - 1968
21 Incremental reduction in the lambda calculus - Field, Teitelbaum - 1990
18 Techniques for automatic memoization with applications to context-free parsing - Norvig - 1991
14 Specification and Transformation of Programs—a Formal Approach to Software Development - Partsch - 1990
12 Incremental computation as a programming abstraction - Hoover - 1992
10 Incremental computation as a programming abstraction - Alphonse - 1992
10 The wizard of TILT: Efficient, convenient and abstract type representations - Murphy - 2002
10 Using cached functions and constructors for incremental attribute evaluation - Pennings, Swierstra, et al. - 1992
10 An example of hierarchical design and proof - Spitzen, Levitt, et al. - 1978
9 Generating Incremental Attribute Evaluators - Pennings - 1994
9 Incremental compilation via partial evaluation - Sundaresh, Hudak - 1991
8 Automating program speedup by deciding what to cache - Mostov, Cohen - 1985
8 An Improved Replacement Strategy for Function Caching - Pugh - 1988
4 Hashing lemmas on time complexities with applications to formula manipulation - Goto, Kanada - 1976
3 Elimination of recursive calls using a small table of randomly selected function values - Hilden - 1976
3 Using automatic memoization as a software engineering tool in realworld ai systems - Mayfield, Finin, et al. - 1995
2 Improving software performance with automatic memoization - Hall, McName - 1997
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University