hh.sePublikationer
Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Tagless Staged Interpreters for Typed Languages
OGI School of Science & Engineering, Oregon Health & Science University, Hillsboro, Oregon, USA.
Computer Science Department, Rice University, Houston, TX, USA.
OGI School of Science & Engineering, Oregon Health & Science University, Portland, Oregon, USA.
2002 (Engelska)Ingår i: ICFP '02: Proceedings of the Seventh ACM SIGPLAN International Conference on Functional Programming, New York, NY: ACM Press, 2002, Vol. 37, s. 218-229Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Multi-stage programming languages provide a convenient notation for explicitly staging programs. Staging a definitional interpreter for a domain specific language is one way of deriving an implementation that is both readable and efficient. In an untyped setting, staging an interpreter "removes a complete layer of interpretive overhead", just like partial evaluation. In a typed setting however, Hindley-Milner type systems do not allow us to exploit typing information in the language being interpreted. In practice, this can mean a slowdown cost by a factor of three or more. Previously, both type specialization and tag elimination were applied to this problem. In this paper we propose an alternative approach, namely, expressing the definitional interpreter in a dependently typed programming language. We report on our experience with the issues that arise in writing such an interpreter and in designing such a language. To demonstrate the soundness of combining staging and dependent types in a general sense, we formalize our language (called Meta-D) and prove its type safety. To formalize Meta-D, we extend Shao, Saha, Trifonov and Papaspyrou's λH language to a multilevel setting. Building on λH allows us to demonstrate type safety in a setting where the type language contains all the calculus of inductive constructions, but without having to repeat the work needed for establishing the soundness of that system.

Ort, förlag, år, upplaga, sidor
New York, NY: ACM Press, 2002. Vol. 37, s. 218-229
Serie
SIGPLAN notices, ISSN 0362-1340 ; 9
Nyckelord [en]
Multi-stage programming, definitional interpreters, calculus of constructions, domain-specific languages
Nationell ämneskategori
Datorsystem
Identifikatorer
URN: urn:nbn:se:hh:diva-20981DOI: 10.1145/583852.581499ISI: 000179019100022Scopus ID: 2-s2.0-0036949280Libris ID: 12438579ISBN: 1-58113-487-8 OAI: oai:DiVA.org:hh-20981DiVA, id: diva2:588280
Konferens
ICFP'02 – 7th International Conference on Functional Programming, Pittsburgh, PA, United States, 4-6 October, 2002
Anmärkning

E. P. supported by NSF CCR-0098126. W. T. supported by NSF ITR-0113569. (This work was done while the authors was at Yale University.) T. S. supported by NSF CCR-0098126.

Tillgänglig från: 2013-01-15 Skapad: 2013-01-14 Senast uppdaterad: 2018-03-22Bibliografiskt granskad

Open Access i DiVA

Fulltext saknas i DiVA

Övriga länkar

Förlagets fulltextScopus

Personposter BETA

Taha, Walid

Sök vidare i DiVA

Av författaren/redaktören
Taha, Walid
Datorsystem

Sök vidare utanför DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetricpoäng

doi
isbn
urn-nbn
Totalt: 123 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf