Things I Don't Like in Configuration Languages Spoiler: I created my own configuration language maml.dev Here will be a list of all markup languages/configuration languages I found on the internet, and things I don't like about them. - - 1 - 2 - - 3 - 4 YAML 1.2 is better than YAML 1.0. But still, the YAML specification is monstrous, and I don't get how people trying to implement it are not going insane. YAML contains too many features. <?xml version="1.0" encoding="UTF-8"?> <catalog xmlns="http://ex.com/catalog" xmlns:cat="http://ex.com/catalog" xmlns:old="http://ex.com/oldcatalog"> <item id="0042"> <name>R&D Handbook</name> <notes priority="1 2 3">n/a</notes> </item> </catalog> The era of XML is in the past. I remember the hype around XML, how it was thought to be a universal format, and people created a lot of stuff around it. But now it's dead. {"name": "John", "age": 30, "car": null} JSON is nice and JSON won. It's a universal, data-interchange format for the Web and applications. This is why I based my MAML on top of JSON. I fixed things that were a little bit annoying for me inside JSON. [[servers.web]] name = "frontend" ip = "192.168.1.10" [[servers]] region = "eu-central" [[servers.web]] name = "backend" ip = "192.168.1.11" I don't get why the [table] is more readable, and I don't understand [[array of tables]] out of order. And the lack of null. { lineBreaks: 'Look, Mom! \ No \\n\'s!', hexadecimal: 0xdecaf, a: +.8675309, b: +8675309., } Too many unnecessary features. Object key-value pairs are still unordered. No distinction between integers and floats. { Hjson: a string RegEx: \s+ md: ''' First line. Second line. This line is indented by two spaces. ''' } Unquoted strings and three different types of comments. Multi-line strings with significant indentation. { // use #, // or /**/ comments keys: without quotes, isn\'t: { that: cool? # yes } } JSONH is same as HJSON but different. { shopping-list: [ milk butter /* don't forget the beer */ beer ] a\ spa...
First seen: 2025-11-17 19:47
Last seen: 2025-11-17 19:47