I like the notion of "further muddling reader's confusion", even
though I don't fully understand it.   Formal languages differ in
syntax and programmers need to come to terms with these differences,
which will not go aweay any time soon

With my young students, who are too bright to be models for everyone,
I use BNF and, when I want to deal with semantics too, VDL.   (Every
programmer needs to be able to read and write them.)

Most important,  they write lexical-breakout routines for each new
language.  If you can write a routine that parses a language
successfully you understand its syntax.  If not, not.

The other distinction that needs to be very fully assimilated is that
between a language and a metalanguage.   Some of the "complications"
associated with the use of macro languages to generate statements in
other languages are situational and all but ineluctable: the doubled
single quote within a quoted string is the obvious example.

I also condition my students to expect a few barred windows and culs
de sac.  C, for example, got some few operator-precedence
relationships wrong, and in the upshot a good many sets of parentheses
that should be otiose are needed.  This is incoherent, ugly; but it
can be lived with; and it should be expected.  It remains better "to
light a candle than to curse the dark".

John Gilmore, Ashland, MA 01721 - USA

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to