In article <
87r4s3m...@inbox.ru>, Aleksej Saushev <
as...@inbox.ru> wrote:
>"Rod Pemberton" <do_no...@notemailnot.cmm> writes:
>
>> "Aleksej Saushev" <
as...@inbox.ru> wrote in message
>> news:87wr1vp...@inbox.ru...
>>> Albert van der Horst <
alb...@spenarnc.xs4all.nl> writes:
>>>
>>> > I would greatly prefer (: .... ;) .
>>>
>>> It is really bad idea to use anything containing ")" when
>>> you lack proper lexer.
>>
>> Why exactly is it a bad idea to use ) with Forth's space delimited lexing?
>> You're not placing (: ... ;) inside of comments ( ... ) are you? A space
>> delimits every token including (: and ;) except for a few Forth words that
>> find their own delimiter. So, a ) shouldn't be matched unintentionally, as
>> long as you avoid placing (: ... :) in the self-delimited words which use )
>> as a delimiter. Those are the two Forth words ( and .( So, you should
>> only have to avoid ( comments and .( for display for proper use of (: ... :)
>
>Perhaps, you don't write programs long enough to bother with commentaries,
>or you like to track everything you comment off, or you never comment
>part of code off, I don't know. But many other people do comment their code,
>and do comment parts of code off regularly. Forth is already broken enough
>to use that common delimiters for commentaries, you don't really need to
>make things worse.
I comment meticulously, and if I want to keep code, I save it in a
source control system. In the next version I remove the code I don't
use. Commenting out code is for people who don't use source control
systems. Code should be saved together with the tests it passes.
What tests are passed by commented out code?
>
>Besides, in this case all you need is reenterable compiler (this isn't
>quite trivial thing in Forth already but anyway), so that you could write
>
>:noname ... [ :noname ... ; ] literal ... ;
>
>Thus, square brackets indicate better what's going on.
For a fundamental construct `` [ :noname '' is way to verbose.
With fundamental constructs one wants to things to become second nature,
you want to forget that you have a reenterable compiler, you don't
want to be reminded that you go interpreting, then start a new
compiler.
>
>(Making compiler operate in dynamically allocated memory is even more
>complicated, given Forth's aversion of dynamic memory in general.)
If you want LISP you know where to find it.
>--
>HE CE3OH...