Export Citations
- Sponsor:
- sigplan
It is our pleasure to welcome you to the 1st annual workshop on Functional Programming Concepts in Domain Specific Languages. This workshop intends to bring together developers and users of DSLs who are exploring, or are interested in exploring, the features of functional programming languages that can be utilized in their application domains, as well as how the inherent properties of their application domains affect how such features can be realized in practice. Further, we want to create an avenue for an immediate dialog on the new research and practical applications of rapidly evolving endeavors that may not currently be possible through the main conference venues. It is our hope that the success of this workshop will lead to an annual event or to a program track at ICFP or another conference.
We have an exciting program where our DSL application areas span design automation, quantum computer programming, synthetic biology, and network security. Further, we will explore the advantages and, maybe, disadvantages of applying functional programming methods for DSLs. First, we begin with a keynote address by Arvind, who will share his experience developing a DSL and his success in getting the Electronic Design Automation (EDA) community to adopt it. While having our papers accepted for publication is quite a success, getting a community to purchase our endeavors is quite a feat as well. Our 6 papers span a number of application domains and design challenges. Our first paper focuses on the design and composition of behavioral constructs for living organisms and the challenges to proving correctness of these programs. Our second paper focuses on the security of distributed systems by designing a language by which to express and communicate individual confidentiality and integrity policies. Our third paper focuses on programming constructs that match the quantum computation model (which differs significantly from the classical computation model) and a type system that enforces the physical constraints of quantum mechanics. Our fourth paper addresses the challenges of the compile-time and run-time integration of embedding a DSL in a functional programming language to take advantage of a more robust language system. Our fifth paper addresses the challenge of computing the resource requirements of quantum circuits by designing a language and a framework that transforms a circuit description into a resource calculation in different dimensions of interest. Our sixth paper focuses on an automatic, typed-based analysis that infers and checks the sensitivity annotations in functional programs to realize such end objectives as differential privacy.
Finally, we will conclude our workshop with a facilitated discussion. Here, we will explore such questions as: What are the merits and tradeoffs of using a functional programming style over imperative language style for DSLs? What are the common techniques and differences in applying DSLs across various application domains? How can we design DSLs to facilitate adoption by an application domain community?
We hope that you will find this program interesting and thought-provoking and that our workshop will provide you with a valuable opportunity to share ideas with other researchers and practitioners from institutions around the world.
Proceeding Downloads
Bluespec and Haskell
Bluespec is a commercial hardware design language based on the abstraction of Guarded Atomic Actions (GAAs). GAAs provide a level of modularity and composition that the standard FSM-based representation does not. At it's heart Bluespec can be looked at ...
Functional synthesis of genetic regulatory networks
As synthetic biologists improve their ability to engineer complex computations in living organisms, there is increasing interest in using programming languages to assist in the design and composition of biological constructs. In this paper, we argue ...
Encoding secure information flow with restricted delegation and revocation in Haskell
Distributed applications typically involve many components, each with unique security and privacy requirements. Such applications require fine-grained access control mechanisms that allow dynamic delegation and revocation of access rights. Embedding ...
QuaFL: a typed DSL for quantum programming
Quantum computers represent a novel kind of programmable hardware with properties and restrictions that are distinct from those of classical computers. We investigate how some existing abstractions and programming language features developed within the ...
Embrace, defend, extend: a methodology for embedding preexisting DSLs
Domain-specific languages offer programming abstractions that enable higher efficiency, productivity and portability specific to a given application domain. Domain-specific languages such as StreamIt have valuable auto-parallelizing code-generators, but ...
Abstract resource cost derivation for logical quantum circuit descriptions
Resources that are necessary to operate a quantum computer (such as qubits) have significant costs. Thus, there is interest in finding ways to determine these costs for both existing and novel quantum algorithms. Information about these costs (and how ...
Sensitivity analysis using type-based constraints
Function sensitivity --- how much the result of a function can change with respect to linear changes in the input --- is a key concept in many research areas. For instance, in differential privacy, one of the most common mechanisms for turning a (...
Index Terms
- Proceedings of the 1st annual workshop on Functional programming concepts in domain-specific languages
Recommendations
Acceptance Rates
Year | Submitted | Accepted | Rate |
---|---|---|---|
FPCDSL '13 | 7 | 5 | 71% |
Overall | 7 | 5 | 71% |