Title
Imperative abstractions for functional actions
Abstract
We elaborate our relational model of non-strict, imperative computations. The theory is extended to support infinite data structures. To facilitate their use in programs, we extend the programming language by concepts such as procedures, parameters, partial application, algebraic data types, pattern matching and list comprehensions. For each concept, we provide a relational semantics. Abstraction is further improved by programming patterns such as fold, unfold and divide-and-conquer. To support program reasoning, we prove laws such as fold–map fusion, otherwise known from functional programming languages. We give examples to show the use of our concepts in programs.
Year
DOI
Venue
2010
10.1016/j.jlap.2010.07.015
The Journal of Logic and Algebraic Programming
Keywords
Field
DocType
Fold,Higher-order procedures,Imperative programming,Infinite data structures,Lazy evaluation,Non-strictness,Program semantics,Relations,Unfold
Functional logic programming,Programming language,Functional programming,Programming paradigm,Computer science,Inductive programming,Imperative programming,Theoretical computer science,Algebraic data type,Reactive programming,Relational model
Journal
Volume
Issue
ISSN
79
8
1567-8326
Citations 
PageRank 
References 
2
0.37
15
Authors
1
Name
Order
Citations
PageRank
Walter Guttmann119616.53