Re[2]: [stack] Re: POP-11: another concatenative language

Serguey Zefirov — 2002-01-30 13:52:34

Hello Serguey,

SZ> Hello e1_t,

SZ> There is an unusual complexity for mantaining stack of unparsed words,

Sorry. I should type "unneeded" or "unwanted" instead of "unusual",
but I didn't. Sorry.


Best regards,
Serguey Zefirov mailto:sz@...

Serguey Zefirov — 2002-01-31 06:59:33

Hello John,

среда, 30 января 2002 г., you wrote:

>> I do not know ANY born-deaf in the whole history of human kind that was
>> (or is) successful in the field where abstract thinking is a must, ie,
>> mathematic, programming, even car racing.
JC> It took a bit of googling,

What the request was? My were "famous born deaf" and "famous scientist
born deaf", neither succeed.

JC> but I turned up Omer Zak, software engineer:
JC> http://www.zak.co.il/omer/eng/bio.html

Rather interesting.

JC> And Dmitri Kanevsky, theoretical mathematician and speech researcher (!):
JC> http://www.diversitycareers.com/articles/pro/oct-nov-01/att_ibm.htm

Somewhat biased because he wasn't born deaf.

But anyway, I was wrong. Nevertheless I feel right. ;)


Best regards,
Serguey Zefirov mailto:sz@...

Serguey Zefirov — 2002-02-01 13:33:51

Hello Billy,

четверг, 31 января 2002 г., you wrote:

>>e> Forth doesn't have a stack of unparsed words.
>>And pure concatenative approach will. I just don't see any other way
>>to do it.
BT> How can you possibly have a stack of unparsed words? That's a contradiction
BT> in terms. "Unparsed" means that the text hasn't been looked at by the
BT> compiler, so it couldn't have been split into words or placed on a stack.
BT> So what do you mean?

Parsed in the "understood by the system" sense. "Understood" - have an
action binding, etc.

>>Show me what to do with my desire for shorter notation of ALIAS' in
>>pure concatenative way. I'd like to see interpreter internals as well.
BT> You're asking for an applicative notation in a purely concatenative
BT> language. That's literally impossible, by definition. Furthermore, there's
BT> no need for it.

Why?
What if I need to provide a word for simple aliasing for words in
different name spaces? Like

alias-name namespace word-name ALIAS

Or I need to provide a mechanism to update different namespaces, like

namespace word =.= action ;

Or I have to create embedded language? Forth does this with CREATE and
other interesting words.

>>wordnotindictionary1 wordnotindictionary2 ... wordnotindictionaryn
>>wordthatindictionary

>>Here your interpreter ought to have a stack of words that contains
>>wordnotindictionary1..n strings until it found wordthatindictionary.
>>Then it may perform the action. In the PARSE and WORD machinery you
>>use normal operand and return stacks for that, if you need it. Also
>>you may change separator for parsing, as in CHAR " WORD.

BT> OH! Well, I would just error out the moment I hit the first
BT> wordnotindictionary. There's no reason to keep going at that point. It
BT> frankly makes no sense at all to go any further. So why add the notion of a
BT> "parsed word stack"? How could it possibly improve you language to be able
BT> to do things that make no sense?

is-SUPERDUP-in-dictionary == DUP ;

How '==' works?


Best regards,
Serguey Zefirov mailto:sz@...