English
Related papers

Related papers: Implementing Explicit and Finding Implicit Sharing…

200 papers

Context: Embedded Domain-Specific Languages (EDSLs) are a common and widely used approach to DSLs in various languages, including Haskell and Scala. There are two main implementation techniques for EDSLs: shallow embeddings and deep…

Programming Languages · Computer Science 2019-02-05 Weixin Zhang , Bruno Oliveira

When creating a new domain-specific language (DSL) it is common to embed it as a part of a flexible host language, rather than creating it entirely from scratch. The semantics of an embedded DSL (EDSL) is either given directly as a set of…

Programming Languages · Computer Science 2016-12-06 Piotr Danilewski , Philipp Slusallek

Domain-specific languages are becoming increasingly important. Almost every application touches multiple domains. But how to define, use, and combine multiple DSLs within the same application? The most common approach is to split the…

Programming Languages · Computer Science 2016-12-13 Piotr Danilewski , Philipp Slusallek

Domain-specific languages (DSLs) are touted as both easy to embed in programs and easy to optimize. Yet these goals are often in tension. Embedded or internal DSLs fit naturally with a host language, while inheriting the host's performance…

Programming Languages · Computer Science 2021-07-16 Rajan Walia , Chung-chieh Shan , Sam Tobin-Hochstadt

Domain Specific Languages (DSLs) increase programmer productivity and provide high performance. Their targeted abstractions allow scientists to express problems at a high level, providing rich details that optimizing compilers can exploit…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-10 George Bisbas , Anton Lydike , Emilien Bauer , Nick Brown , Mathieu Fehr , Lawrence Mitchell , Gabriel Rodriguez-Canal , Maurice Jamieson , Paul H. J. Kelly , Michel Steuwer , Tobias Grosser

The tensor notation used in several areas of mathematics is a useful one, but it is not widely available to the functional programming community. In a practical sense, the (embedded) domain-specific languages (DSLs) that are currently in…

Programming Languages · Computer Science 2025-01-22 Jean-Philippe Bernardy , Patrik Jansson

Haskell is a popular choice for hosting deeply embedded languages. A recurring challenge for these embeddings is how to seamlessly integrate user defined algebraic data types. In particular, one important, convenient, and expressive feature…

Programming Languages · Computer Science 2022-08-01 Trevor L. McDonell , Joshua D. Meredith , Gabriele Keller

Hardware aliasing occurs when the same logical address sporadically accesses different physical memory locations and is a problem encountered by systems programmers (the opposite, software aliasing, when different addresses access the same…

Cryptography and Security · Computer Science 2019-01-31 Peter T. Breuer

A domain specific language (DSL) abstracts from implementation details and is aligned with the way domain experts reason about a software component. The development of DSLs is usually centered around a grammar and transformations that…

Software Engineering · Computer Science 2015-11-26 Sarmen Keshishzadeh , Arjan J. Mooij , Jozef Hooman

In recent years, Deep Learning (DL) has found great success in domains such as multimedia understanding. However, the complex nature of multimedia data makes it difficult to develop DL-based software. The state-of-the art tools, such as…

Programming Languages · Computer Science 2017-01-10 Tian Zhao , Xiaobing Huang , Yu Cao

A domain specific language (DSL) abstracts from implementation details and is aligned with the way domain experts reason about a software component. The development of DSLs is usually centered around a grammar and transformations that…

Software Engineering · Computer Science 2016-03-30 Sarmen Keshishzadeh , Arjan J. Mooij , Jozef Hooman

Since the early days of the Web, web application developers have aspired to develop much of their applications declaratively. However, one aspect of the application, namely its business-logic is constantly left imperative. In this work we…

Programming Languages · Computer Science 2017-03-02 David H. Lorenz , Boaz Rosenan

Reuse is a key technique for a more efficient development and ensures the quality of the results. In object technology explicit encapsulation, interfaces, and inheritance are well known principles for independent development that enable…

Software Engineering · Computer Science 2014-09-24 Holger Krahn , Bernhard Rumpe , Stefan Völkel

This paper addresses the problem of specifying and parsing the syntax of domain-specific languages (DSLs) in a modular, user-friendly way. That is, we want to enable the design of composable DSLs that combine the natural syntax of external…

Programming Languages · Computer Science 2012-01-04 Erik Silkensen , Jeremy G. Siek

Domain-specific languages raise the level of abstraction in software development. While it is evident that programmers can more easily reason about very high-level programs, the same holds for compilers only if the compiler has an accurate…

Programming Languages · Computer Science 2011-09-06 Tiark Rompf , Arvind K. Sujeeth , HyoukJoong Lee , Kevin J. Brown , Hassan Chafi , Martin Odersky , Kunle Olukotun

In this paper, we present a framework to generate compilers for embedded domain-specific languages (EDSLs). This framework provides facilities to automatically generate the boilerplate code required for building DSL compilers on top of…

Programming Languages · Computer Science 2018-08-07 Amir Shaikhha , Vojin Jovanovic , Christoph Koch

Domain-specific languages (DSLs) are routinely created to simplify difficult or specialized programming tasks. They expose useful abstractions and design patterns in the form of language constructs, provide static semantics to eagerly…

Programming Languages · Computer Science 2020-02-19 Ethan K. Jackson

We present an embedded DSL to support adaptation-based programming (ABP) in Haskell. ABP is an abstract model for defining adaptive values, called adaptives, which adapt in response to some associated feedback. We show how our design…

Programming Languages · Computer Science 2011-09-06 Tim Bauer , Martin Erwig , Alan Fern , Jervis Pinto

We propose two operations to prevent sharing in Haskell that do not require modifying the data generating code, demonstrate their use and usefulness, and compare them to other approaches to preventing sharing. Our claims are supported by a…

Programming Languages · Computer Science 2012-07-10 Joachim Breitner

To keep a DSL clean, readable and reusable in different contexts, it is useful to define a separate tagging language. A tag model logically adds information to the tagged DSL model while technically keeping the artifacts separated. Using a…

Software Engineering · Computer Science 2016-06-17 Timo Greifenberg , Markus Look , Sebastian Roidl , Bernhard Rumpe
‹ Prev 1 2 3 10 Next ›