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...
Main Author: | |
---|---|
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 |