eDSL concepts

eDSL stands for embedded Domain Specific Language.

What it means can be explained by analyzing the definition:

  • Language explains that is a programming language we are talking about.
  • Domain Specific explains that the language is meant for a specific set of tasks. The "Domain", or specific purpose of plu-ts is the creation of Cardano smart contracts.
  • embedded means that it is a language inside another language. While plu-ts is a language on its own, it is built inside of the Typescript language (which is called the host language).

Key Idea:

When writing plu-ts code it is important to distinguish what parts of the code are native to Typescript and what parts are plu-ts.

Since Typescript is the host language, Typescript will be our starting point for learning about plu-ts.