Implementing Closed Domain-Specific Languages

  • Authors:
  • Richard B. Kieburtz

  • Affiliations:
  • -

  • Venue:
  • SAIG '00 Proceedings of the International Workshop on Semantics, Applications, and Implementation of Program Generation
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

A closed domain-specific language (DSL) is a stand-alone, declarative language designed to provide powerful and flexible software solutions specialized to a particular application domain. The users of a closed DSL are expected to be engineers or designers expert in the theory and techniques of their application domain, but who may be naive as programmers and who may not have the expertise, time, or inclination to design their own software. A good DSL will capture both the nomenclature and the semantics of the application domain. We contrast closed DSL's with open DSL's, which are also useful, but for a different community of users. An open DSL denotes crucial abstractions of an application domain directly in the notation of a wide-spectrum programming language, possibly enriched with syntactic extensions. It supports the semantics of the application domain through a specialized library of combinators, usually written in the host language, although they may also be provided by linkage to a foreign-language library.