[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Syntax and redundancy
- From: David Olofson <david@...>
- Date: Mon, 29 Aug 2005 14:58:06 +0200
On Monday 29 August 2005 13.26, Rob Kendrick wrote:
[...]
> > Only End is mandatory, but I used to add the optional word all the
> > time. Same for Next <VariableLoopName>, the variable being
> > optional.
>
> I always found this very useful - it meant that the compiler whinged
> at if you got it wrong - it's useful for confirming where each
> structure ends in your mind.
I've found that proper indentation, and an editor with the good old
(at least in the Un*x world) "highlight matching brace" feature,
pretty much eliminates the need for this kind of language features.
Besides, in many languages, you're hard pushed to make anything
compile at all, if there is one brace too few or too many - although
at least some of the GNU compilers tend to completely freak out and
crash or give incomprehensible error messages in some of those cases.
However, I can't remember seeing an editor with a "highlight matching
keyword" feature... One would need a list of open/close keyword
pairs, so this propably falls in the language aware syntax
highlighting domain - but most serious editors do that anyway, these
days.
> Alas, I don't think this kind of thing is possible to be implemented
> optionally in Lua, as it is in Basic, as the compiler wouldn't be
> able to tell the difference between the end or a beginning of a
> block. :-/
Well, if the "end of statement" rule is a problem, there's always the
option of doing it in the form of "semi synonyms" that allow you to
replace 'end' with 'endif', 'endsub' or similar. The token
substitution filter would double as a hook for the extra checking.
//David Olofson - Programmer, Composer, Open Source Advocate
.- Audiality -----------------------------------------------.
| Free/Open Source audio engine for games and multimedia. |
| MIDI, modular synthesis, real time effects, scripting,... |
`-----------------------------------> http://audiality.org -'
--- http://olofson.net --- http://www.reologica.se ---