Settings

Theme

ArchieML is a structured text format optimized for human writeability

archieml.org

67 points by albertsun 11 years ago · 13 comments

Reader

kazinator 11 years ago

> "Unstructured text is ignored; there is no such thing as a parsing error"

That is a naively wrong-headed recipe for problems later down the road. What if structure is mistyped such that it looks like unstructured text?

The format has structure, and consequently, examples of that format can be erroneous. Just because you don't diagnose errors doesn't mean they aren't there.

rntz 11 years ago

The live demos aren't appearing for me in Firefox, which makes the page nearly useless in understanding what ArchieML actually looks like.

The relevant error appears to be:

    TypeError: aml.innerText is undefined archieml.org:364:6
Firefox 36.0, Ubuntu 14.10
TazeTSchnitzel 11 years ago

Reminds me a little of INI files. They are a good demonstration of how sometimes simplicity is best.

burke 11 years ago

Interesting that there's mention of JSON and YAML, but no mention of TOML. I'm more interested in hearing why TOML wasn't an adequate solution.

  • JackC 11 years ago

    Far as I can tell this is a really different use case from most markup languages:

    - Set up a Google doc.

    - Point a bunch of non-technical users (like reporters) at the doc to fill in content.

    - Continually parse what they're doing into JSON that can be formatted and pushed live as soon as it's in decent shape.

    It looks kind of like YAML/TOML/etc., but it's coming from a different place. You're not trying to make a .INI file a little friendlier for a human programmer -- you're trying to make a collaborative Google doc a little friendlier for a parser. Any design process that didn't start with an unstructured doc, and add the minimum amount of structure necessary to get something useful out, is going to end up with the wrong tradeoffs.

    • mericson 11 years ago

      "You're not trying to make a .INI file a little friendlier for a human programmer -- you're trying to make a collaborative Google doc a little friendlier for a parser."

      That's exactly what we were aiming for. TOML, which I think is brilliant for config files, was actually a bit of an inspiration for this.

      But for our use case, which typically involves longer copy blocks, TOML still felt closer to something a developer might grok than to something a reporter would intuitively understand.

      It's also worth noting we make abundant use of other formats in our interactive graphics — from JSON to CSV to YAML — when the data is much more structured and unlikely to be touched by a wider group of people in the newsroom.

      This is pretty clearly not a solution to all structured data; but rather, just the subset that we want to be easy to write and edit.

  • malkia 11 years ago

    Maybe he/she hasn't heard of it. I've read about TOML just few weeks ago.

    • abstrctn 11 years ago

      I hadn't heard of TOML before today, and it looks like TOML goes a long way towards an easy to understand markup.

      But even something as minimal as TOML still relies on several programming concepts for its syntax: the use of the equals sign for assignment, that strings need to be quoted, using "#" to begin comments. They're very basic concepts, but still concepts that need to be taught in programming 101.

      The place where syntax errors in a live interactive graphic is dangerous is when it's public and a copy editor goes in to fix a typo. Even if they aren't familiar with every concept in AML (like square brackets to denote arrays), when they're fixing that typo, the only line they're editing is:

      key: Lorem ipsum dolor sit amet.

      Which is about as error-proof as we could get it.

dcohenp 11 years ago

So, I guess ArchieML is to JSON what Markdown is to HTML?

tekacs 11 years ago

Akin to :skip, wouldn't a :preserve or :quote block to suspend syntax temporarily be useful?

That is, for tracts of text that need to be quoted verbatim, including colons or [brackets] or similar?

Given how the parser is designed it seems like this would be particularly easy to implement...

phreeza 11 years ago

I love that it has comments, which is something I greatly miss in JSON.

xjia 11 years ago

Off topic: I clicked because I thought it's sth. related to the ML programming language.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection