[Haskell-cafe] GSoC Project Proposal: Markdown support for Haddock
Richard A. O'Keefe
ok at cs.otago.ac.nz
Fri Apr 5 04:24:31 CEST 2013
On 5/04/2013, at 2:00 PM, Johan Tibell wrote:
>> Would it be too much to ask that a notation be used which has
>> a formal syntax and a formal semantics?
>
> We will document our superset, sure. That's what others did as well.
> The point is using Markdown as the shared base.
Nononono.
Sure, the others "documented" their supersets.
But they did *NOT* provide what I am asking for:
- a FORMAL SYNTAX and
- a FORMAL SEMANTICS.
I tried to use one of these systems, and found myself
unable to determine which combinations of features were
legal and what legal combinations of features *meant*.
I corresponded with some people who had built markdown
parsers, and the answer was the same each time: they had
reversed engineered some other parser (typically a Perl
one) and bashed on it until they were bug-compatible.
If I want to get a particular effect in LaTeX or even in
HTML+CSS, I can usually figure it out *without* having to
run any program. If I want to get a particular effect in
Markdown, I flounder around and end up doing without.
I am sick of "documentation" that vaguely hints at things,
and I am especially sick of Markdown so-called documentation.
To say it one more time: I was unable to use the official
Markdown documentation,
http://daringfireball.net/projects/markdown/syntax,
to guide the construction of a parser.
For example, <br> is a valid URL enclosed in <. . .>, so
is it a link, as the "Automatic Links" section would suggest,
or is it embedded HTML, as the "Inline HTML" section would
suggest? Can you tell *from the documentation*?
For another example, is *foo**bar**ugh* supposed to map to
<em>foo<strong>bar</strong>ugh</em> or to
<em>foo</em><em>bar</em><em>ugh</em>?
Again, I'm not asking "what does this or that *program* do",
I'm asking "can you tell from the documentation what they
*ought* to do?"
If there is an unambiguous specification of Markdown somewhere
(specification; not program), I would be glad to see it.
More information about the Haskell-Cafe
mailing list