Hallo Ivanko,

Du schriebst am Mon, 11 Nov 2013 09:41:58 +0500:

> The ALGOL syntax looks as a complication & seems to offer no benefits :)

The Algol syntax was the base for Pascal. It is very similar, although
Pascal left out many constructs possible even in the simpler Algol 60
dialect, like dynamically sized arrays (you could declare an array using
_variable_ for index range bounds) or block scoped variables (open a block
with "begin", declare some variables and use them, close the block and
they're gone). The only major difference of Pascal from Algol in thei
respect is its use of _keywords_, which simply were not known when Algol
was defined - they used a concept called "tokens", but didn't think of the
possibility to represent them a specially recognized words, so you had to
mark the syntax tokens specially, usually by enclosing them in quotes.
(Yes, you wrote 'BEGIN' <code> 'END'; for an Algol block.)

> For advanced syntax it worhs to look at Python (no "begin end" source
> text garbage etc).

If you consider block delimiter words garbage, why don't you use C instead
of Pascal? But _even_ C has block delimiters ("{" and "}"), because they're
_needed_ by any notation that does _not_ restrict formatting the code.
Of course, you can absorb some delimiters into parts of other constructs,
but they're basically unavoidably as long as you don't require a very
strict formatting to specify block coherence, where you have to
painstakingly keep track of the indentation level. And no, the indentation
pattern isn't always a straightforward in and out - there _are_ jumps and
steps that aren't immediately obvious.

BTW, you do know bash - its script syntax is an example for the
"absorption" of block delimiters into other syntax elements -
"if ...; then ...; fi" constitutes two blocks, as does
"for ...; do ...; done" or "while ...; do ...; done", or even
"case ...; {...) ...;; }^n endcase" (multiple blocks).
But as you can see, every block has a pair of delimiters, albeit not
all the same.
Isn't it much easier to recognize then if every block is delimited by the
same words?

-- 
-- 
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen Grüßen, S. Schicktanz
-----------------------------------------------------------



------------------------------------------------------------------------------
November Webinars for C, C++, Fortran Developers
Accelerate application performance with scalable programming models. Explore
techniques for threading, error checking, porting, and tuning. Get the most 
from the latest Intel processors and coprocessors. See abstracts and register
http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk
_______________________________________________
mseide-msegui-talk mailing list
mseide-msegui-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

Reply via email to