When I was at Berkeley working on my dissertation, I wrote a tool that
would let you edit a text file written in any language you could define
with a grammar, with syntax and semantic error checking while you
edited. I had grammars for several popular (in 1980) languages. The
only one I couldn't properly create a grammar for was C.
There were two problems:
1) typedef, which lets you create new words with syntax implications,
and
2) the preprocessor, which lets you get into all kinds of syntax trouble
Mary Ann