Pkl
Pkl is a typed configuration and data language by Apple. From Pkl's User Manual:
What Pkl is for
Pkl allows developers to express structured configurations in a concise and typed dialect (that's Pkl), which can be rendered into things like JSON, YAML, TOML, and more.
Pkl can also generate code in various languages to interface with these definitions.
Why Elide supports Pkl
Have you ever gotten totally lost writing Kubernetes YAMLs, or perhaps been forced to push to GitHub repeatedly until your CI jobs stop choking on syntax?
Pkl is an end-to-end answer for this problem, and many others. By allowing developers to express data models, or even actual data, in a typed and concise meta-format, JSON and other formats become checkable, interchangeable, formattable, and gain many other desirable attributes.
Usage
Elide integrates with Pkl in several ways:
Command-line Pkl
The entirety of Pkl's command line is embedded and supported within Elide; you can find it at elide pkl
:
For example, to render Pkl's own CircleCI configuration into YAML: