License: Creative Commons Attribution 3.0 Unported license (CC-BY 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/DARTS.6.2.2
URN: urn:nbn:de:0030-drops-131995
URL: https://drops.dagstuhl.de/opus/volltexte/2020/13199/
Go back to Dagstuhl Artifacts Series


de Muijnck-Hughes, Jan ; Brady, Edwin ; Vanderbauwhede, Wim

A Framework for Resource Dependent EDSLs in a Dependently Typed Language (Artifact)

pdf-format:
DARTS-6-2-2.pdf (0.4 MB)
artifact-format:
DARTS-6-2-2-artifact-9a75e4a5804bee0be7edfcf152ad8f4c.tar.gz (218 MB)


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.

BibTeX - Entry

@Article{demuijnckhughes_et_al:DARTS:2020:13199,
  author =	{Jan de Muijnck-Hughes and Edwin Brady and Wim Vanderbauwhede},
  title =	{{A Framework for Resource Dependent EDSLs in a Dependently Typed Language (Artifact)}},
  pages =	{2:1--2:3},
  journal =	{Dagstuhl Artifacts Series},
  ISSN =	{2509-8195},
  year =	{2020},
  volume =	{6},
  number =	{2},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/opus/volltexte/2020/13199},
  URN =		{urn:nbn:de:0030-drops-131995},
  doi =		{10.4230/DARTS.6.2.2},
  annote =	{Keywords: Dependent Types, Algebraic Effect Handlers, Domain-Specific Languages, Embedded Domain Specific Languages, Idris, Substructural Type-Systems}
}

Keywords: Dependent Types, Algebraic Effect Handlers, Domain-Specific Languages, Embedded Domain Specific Languages, Idris, Substructural Type-Systems
Collection: DARTS, Volume 6, Issue 2, Special Issue of the 34th European Conference on Object-Oriented Programming (ECOOP 2020)
Related Scholarly Article: https://doi.org/10.4230/LIPIcs.ECOOP.2020.20
Issue Date: 2020
Date of publication: 06.11.2020


DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI