This is Lilleyt's TypePad Profile.
Join TypePad and start following Lilleyt's activity
Lilleyt
Recent Activity
I'm reminded of the guy who decides that there should be one standard
because there are n divergent implementations. So he goes and writes
his own. Now there are n+1 divergent implementations.
Of course, I understand that he's talking about a process to go along
with a blessed and convergent implementation, but by throwing out there
the goal of creating an implementation as the goal of this
standardization process I think may be premature. It's so easy for
people to get dragged into the idea of getting something done that
everyone simply moves in their own direction again and the convergence
doesn't happen.
I'm not saying that's what he's calling for, but I'd be careful. Rather
than an implementation, I think what's needed is the will of the major
consumers (sounds like you're on board, so that's a good start), a good
sense of compromise, a willingness to recognize the desirable features
which have evolved to address actual shortcomings of John's original
spec, and a discipline about preventing feeping creaturism.
Most of all, however, I would say that there needs to be a concrete and
formal grammar. This should be the goal and distillation of all of that
process. Tests yes, of course, hand in hand with it, but a formal
grammar which eliminates all ambiguity in the language (and therefore
in the hopefully many standards-compliant implementations).
I would propose formalizing the language in a [Parser Expression
Grammar]. There's great tooling available (even in js), PEGs are very
comprehensible, and in fact, it's already been done more than once
already. What's lacking is a blessed PEG and implementations of the
same spec in multiple languages.
I can't help with any of those things, :) but I can help with a couple
technical observations.
- In my book, [kramdown] is the current best-of-breed. A spec needn't
be quite so ambitious, but I find support for element attributes and
basic table syntax to be essential.
- [Pandoc] has the tightest and most complete implementation, albeit in
Haskell. A good start would be to lift the PEG from it. There is one
other PEG floating around, but I couldn't name it off my head and it's
not as rich as Pandoc's.
[Pandoc]: http://johnmacfarlane.net/pandoc/
[kramdown]: http://kramdown.rubyforge.org/
[Parser Expression Grammar]: http://pegjs.majda.cz/
The Future of Markdown
Markdown is a simple little humane markup language based on time-tested plain text conventions from the last 40 years of computing. Meaning, if you enter this… …you get this! Lightweight Markup Languages ============================ According to **Wikipedia**: > A [lightweight markup lan...
Lilleyt is now following The Typepad Team
Oct 25, 2012
Subscribe to Lilleyt’s Recent Activity
