Computation by interaction for space-bounded functional programming

When programming with sublinear space constraints one often needs to use special implementation techniques even for simple tasks, such as function composition. In this paper, we study how such implementation techniques can be supported in a functional programming language. Our approach is based on m...

Full description

Saved in:
Bibliographic Details
Published in:Information and computation Vol. 248; pp. 150 - 194
Main Authors: Dal Lago, Ugo, Schöpp, Ulrich
Format: Journal Article
Language:English
Published: Elsevier Inc 01.06.2016
Elsevier
Subjects:
ISSN:0890-5401, 1090-2651
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:When programming with sublinear space constraints one often needs to use special implementation techniques even for simple tasks, such as function composition. In this paper, we study how such implementation techniques can be supported in a functional programming language. Our approach is based on modelling computation by interaction using the Int construction of Joyal, Street & Verity. We apply this construction to a term model of a first-order programming language and use the resulting structure to derive the functional programming language intml. Intml can be understood as a programming language simplification of Stratified Bounded Affine Logic. We formulate intml by means of a type system inspired by Baillot & Terui's Dual Light Affine Logic. We show that it captures the complexity classes flogspace and nflogspace. We illustrate its expressiveness by showing how typical graph algorithms, such a test for acyclicity in undirected graphs, can be represented.
ISSN:0890-5401
1090-2651
DOI:10.1016/j.ic.2015.04.006