On the Effectiveness of Higher-Order Logic Programming in Language-Oriented Programming

被引:4
作者
Cimini, Matteo [1 ]
机构
[1] Univ Massachusetts Lowell, Lowell, MA 01854 USA
来源
FUNCTIONAL AND LOGIC PROGRAMMING, FLOPS 2020 | 2020年 / 12073卷
关键词
Higher-order logic programming; Language-oriented programming; Functional programming;
D O I
10.1007/978-3-030-59025-3_7
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In previous work we have presented lang-n-play, a functional language-oriented programming language with languages as first-class-citizens. Language definitions can be bound to variables, passed to and returned by functions, and can be modified at run-time before being used. lang-n-play programs are compiled and executed in the higher-order logic programming language.Prolog. In this paper, we describe our compilation methods, which highlight how the distinctive features of higher-order logic programming are a great fit in implementing a language-oriented programming language.
引用
收藏
页码:106 / 123
页数:18
相关论文
共 31 条
  • [1] Baelde D, 2014, J FORMALIZ REASON, V7, P1
  • [2] Bogdanas D, 2015, ACM SIGPLAN NOTICES, V50, P445, DOI [10.1145/2775051.2676982, 10.1145/2676726.2676982]
  • [3] Execution Framework of the GEMOC Studio (Tool Demo)
    Bousse, Erwan
    Degueule, Thomas
    Vojtisek, Didier
    Mayerhofer, Tanja
    Deantoni, Julien
    Combemale, Benoit
    [J]. PROCEEDINGS OF THE 2016 ACM SIGPLAN INTERNATIONAL CONFERENCE ON SOFTWARE LANGUAGE ENGINEERING (SLE'16), 2016, : 84 - 89
  • [4] Modeling Language Variability with Reusable Language Components
    Butting, Arvid
    Eikermann, Robert
    Kautz, Oliver
    Rumpe, Bernhard
    Wortmann, Andreas
    [J]. SPLC'18: PROCEEDINGS OF THE 22ND INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL 1, 2018, : 65 - 75
  • [5] Cimini M., 2018, Lang-n-play: a functional programming language with languages as first-class citizens
  • [6] Languages as First-Class Citizens (Vision Paper)
    Cimini, Matteo
    [J]. PROCEEDINGS OF THE 11TH ACM SIGPLAN INTERNATIONAL CONFERENCE ON SOFTWARE LANGUAGE ENGINEERING (SLE '18), 2018, : 65 - 69
  • [7] Concern-oriented language development (COLD): Fostering reuse in language engineering
    Combemale, Benoit
    Kienzle, Jorg
    Mussbacher, Gunter
    Barais, Olivier
    Bousse, Erwan
    Cazzola, Walter
    Collet, Philippe
    Degueule, Thomas
    Heinrich, Robert
    Jezequel, Jean-Marc
    Leduc, Manuel
    Mayerhofer, Tanja
    Mosser, Sebastien
    Schottle, Matthias
    Strittmatter, Misha
    Wortmann, Andreas
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2018, 54 : 139 - 155
  • [8] Dmitriev Sergey., 2004, LANGUAGE ORIENTED PR
  • [9] ELPI: Fast, Embeddable, λProlog Interpreter
    Dunchev, Cvetan
    Guidi, Ferruccio
    Coen, Claudio Sacerdoti
    Tassi, Enrico
    [J]. LOGIC FOR PROGRAMMING, ARTIFICIAL INTELLIGENCE, AND REASONING, (LPAR-20 2015), 2015, 9450 : 460 - 468
  • [10] Ellison C, 2012, POPL 12: PROCEEDINGS OF THE 39TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, P533