Typed quote/antiquote or: Compile-time parsing

被引:0
|
作者
Hinze, Ralf [1 ]
机构
[1] Univ Oxford, Dept Comp Sci, Oxford OX1 3QD, England
关键词
D O I
10.1017/S0956796811000050
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:219 / 234
页数:16
相关论文
共 50 条
  • [1] Compile-Time Function Memoization
    Suresh, Arjun
    Rohou, Erven
    Seznec, Andre
    [J]. CC'17: PROCEEDINGS OF THE 26TH INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION, 2017, : 45 - 54
  • [2] COMPILE-TIME COPY ELIMINATION
    SCHNORF, P
    GANAPATHI, M
    HENNESSY, JL
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 1993, 23 (11): : 1175 - 1200
  • [3] Compile-Time Extensions to Hybrid ODEs
    Zeng, Yingfu
    Bartha, Ferenc
    Taha, Walid
    [J]. ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2017, (247): : 52 - 70
  • [4] Compile-time computation of polytime functions
    Covino, Emanuele
    Pani, Giovanni
    Scrimieri, Daniele
    [J]. JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2007, 13 (04) : 468 - 478
  • [5] A COMPILE-TIME DEADLOCK DETECTION PATTERN
    Korzycki, Michal
    [J]. COMPUTER SCIENCE-AGH, 2007, 8 : 85 - 92
  • [6] COMPILE-TIME TYPE-MATCHING
    HEXT, JB
    [J]. COMPUTER JOURNAL, 1967, 9 (04): : 365 - &
  • [7] Compile-time optimization of dynamic hardware reconfigurations
    Teich, J
    Fekete, SP
    Schepers, J
    [J]. INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS I-V, PROCEEDINGS, 1999, : 1097 - 1103
  • [8] Compile-time enforcement of dynamic security policies
    Eyers, David M.
    Srinivasan, Sriram
    Moody, Ken
    Bacon, Jean
    [J]. 2008 IEEE WORKSHOP ON POLICIES FOR DISTRIBUTED SYSTEMS AND NETWORKS, PROCEEDINGS, 2008, : 119 - 126
  • [9] Compile-time Reflection and Metaprogramming for Java']Java
    Miao, Weiyu
    Siek, Jeremy
    [J]. PEPM '14: PROCEEDINGS OF THE ACM SIGPLAN WORKSHOP ON PARTIAL EVALUATION AND PROGRAM MANIPULATION, 2014, : 27 - 37
  • [10] Compile-time and runtime analysis of active behaviors
    Baralis, E
    Ceri, S
    Paraboschi, S
    [J]. IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, 1998, 10 (03) : 353 - 370