DSL

2020년 7월 3일 수정

DSL(Domain Specific Language), 직역하여 '영역 특정 언어' 정도로 해석이 가능한다. 그 이름처럼 특정 분야에서 쓰기 위해 특수하게 만들어진 스크립팅 혹은 설정용 언어이다.

도메인(Domain)의 한정에 제한이 없어서 여러 방법으로 구분할 수 있다. 예를 들어 공장 자동화를 위한 특수한 공장 관리 언어라던가도 생각할 수 있고, 가깝게는 RDBMS에서 질의(query)를 할 때 사용하는 SQL, 혹은 Dockerfile이나 Docker Compose에서 쓰는 스펙 명시용 언어도 DSL로 생각할 수 있다.

결과적으로 범용 언어에 비해 논리식을 표현하는 것에서 차이가 있을 수 있다. 하지만 이런 제약이 있어야 한다는 제한은 없다.