Blocks
A block has a type, an optional name label, and a body enclosed in{}:
task. The label is "build". The body contains one attribute.
Some blocks (like errand) take no label:
Attributes
An attribute assigns a value to a name:= signs is optional but common for readability.
Strings
Strings are enclosed in double quotes. You can use${} for expression interpolation:
Lists
Lists are written with square brackets. Items are separated by commas. A trailing comma is allowed:Comments
Single-line comments start with// or #. Block comments use /* */: