A Functional Derivation of the Warren Abstract Machine

Based on Danvy et al.'s functional correspondence, we give a further example of gradual re finement of an interpreter into a known, low-level abstract machine underlying real-world compilers, by deriving an abstract model of the Warren Abstract Machine from a simple resolution-based Prolog inte...

Full description

Bibliographic Details
Main Authors: Pirog, M, Gibbons, J
Format: Journal article
Published: 2011
_version_ 1797070462176460800
author Pirog, M
Gibbons, J
author_facet Pirog, M
Gibbons, J
author_sort Pirog, M
collection OXFORD
description Based on Danvy et al.'s functional correspondence, we give a further example of gradual re finement of an interpreter into a known, low-level abstract machine underlying real-world compilers, by deriving an abstract model of the Warren Abstract Machine from a simple resolution-based Prolog interpreter. We show that other well-known functional programming techniques (namely, explicit laziness and semi-persistent data structures) can help to develop abstract machines without detailed examination of the semantics realised by the interpreter.
first_indexed 2024-03-06T22:39:11Z
format Journal article
id oxford-uuid:5aee9a95-00f4-49e5-bb23-a2d3ca7d628f
institution University of Oxford
last_indexed 2024-03-06T22:39:11Z
publishDate 2011
record_format dspace
spelling oxford-uuid:5aee9a95-00f4-49e5-bb23-a2d3ca7d628f2022-03-26T17:19:03ZA Functional Derivation of the Warren Abstract MachineJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:5aee9a95-00f4-49e5-bb23-a2d3ca7d628fDepartment of Computer Science2011Pirog, MGibbons, JBased on Danvy et al.'s functional correspondence, we give a further example of gradual re finement of an interpreter into a known, low-level abstract machine underlying real-world compilers, by deriving an abstract model of the Warren Abstract Machine from a simple resolution-based Prolog interpreter. We show that other well-known functional programming techniques (namely, explicit laziness and semi-persistent data structures) can help to develop abstract machines without detailed examination of the semantics realised by the interpreter.
spellingShingle Pirog, M
Gibbons, J
A Functional Derivation of the Warren Abstract Machine
title A Functional Derivation of the Warren Abstract Machine
title_full A Functional Derivation of the Warren Abstract Machine
title_fullStr A Functional Derivation of the Warren Abstract Machine
title_full_unstemmed A Functional Derivation of the Warren Abstract Machine
title_short A Functional Derivation of the Warren Abstract Machine
title_sort functional derivation of the warren abstract machine
work_keys_str_mv AT pirogm afunctionalderivationofthewarrenabstractmachine
AT gibbonsj afunctionalderivationofthewarrenabstractmachine
AT pirogm functionalderivationofthewarrenabstractmachine
AT gibbonsj functionalderivationofthewarrenabstractmachine