The Casper Domain-Specific Language (DSL) for writing smart contracts is a tool to help developers more easily and quickly write human-readable code. It is a series of macros designed around object-oriented programming (OOP) principles. The macros conceal much of the repetitive boilerplate code necessary for proper contract compilation, operating much like templates seen in other object-oriented languages.
However, if you are an experienced Rust developer, you may find that you want to forgo using the DSL as you start getting familiar with Casper development. For advanced use cases, the boilerplate code could very well become sub-optimal. Regardless, though, we recommend that you start with the DSL to see the typical workflow while you are getting familiar with the ecosystem.
Table of Contents