• abhibeckert@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      8 months ago

      Pkl is a hell of a lot easier to work with. Compare this pkl code:

      host: String
      port: UInt16(this > 1000)
      

      To the equivalent in json:

      {
        "$schema": "http://example.org/my-project/schema#",
        "type": "object",
        "properties": {
          "host": {
            "type": "string"
          },
          "port": {
            "type": "number",
            "minimum": 1000,
            "exclusiveMinimum": true
          }
        },
        "required": ["host", "port"]
      }
      
    • canpolat@programming.devOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      8 months ago

      I just learned about Pkl, so take this with a grain of salt. JSON Schema and Pkl seem to have some overlap. But JSON schema is not specifically designed for handling configuration and Pkl supports other formats like YAML.

      • Lynxtickler@sopuli.xyz
        link
        fedilink
        arrow-up
        3
        ·
        8 months ago

        JSON schema supports YAML as well, no? That’s because JSON and YAML are both essentially just different syntaxes for writing the same objects right?

        • canpolat@programming.devOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          8 months ago

          Possibly. My point is: despite having a common subset Pkl and JSON schema doesn’t seem to be solving the same problems. But, I’m just learning about it, so I may just be wrong.