Topic: Some independent point of view
Author: beaurega@ireq.hydro.qc.ca (Denis Beauregard)
Date: 6 Feb 92 00:48:47 GMT Raw View
I make a short visit to this group.
I would like to point something I am involved in that could be of interest
in standardizing languages (although I think it may be not exactly the
debate now).
I wrote an editor that was using a diagram to represent the control flow
(that is the if() {} stuff). I actually type in no control flow bracket,
nor keywords like if, else, etc.
I wrote 10 to 15 languages translators that took the diagram (some call this
action diagrams, but my program was wriiten in parallel so that it is
not an exact definition) to get the control flow. This include C language,
C++, Pascal, Fortran, PLM, line-number Basic, and many Assemblers.
The only difference between the C and the C/C++ translator is that
the C/C++ translator can generate .C, .CPP and .H files, while the first
version could only produce .C file.
There will be more and more code generators and they will have to support
new features of languages, just like new compilers. The same way, there
will be more and more tools (call them pseudo-compilers) that will handle
the languages to extract, for example, where is defined a variable, where
is a function, who call who, etc. The difference between a compiler and
such tools (either processing tools or code generators) is probably the
complexity.
After my background, my point of view.
What I would like to bring into attention is that language should stay
clear enough so that it would be easy to build such non-compiler tools.
That the language still supports straight presentation. Example :
that { } could be followed by ; whenever what is inside is complete.
Currently, you could write, depending on the statement { }; or { }, so
that you could not generalize generation of { };
Sorry if it not clear to present.
Well, what I try to mean is that when introducing new features like
try { ... }, it could make life of tools writters easier if new
statements could match (mimics?) some existing statements.
Perhaps, maybe this have been discussed early. Sorry for bandwidth use...
I think use of new tools is to improve efficiency or productivity.
--
Denis Beauregard beaurega@ireq.hydro.qc.ca
Mes opinions sont personnelles, pas celles de mon employeur.
My opinions are mine, not those of my employer.
Looking for BEAUREGARD, JARRET, JAREST, VINCENT (I'm also on soc.roots)