summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorMartin Atkins <mart@degeneration.co.uk>2018-01-27 10:28:15 -0800
committerGitHub <noreply@github.com>2018-01-27 10:28:15 -0800
commit22bc7a98cbafe5e4fd29cbd9c0b531426bf5ee64 (patch)
treeb39dcab4e5a5d834025f41addcc1c3abd8889341 /README.md
parenta1c55afecad80cf4b2f729da2482018af8c7d25c (diff)
README: Clarify that HCL is just syntax
The readme was previously unclear about the fact that HCL is not a configuration language in itself but rather a toolkit for defining and parsing configuration languages. It may still not be totally clear, but it is hopefully clearer than it was.
Diffstat (limited to 'README.md')
-rw-r--r--README.md13
1 files changed, 10 insertions, 3 deletions
diff --git a/README.md b/README.md
index f18fee9..9ae0baf 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,9 @@
# HCL
-HCL is a structured configuration language that is both human- and
-machine-friendly, for use with command-line tools. Although intended to be
-generally useful, it is primarily targeted towards devops tools, servers, etc.
+HCL is a toolkit for creating structured configuration languages that are
+both human- and machine-friendly, for use with command-line tools.
+Although intended to be generally useful, it is primarily targeted
+towards devops tools, servers, etc.
HCL has both a _native syntax_, intended to be pleasant to read and write for
humans, and a JSON-based variant that is easier for machines to generate
@@ -16,6 +17,12 @@ It includes an expression syntax that allows basic inline computation and,
with support from the calling application, use of variables and functions
for more dynamic configuration languages.
+HCL provides a set of constructs that can be used by a calling application to
+construct a configuration language. The application defines which attribute
+names and nested block types are expected, and HCL parses the configuration
+file, verifies that it conforms to the expected structure, and returns
+high-level objects that the application can use for further processing.
+
## Experimental HCL2
This repository contains the experimental version 2 of HCL. This new version