The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
New foundations for the geometry of interaction
Information and Computation
The geometry of interaction machine
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The optimal implementation of functional programming languages
The optimal implementation of functional programming languages
Turing Machines with Sublogarithmic Space
Turing Machines with Sublogarithmic Space
From Hilbert Spaces to Dilbert Spaces: Context Semantics Made Simple
FST TCS '02 Proceedings of the 22nd Conference Kanpur on Foundations of Software Technology and Theoretical Computer Science
Geometry of Interaction and linear combinatory algebras
Mathematical Structures in Computer Science
Neat function algebraic characterizations of logspace and linspace
Computational Complexity
Stratified Bounded Affine Logic for Logarithmic Space
LICS '07 Proceedings of the 22nd Annual IEEE Symposium on Logic in Computer Science
Attribute Grammars and Categorical Semantics
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part II
Light types for polynomial time computation in lambda calculus
Information and Computation
On traced monoidal closed categories
Mathematical Structures in Computer Science
Functorial boxes in string diagrams
CSL'06 Proceedings of the 20th international conference on Computer Science Logic
Some programming languages for LOGSPACE and PTIME
AMAST'06 Proceedings of the 11th international conference on Algebraic Methodology and Software Technology
Type inference for sublinear space functional programming
APLAS'10 Proceedings of the 8th Asian conference on Programming languages and systems
An Implicit Characterization of PSPACE
ACM Transactions on Computational Logic (TOCL)
Computation-by-Interaction with effects
APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
Hi-index | 0.00 |
We consider the problem of functional programming with data in external memory, in particular as it appears in sublinear space computation. Writing programs with sublinear space usage often requires one to use special implementation techniques for otherwise easy tasks, e.g. one cannot compose functions directly for lack of space for the intermediate result, but must instead compute and recompute small parts of the intermediate result on demand. In this paper, we study how the implementation of such techniques can be supported by functional programming languages. Our approach is based on modeling computation by interaction using the Int construction of Joyal, Street & Verity. We derive functional programming constructs from the structure obtained by applying the Int construction to a term model of a given functional language. The thus derived functional language is formulated by means of a type system inspired by Baillot & Terui's Dual Light Affine Logic. We assess its expressiveness by showing that it captures logspace.