Solving the Expression Problem in C++, à la LMS

Hossein Haeri, Paul Keir

Research output: Chapter in Book/Report/Conference proceedingConference contribution

31 Downloads (Pure)

Abstract

We give a C++ solution to the Expression Problem that takes a components-for-cases approach. Our solution is a C++ transliteration of how Lightweight Modular Staging solves the Expression Problem. It, furthermore, gives a C++ encoding to object algebras and object algebra interfaces. We use our latter encoding by tying its recursive knot as in Datatypes à la Carte.
Original languageEnglish
Title of host publicationTheoretical Aspects of Computing – ICTAC 2019
Subtitle of host publicationProceedings of the 16th International Colloquium on Theoretical Aspects of Computing A
EditorsRobert Hierons, Mohamed Mosbah
PublisherSpringer International Publishing AG
Pages353-371
Number of pages19
Volume11884
Edition1
ISBN (Electronic)9783030325053
ISBN (Print)9783030325046
DOIs
Publication statusPublished - 7 Dec 2019
Event16th International Colloquium on Theoretical Aspects of Computing - AlHambra Thalasso Hotel, Hammamet, Tunisia
Duration: 31 Oct 20194 Nov 2019
http://www.redcad.org/events/ictac2019/

Publication series

NameLecture Notes in Computer Science
PublisherSpringer International Publishing
Volume11884
ISSN (Electronic)0302-9743

Conference

Conference16th International Colloquium on Theoretical Aspects of Computing
Abbreviated titleICTAC 2019
CountryTunisia
CityHammamet
Period31/10/194/11/19
Internet address

Fingerprint

C++
Encoding
Algebra
Knot
Object

Keywords

  • Functional Programming
  • Programming Languages
  • Expression Problem
  • Components-for-Cases
  • Lightweight Modular Staging
  • Scala
  • C++

Cite this

Haeri, H., & Keir, P. (2019). Solving the Expression Problem in C++, à la LMS. In R. Hierons, & M. Mosbah (Eds.), Theoretical Aspects of Computing – ICTAC 2019: Proceedings of the 16th International Colloquium on Theoretical Aspects of Computing A (1 ed., Vol. 11884, pp. 353-371). (Lecture Notes in Computer Science; Vol. 11884 ). Springer International Publishing AG. https://doi.org/10.1007/978-3-030-32505-3_20
Haeri, Hossein ; Keir, Paul. / Solving the Expression Problem in C++, à la LMS. Theoretical Aspects of Computing – ICTAC 2019: Proceedings of the 16th International Colloquium on Theoretical Aspects of Computing A. editor / Robert Hierons ; Mohamed Mosbah. Vol. 11884 1. ed. Springer International Publishing AG, 2019. pp. 353-371 (Lecture Notes in Computer Science).
@inproceedings{f7007ed737324c9eacccba31884f0f04,
title = "Solving the Expression Problem in C++, à la LMS",
abstract = "We give a C++ solution to the Expression Problem that takes a components-for-cases approach. Our solution is a C++ transliteration of how Lightweight Modular Staging solves the Expression Problem. It, furthermore, gives a C++ encoding to object algebras and object algebra interfaces. We use our latter encoding by tying its recursive knot as in Datatypes à la Carte.",
keywords = "Functional Programming, Programming Languages, Expression Problem, Components-for-Cases, Lightweight Modular Staging, Scala, C++",
author = "Hossein Haeri and Paul Keir",
year = "2019",
month = "12",
day = "7",
doi = "10.1007/978-3-030-32505-3_20",
language = "English",
isbn = "9783030325046",
volume = "11884",
series = "Lecture Notes in Computer Science",
publisher = "Springer International Publishing AG",
pages = "353--371",
editor = "Robert Hierons and Mohamed Mosbah",
booktitle = "Theoretical Aspects of Computing – ICTAC 2019",
address = "Switzerland",
edition = "1",

}

Haeri, H & Keir, P 2019, Solving the Expression Problem in C++, à la LMS. in R Hierons & M Mosbah (eds), Theoretical Aspects of Computing – ICTAC 2019: Proceedings of the 16th International Colloquium on Theoretical Aspects of Computing A. 1 edn, vol. 11884, Lecture Notes in Computer Science, vol. 11884 , Springer International Publishing AG, pp. 353-371, 16th International Colloquium on Theoretical Aspects of Computing, Hammamet, Tunisia, 31/10/19. https://doi.org/10.1007/978-3-030-32505-3_20

Solving the Expression Problem in C++, à la LMS. / Haeri, Hossein; Keir, Paul.

Theoretical Aspects of Computing – ICTAC 2019: Proceedings of the 16th International Colloquium on Theoretical Aspects of Computing A. ed. / Robert Hierons; Mohamed Mosbah. Vol. 11884 1. ed. Springer International Publishing AG, 2019. p. 353-371 (Lecture Notes in Computer Science; Vol. 11884 ).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

TY - GEN

T1 - Solving the Expression Problem in C++, à la LMS

AU - Haeri, Hossein

AU - Keir, Paul

PY - 2019/12/7

Y1 - 2019/12/7

N2 - We give a C++ solution to the Expression Problem that takes a components-for-cases approach. Our solution is a C++ transliteration of how Lightweight Modular Staging solves the Expression Problem. It, furthermore, gives a C++ encoding to object algebras and object algebra interfaces. We use our latter encoding by tying its recursive knot as in Datatypes à la Carte.

AB - We give a C++ solution to the Expression Problem that takes a components-for-cases approach. Our solution is a C++ transliteration of how Lightweight Modular Staging solves the Expression Problem. It, furthermore, gives a C++ encoding to object algebras and object algebra interfaces. We use our latter encoding by tying its recursive knot as in Datatypes à la Carte.

KW - Functional Programming

KW - Programming Languages

KW - Expression Problem

KW - Components-for-Cases

KW - Lightweight Modular Staging

KW - Scala

KW - C++

U2 - 10.1007/978-3-030-32505-3_20

DO - 10.1007/978-3-030-32505-3_20

M3 - Conference contribution

SN - 9783030325046

VL - 11884

T3 - Lecture Notes in Computer Science

SP - 353

EP - 371

BT - Theoretical Aspects of Computing – ICTAC 2019

A2 - Hierons, Robert

A2 - Mosbah, Mohamed

PB - Springer International Publishing AG

ER -

Haeri H, Keir P. Solving the Expression Problem in C++, à la LMS. In Hierons R, Mosbah M, editors, Theoretical Aspects of Computing – ICTAC 2019: Proceedings of the 16th International Colloquium on Theoretical Aspects of Computing A. 1 ed. Vol. 11884. Springer International Publishing AG. 2019. p. 353-371. (Lecture Notes in Computer Science). https://doi.org/10.1007/978-3-030-32505-3_20