Browse Definitions :
Definition

domain specific language (DSL)

Contributor(s): Cameron McKenzie

A domain specific language (DSL) is a programming language that is developed to meet a specific need.  In this sense, a domain is a narrow area of interest.

A DSL may be developed to meet the needs of a particular platform, system, toolset, software problem, industry, or business challenge that cannot be effectively addressed by using mainstream languages. Examples of commonly used DSLs include cascading style sheets (CSS), Ant and SQL. The human-readable code that many DSLs employ can also help improve collaboration between programmers and other stakeholders. 

A DSL can be contrasted with a general purpose language, such as C#, which is designed to address a broad range of needs across the software development landscape. In many cases, a subset of a general purpose language can be developed and implemented as a domain specific language to address a particular problem. Ruby (particularly Ruby on Rails) and Scala are examples of languages that lend themselves to the development of these internal DSLs. For example, Scala might be used to create a DSL for highly complex domains such as trading exchanges in the energy industry. Most software projects will incorporate a general language and several peripheral DSLs to add required functionality for various domains within the system.

 

This was last updated in September 2014

Continue Reading About domain specific language (DSL)

Join the conversation

1 comment

Send me notifications when other members comment.

Please create a username to comment.

Amazing.
Cancel

-ADS BY GOOGLE

File Extensions and File Formats

Powered by:

SearchCompliance

  • risk management

    Risk management is the process of identifying, assessing and controlling threats to an organization's capital and earnings.

  • compliance as a service (CaaS)

    Compliance as a Service (CaaS) is a cloud service service level agreement (SLA) that specified how a managed service provider (...

  • data protection impact assessment (DPIA)

    A data protection impact assessment (DPIA) is a process designed to help organizations determine how data processing systems, ...

SearchSecurity

  • cybersecurity insurance (cybersecurity liability insurance)

    Cybersecurity insurance, also called cyber liability insurance or cyber insurance, is a contract that an entity can purchase to ...

  • phishing

    Phishing is a form of fraud in which an attacker masquerades as a reputable entity or person in email or other communication ...

  • cybercrime

    Cybercrime is any criminal activity that involves a computer, networked device or a network.

SearchHealthIT

SearchDisasterRecovery

  • business continuity plan (BCP)

    A business continuity plan (BCP) is a document that consists of the critical information an organization needs to continue ...

  • disaster recovery team

    A disaster recovery team is a group of individuals focused on planning, implementing, maintaining, auditing and testing an ...

  • cloud insurance

    Cloud insurance is any type of financial or data protection obtained by a cloud service provider. 

SearchStorage

  • NVMe over Fabrics (NVMe-oF)

    NVMe over Fabrics, also known as NVMe-oF and non-volatile memory express over fabrics, is a protocol specification designed to ...

  • logical unit number (LUN)

    A logical unit number (LUN) is a unique identifier for designating an individual or collection of physical or virtual storage ...

  • CIFS (Common Internet File System)

    CIFS (Common Internet File System) is a protocol that gained popularity around the year 2000, as vendors worked to establish an ...

Close