Languages Features Creators CSV Resources Challenges Add Language
GitHub icon

HCL

HCL - Data notation

< >

HCL, aka HashiCorp configuration language, is a data notation created in 2014.

#249on PLDB 9Years Old 5.7kUsers
2Books 1Papers 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" }

Keywords in HCL

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

Books about HCL from ISBNdb

title authors year publisher
Beginning HCL Programming: Using Hashicorp Language for Automation and Configuration Riti, Pierluigi 2021 Apress
Beginning HCL Programming Pierluigi Riti; David Flynn 20210411 Springer Nature

Publications about HCL from Semantic Scholar

title authors year citations influentialCitations
Layering RTL, SAFL, Handel-C and Bluespec constructs on Chisel HCL D. Greaves 2015 2 1
bison.html · hcl.html · apollo-guidance-computer.html

View source

- Build the next great programming language · Search · Day 213 · About · Blog · Acknowledgements · Traffic · Traffic Today · GitHub · feedback@pldb.com