

ArchieML is a structured text format optimized for human writeability - albertsun
http://archieml.org/

======
kazinator
> "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
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

~~~
abstrctn
Thanks for pointing it out - should be fixed now. Sorry for the bug!

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

------
burke
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
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
"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.

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

------
tekacs
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
I love that it has comments, which is something I greatly miss in JSON.

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

