Functional pearl typed quote/antiquote or: Compile-time parsing

Haskell (Peyton Jones, 2003) is often used as a host language for embedding other languages. Typically, the abstract syntax of the guest language is defined by a collection of datatype declarations; parsers and pretty-printers convert between the concrete syntax and its abstract representation. A qu...

Full description

Bibliographic Details
Main Author: Hinze, R
Format: Journal article
Language:English
Published: 2011
_version_ 1797083770611826688
author Hinze, R
author_facet Hinze, R
author_sort Hinze, R
collection OXFORD
description Haskell (Peyton Jones, 2003) is often used as a host language for embedding other languages. Typically, the abstract syntax of the guest language is defined by a collection of datatype declarations; parsers and pretty-printers convert between the concrete syntax and its abstract representation. A quote/antiquote mechanism permits a tighter integration of the guest language into the host language by allowing one to use phrases in the guest language's concrete syntax. For a simple example, assume that the abstract syntax of the guest language is given by the following datatype of binary trees. © 2011 Cambridge University Press.
first_indexed 2024-03-07T01:46:07Z
format Journal article
id oxford-uuid:987c9bd2-8de7-4d0b-bf3c-ae66cc43a4f7
institution University of Oxford
language English
last_indexed 2024-03-07T01:46:07Z
publishDate 2011
record_format dspace
spelling oxford-uuid:987c9bd2-8de7-4d0b-bf3c-ae66cc43a4f72022-03-27T00:07:13ZFunctional pearl typed quote/antiquote or: Compile-time parsingJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:987c9bd2-8de7-4d0b-bf3c-ae66cc43a4f7EnglishSymplectic Elements at Oxford2011Hinze, RHaskell (Peyton Jones, 2003) is often used as a host language for embedding other languages. Typically, the abstract syntax of the guest language is defined by a collection of datatype declarations; parsers and pretty-printers convert between the concrete syntax and its abstract representation. A quote/antiquote mechanism permits a tighter integration of the guest language into the host language by allowing one to use phrases in the guest language's concrete syntax. For a simple example, assume that the abstract syntax of the guest language is given by the following datatype of binary trees. © 2011 Cambridge University Press.
spellingShingle Hinze, R
Functional pearl typed quote/antiquote or: Compile-time parsing
title Functional pearl typed quote/antiquote or: Compile-time parsing
title_full Functional pearl typed quote/antiquote or: Compile-time parsing
title_fullStr Functional pearl typed quote/antiquote or: Compile-time parsing
title_full_unstemmed Functional pearl typed quote/antiquote or: Compile-time parsing
title_short Functional pearl typed quote/antiquote or: Compile-time parsing
title_sort functional pearl typed quote antiquote or compile time parsing
work_keys_str_mv AT hinzer functionalpearltypedquoteantiquoteorcompiletimeparsing