[HN Gopher] CONL: "Markdown" for your config files
       ___________________________________________________________________
        
       CONL: "Markdown" for your config files
        
       Author : Timothee
       Score  : 15 points
       Date   : 2025-04-26 15:31 UTC (7 hours ago)
        
 (HTM) web link (cirw.in)
 (TXT) w3m dump (cirw.in)
        
       | mubou wrote:
       | > types are deferred until parse time; the app knows what it
       | wants.
       | 
       | Thank you! Types have no business in a configuration format when
       | the app already has a defined schema. Most formats try to convey
       | all of the information needed to reconstruct an object, but
       | that's totally unnecessary and only serves to complicate the
       | syntax and introduce unnecessary errors/mishandlings.
       | 
       | Are there any other config syntaxes that do this? Besides ad-hoc
       | INI, that is.
        
         | darccio wrote:
         | Confetti [0] was shared recently here at HN. It's described as
         | "simple, typeless, and localization-friendly configuration
         | language designed for human-editable configuration files".
         | 
         | 0: https://news.ycombinator.com/item?id=43534240
        
         | bvrmn wrote:
         | Strict YAML has only strings, lists and maps. TBH it has much
         | more nicer syntax as well.
        
       | edoceo wrote:
       | Would have like # or // as the comment. The issues raised about
       | them (URLs) are solved in other tooling by rules like first chars
       | on their own line to comment.
        
       | 3eb7988a1663 wrote:
       | ; Quoting is rarely required. Keys and values can contain pretty
       | ; much any character except ; (and = for keys).       spaced out
       | key = value with = signs and "quotes"!
       | 
       | That one makes my spider sense tingle, but it does seem elegant
       | at making it easier to write.
        
         | tcpiplab wrote:
         | As a developer I'm totally hoping this format becomes widely
         | adopted. As a pentester I'm looking forward to exploring what
         | the security implications may or may not be.
         | 
         | Also, I wonder if the syntax is intuitive enough that you could
         | just, for example write a bunch of rules and preferences and
         | such, then attach the file along with your prompt to an LLM and
         | just tell it to follow the rules and logic of the attached
         | config file which is in a new format that the LLM must figure
         | out how to understand. I'll try this.
        
           | tcpiplab wrote:
           | FWIW Anthropic Claude understood the CONL format just fine.
           | 
           | "I was able to understand your configuration file without any
           | difficulty."
           | 
           | I dunno what this tells us but I've been wanting to find a
           | simpler syntax for LLM rules. Not a serious project of mine
           | but I have noticed that LLM guardrails of various types are
           | written in many different ways.
           | 
           | Some are Markdown-ish or unstructured text strings. Others
           | are somewhat like yaml but contain enough additional complex
           | functionality that you must learn the new language in order
           | to understand the rules you want to write to protect your
           | LLM. For example the syntax used for Nvidia's Nemo Guardrails
           | rules.
        
       | eichin wrote:
       | As a python and markdown user, the triple-quoted strings never
       | _ending_ bugs me, or am I misreading the examples?
        
       | epage wrote:
       | Looking at some of the examples, I don't feel like I can
       | interpret how some of the strings are suppose to work. I feel
       | like this is a flaw with over-emphasizing Postel's Law.
       | 
       | Also, while indentation "works" for Python, the ratio of
       | different levels per line is low while YAML it is high and I'm
       | not a fan. I'd want to see a more complex example to have a real
       | feel for this.
        
       ___________________________________________________________________
       (page generated 2025-04-26 23:01 UTC)