Measures Concepts
GitHub icon

HCL

HCL - Data notation

< >

HCL, aka HashiCorp configuration language, is an open source data notation created in 2014.

Source code:
git clone https://github.com/hashicorp/hcl
#242on PLDB 10Years Old 180kRepos

Try now: Riju

HCL (HashiCorp Configuration Language) is a configuration language built by HashiCorp. The goal of HCL is to build a structured configuration language that is both human and machine friendly for use with command-line tools, but specifically targeted towards DevOps tools, servers, etc. HCL is also fully JSON compatible. That is, JSON can be used as completely valid input to a system expecting HCL. This helps makes systems interoperable with other systems. HCL is heavily inspired by libucl, nginx configuration, and others similar.


Example from the web:
variable "ami" { description = "the AMI to use" } <<FOO hello world FOO
Example from Riju:
output = "Hello, world!"
Example from Linguist:
consul = "1.2.3.4" // This is a comment template "foo" { bar = "zip" }
var local path for_each any string number bool true false null if else endif for in endfor

Language features

Feature Supported Token Example
Conditionals ✓
Booleans ✓ true false
MultiLine Comments ✓ /* */
/* A comment
*/
Strings ✓
Comments ✓
// A comment
Line Comments ✓ //
// A comment
Semantic Indentation X

View source

- Build the next great programming language · Search · Add Language · Features · Creators · Resources · About · Blog · Acknowledgements · Queries · Stats · Sponsor · Day 605 · feedback@pldb.io · Logout