Weirdness Passing Messages

Richard Gaskin ambassador at fourthworld.com
Thu Mar 23 13:26:31 EST 2006


David Burgun wrote:
> Thank you sooooooooooo much, you have no idea of how it felt to be  
> trying to sort this out. I really don't know much about the internals  
> of RunRev to have a clue as to where to start looking sometimes!

That's what this list is for.  Every language has its "gotchas" (Mikey 
was once cataloging the ones for Transcript -- Mikey, still got that URL 
active?).

I remember working with THINK C years ago and finding myself frustrated 
that none of the C examples in Bond's book on externals would compile 
correctly.  "Surely it's me," I thought, and figured I'd learn more 
later and move on to writing other things.

Later I was using Code Warrior and woke up one day to find that Apple 
had changed most of their headers, requiring me (and every other 
developer) to make extensive revisions to our code.

Later on I was talking about my bad luck with C (one of the reasons I 
fell in love all over again with xTalk was the tedium of C) with Mark 
Lucas, perhaps the best C Mac programmer I know, and he said, "Dude, I 
could have saved you a lot of time with Bonds -- none of those examples 
have worked with any compiler for years." :)

Always a new gotcha to discover....


> The one thing that REALLY hacks me off is that there is no mention of  
> this at all in the documentation that I can find:
...
> All I can say is "thanks for nothing RunRev, you just cost me 2 days  
> of hair pulling!!!!"

FWIW you can extend those thanks to Dan Winkler, the designer of the 
"mother tongue", HyperTalk.  A lot of xTalk's most annoying ambiguities 
come from a desire to prioritize flexibility over consistency.

The "sometimes" rules introduced with regard to field references (and 
later extended to any object that can work as a container, such as 
buttons and in Rev images too) comes from HyperTalk.

I agree that there's always room for more thorough discussion in the 
docs, but there are so many combinations one can employ these tokens in 
that I don't think it's humanly possible to document them all.

Your case, frustrating as it's been for you, isn't one I've come across 
before since I started with xTalks in '87.

Now that might be only because I fell into a habit of using long IDs 
early on, and whenever I don't get what I'm looking for in the first try 
I'll use some form of long ID instead and it works so I don't think 
about it beyond that.

That said, the ambiguities with "me" and "target" come up often enough 
that they do warrant special attention in the docs, and I just submitted 
an enhancement request so this doesn't fall off the radar:

<http://support.runrev.com/bugdatabase/show_bug.cgi?id=3419>

--
  Richard Gaskin
  Managing Editor, revJournal
  _______________________________________________________
  Rev tips, tutorials and more: http://www.revJournal.com



More information about the Use-livecode mailing list