Skip to content
Erik's Configuration Language
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ECL
.gitignore
CMakeLists.txt
LICENSE
README.md
main.c
sample.ecl

README.md

Erik's Configuration Language

It's my own personal taste on a configuration language. Built to be:

  • Easy to parse
  • Easy to write
  • Low number of bytes needed.
  • Transpilation to other formats like JSON, TOML, YAML.

Example

  • ECL:
name "my_app"
year 2019
version 1.000000
debug? y
authors [
  "Erik Campobadal <soc@erik.cat>"
  "Some Other <some@example.com>"
]
connection {
  host "127.0.0.1"
  database "sample"
  user "root"
  password "secret"
}
  • JSON:
{
  "name": "my_app",
  "year": 2019,
  "version": 1.000000,
  "debug": true,
  "authors": [
    "Erik Campobadal <soc@erik.cat>",
    "Some Other <some@example.com>"
  ],
  "connection": {
    "host": "127.0.0.1",
    "database": "sample",
    "user": "root",
    "password": "secret"
  }
}
  • TOML:
name = "my_app"
year = 2019.0
version = 1.0
debug = true
authors = [
  "Erik Campobadal <soc@erik.cat>",
  "Some Other <some@example.com>"
]

[connection]
host = "127.0.0.1"
database = "sample"
user = "root"
password = "secret"
  • YAML:
name: my_app
year: 2019
version: 1
debug: true
authors:
  - Erik Campobadal <soc@erik.cat>
  - Some Other <some@example.com>
connection:
  host: 127.0.0.1
  database: sample
  user: root
  password: secret
You can’t perform that action at this time.