A framework for resource dependent EDSLs in a dependently typed language

Jan de Muijnck-Hughes, Edwin Brady, Wim Vanderbauwhede

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

15 Downloads (Pure)

Abstract

Idris’ Effects library demonstrates how to embed resource dependent algebraic effect handlers into a dependently typed host language, providing run-time and compile-time based reasoning on type-level resources. Building upon this work, Resources is a framework for realising Embedded Domain Specific Languages (EDSLs) with type systems that contain domain specific substructural properties. Differing from Effects, Resources allows a language’s substructural properties to be encoded within type-level resources that are associated with language variables. Such an association allows for multiple effect instances to be reasoned about autonomically and without explicit type-level declaration. Type-level predicates are used as proof that the language’s substructural properties hold. Several exemplar EDSLs are presented that illustrates our framework’s operation and how dependent types provide correctness-by-construction guarantees that substructural properties of written programs hold.

Original languageEnglish
Title of host publication34th European Conference on Object-Oriented Programming, ECOOP 2020
EditorsRobert Hirschfeld, Tobias Pape
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Number of pages31
Volume166
ISBN (Electronic)9783959771542
DOIs
Publication statusPublished - 6 Nov 2020
Event34th European Conference on Object-Oriented Programming, ECOOP 2020 - Virtual, Berlin, Germany
Duration: 15 Nov 202017 Nov 2020

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume166
ISSN (Print)1868-8969

Conference

Conference34th European Conference on Object-Oriented Programming, ECOOP 2020
Country/TerritoryGermany
CityVirtual, Berlin
Period15/11/2017/11/20

Funding

Funding This work was funded by EPSRC projects: Border Patrol: Improving Smart Device Security through Type-Aware Systems Design (EP/N028201/1); and Type-Driven Verification of Communicating Systems – EP/N024222/1.

Keywords

  • algebraic effect handlers
  • dependent types
  • domain-specific languages
  • embedded domain specific languages
  • Idris
  • substructural type-systems

Fingerprint

Dive into the research topics of 'A framework for resource dependent EDSLs in a dependently typed language'. Together they form a unique fingerprint.

Cite this