Writing Daml¶
Daml is a smart contract language designed to build composable applications on the Daml Ledger Model.
The Writing Daml section will teach you how to write Daml applications that run on any Daml Ledger implementation, including key language features, how they relate to the Daml Ledger Model and how to use Daml’s developer tools. It also covers the structure of a Daml Ledger as it pertains to designing your application.
You can find the Daml code for the example application and features in each section here or download it using the Daml assistant. For example, to load the sources for section 1 into a folder called intro1
, run daml new intro1 --template daml-intro-1
.
To run the examples, you will first need to install the Daml SDK.
- An introduction to Daml
- Language reference docs
- The standard library
- Prelude
- DA.Action
- DA.Action.State
- DA.Action.State.Class
- DA.Assert
- DA.Bifunctor
- DA.BigNumeric
- DA.Date
- DA.Either
- DA.Exception
- DA.Foldable
- DA.Functor
- DA.List
- DA.List.BuiltinOrder
- DA.List.Total
- DA.Logic
- DA.Map
- DA.Math
- DA.Monoid
- DA.NonEmpty
- DA.NonEmpty.Types
- DA.Numeric
- DA.Optional
- DA.Record
- DA.Semigroup
- DA.Set
- DA.Stack
- DA.Text
- DA.TextMap
- DA.Time
- DA.Traversable
- DA.Tuple
- DA.Validation
- Good design patterns