logoalt Hacker News

egl2020yesterday at 11:01 PM2 repliesview on HN

Why can't a parser be written? Is there a halting problem or a grammar conflict? Or is "can't" short-hand for "too much trouble"?


Replies

ordutoday at 12:56 AM

> Why can't a parser be written?

Because the existing parser is written in truly emacs style: no formal grammar, just a lisp code with a regexp at each turn. Theoretically speaking it doesn't forbid you from writing a parser, but in practice there are no full-blown parsers of org-mode except the reference one.

adwtoday at 12:26 AM

For many software businesses, licensing is an issue. The spec is GFDL with GPL code samples, a non-cleanroom translation of the elisp parser would (likely) be GPL (or at least arguably enough so to keep lawyers busy), so going and doing some other roughly equivalent markup language instead avoids the copyleft requirements.

So, yes, “too much trouble”, much of it nontechnical.