See this document in CiteSeerX!

How to Declare an Imperative (1995)  (Make Corrections)  (62 citations)
Philip Wadler
ACM Computing Surveys



  Home/Search   Context   Related

Links:   ACM   DBLP

 
View or download:
belllabs.com/cm/c...onadsdeclare.ps.gz
belllabs.com/who/...onadsdeclare.ps.gz
isabase.philol.msu...onadsdeclare.ps.gz
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  cs.chalmers.se/~rjmh/A...overview (more)
From:  belllabs.com/who/wadler...monads
Homepages:  P.Wadler  

Rate this article: (best)
  Comment on this article  
(Enter summary)

Abstract: How can we integrate interaction into a purely declarative language? This tutorial describes a solution to this problem based on a monad. The solution has been implemented in the functional language Haskell and the declarative language Escher. Comparisons are given to other approaches to interaction based on synchronous streams, continuations, linear logic, and side effects. (Update)

Cited by:   More
Unknown - (2000)   (Correct)
Functional Programming Languages for Verification.. - Leucker, Noll.. (2001)   (Correct)
A Logical Framework for the Specification of Transactions - Extended Version..   (Correct)

Active bibliography (related documents):   More   All
0.6:   Graphical Application and Visualization of Lazy Functional.. - Foubister (1995)   (Correct)
0.4:   An Operational Semantics for I/O in a Lazy Functional Language - Gordon (1993)   (Correct)
0.4:   Value Recursion in Monadic Computations - Erkok (2002)   (Correct)

Similar documents based on text:   More   All
0.1:   Functional Pearls: A Poor Man's Concurrency Monad - Claessen (1999)   (Correct)
0.1:   Monadic Parser Combinators - Hutton, Meijer (1996)   (Correct)
0.1:   Rational Mechanics and Natural Mathematics - Pratt (1995)   (Correct)

Related documents from co-citation:   More   All
16:   Monads for functional programming - Wadler - 1993
16:   The essence of functional programming - Wadler - 1992
12:   Curry: An Integrated Functional Logic Language (context) - Hanus - 1999

BibTeX entry:   (Update)

P. Wadler. How to declare an imperative (invited talk). In International Logic Programming Symposium, Portland, Oregon, December 1995. MIT Press. http://citeseer.ist.psu.edu/wadler95how.html   More

@article{ wadler97how,
    author = "Philip Wadler",
    title = "How to declare an imperative",
    journal = "ACM Computing Surveys",
    volume = "29",
    number = "3",
    pages = "240--263",
    year = "1997",
    url = "citeseer.ist.psu.edu/wadler95how.html" }
Citations (may not include all citations):
1074   The Definition of Standard ML (context) - Milner, Tofte et al. - 1997
1074   The Definition of Standard ML (context) - Milner, Tofte et al. - 1990
982   Theoretical Computer Science (context) - Girard, logic - 1987
562   Categories for the Working Mathematician (context) - Lane - 1971
419   A formulation of the simple theory of types (context) - Church - 1940  DBLP
369   Information and Computation (context) - Moggi, computation - 1991  DBLP
362   ML for the Working Programmer (context) - Paulson - 1991  ACM
333   Introduction to Functional Programming (context) - Bird, Wadler - 1987
293   The essence of functional programming - Wadler - 1992  ACM   DBLP
291   Computational lambda-calculus and monads - Moggi - 1989
291   Theoretical Computer Science (context) - Lafont, abstract - 1988  ACM
283   Theoretical Computer Science (context) - Plotkin, call-by-value et al. - 1975  ACM
254   Comprehending monads - Wadler - 1990  ACM   DBLP
244   Imperative functional programming - Jones, Wadler - 1993  ACM   DBLP
233   Computational interpretations of linear logic - Abramsky - 1993  ACM   DBLP
184   Linear types can change the world - Wadler - 1990
129   A system of constructor classes: overloading and implicit hi.. - Jones - 1993  DBLP
120   Monad transformers and modular interpreters - Liang, Hudak et al. - 1995  ACM   DBLP
101   Lazy functional state threads - Launchbury, Jones - 1994
87   Concurrent Haskell - Jones, Gordon et al. - 1996
86   A correspondence between ALGOL 60 and Church's lambda notati.. (context) - Landin - 1965
84   Consciousness Explained (context) - Dennett - 1991
69   Higher-order extensions to Prolog --- are they needed (context) - Warren - 1981
67   Representing monads - Filinski - 1994  ACM   DBLP
65   How to replace failure by a list of successes (context) - Wadler - 1985  ACM
62   How to declare an imperative - Wadler - 1995  ACM   DBLP
61   Conventional and uniqueness typing in graph rewrite systems - Barendsen, Smetsers - 1993  ACM   DBLP
61   Detecting global variables in denotational specifications (context) - Schmidt - 1985  ACM   DBLP
54   Building interpreters by composing monads - Steele - 1994  ACM   DBLP
48   Merging monads and folds for functional programming - Meijer, Jeuring - 1995  ACM   DBLP
45   Declarative programming in Escher - Lloyd - 1995  ACM
43   A taste of linear logic - Wadler - 1993  ACM   DBLP
41   The design of a pretty-printing library - Hughes - 1995  ACM   DBLP
38   Functional programming with overloading and higher-order pol.. - Jones - 1995  ACM   DBLP
38   and the lambda calculus (context) - Odersky, Rabin et al. - 1993
37   A generic account of continuation-passing styles - Hatcliff, Danvy - 1994  ACM   DBLP
32   Single-threaded polymorphic lambda calculus (context) - Guzman, Hudak - 1990  DBLP
30   Distinguished dissertations in computer science (context) - Gordon, programming et al. - 1993
28   Functional parsers - Fokker - 1995  ACM   DBLP
26   Science of Computer Programming (context) - Spivey, theory et al. - 1990
25   Higher-order functions considered unnecessary for higher-ord.. - Goguen - 1990  ACM
24   Lisp and Symbolic Computation (context) - Reynolds, of - 1993
23   A reflection on call-by-value - Sabry, Wadler - 1996  ACM   DBLP
23   Lazy imperative programming - Launchbury - 1993
22   Monadic State: Axiomatization and Type Safety - Launchbury, Sabry - 1997
21   A linear functional language (context) - Holmstrom - 1988
21   Combining monads - King, Wadler - 1992  ACM   DBLP
19   The ins and outs of Clean I/O - Achten, Plasmeijer - 1995  DBLP
16   Structuring depth-first search algorithms in Haskell - King, Launchbury - 1995  ACM   DBLP
15   Message-based functional operating systems (context) - Stoye - 1986  ACM   DBLP
15   Springer Verlag (context) - Barr, Wells et al. - 1985
14   the expressiveness of purely functional I/O systems - Hudak, Sundaresh - 1989
11   a non-strict purely-functional programming language (context) - Peterson, Hammond et al. - 1996
10   Lisp and Symbolic Computation (context) - Wadler, composable - 1994
8   a non-strict purely-functional programming language (context) - Hudak, Jones et al. - 1992
7   Graph algorithms with a functional flavour (context) - Launchbury - 1995
6   Rolling your own mutable ADT --- a connection between linear.. - Chen, Hudak - 1997
6   The Glasgow Haskell compiler: a retrospective (context) - Hall, Hammond et al. - 1992  DBLP
3   A brief walk through KAOS (context) - Cupitt - 1989
2   and Inter-language Calling for Functional Languages (context) - Perry - 1989
1   Experiences with Clean I/O (context) - Jones - 1995  DBLP
1   Available by ftp from ftp (context) - Jones, implementation - 1994
1   Research report YALE/DCS/RR (context) - Jones, Duponcheel et al. - 1993



The graph only includes citing articles where the year of publication is known.


Documents on the same site (http://www.cs.chalmers.se/~rjmh/AFP/overview.html):   More
The Design of a Pretty-printing Library - Hughes (1995)   (Correct)
Modular Domain Specific Languages and Tools - Hudak (1998)   (Correct)
Heap Profiling of Lazy Functional Programs - Runciman, Wakeling (1993)   (Correct)

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC