xTalk Syntax (was Re: Andy's comments and positioning...)

Dan Shafer revdan at danshafer.com
Sun Feb 8 19:36:25 EST 2004


FWIW, I'm always, always, always going to argue against any change to 
xTalk syntax that makes the language one iota more complex than it is. 
That's my prejudice and you need to know that up front (as if you 
didn't already).

Claude Lemmel said:

"It is the same to teach and to learn "the property of myObjetc" than 
"myObject.property". The argument xTalk is easy was true 10 years ago, 
no more today."

Interesting observation, Claude, but when I talk about the relative 
ease of learning and using Transcript and other xTalks vs. conventional 
languages, I'm not speaking of any particular small bit of syntax. I'm 
talking about the way it *feels*. In daily talk, we never say "this 
equals that" let alone "this=that". We say "this IS that" or we say 
"put this into that." There are literally dozens of such syntactical 
examples where xTalk emerges as easier than other languages. I've heard 
it 100 times. "I type in a command in the Message Window and it just 
works as I expect." Nobody *ever* says that about C++, C#, VB, or even 
REALBasic.

"the langage must evolve to allow both syntaxes, xTalk and ECMA"

Yes, but *only* if it allows both syntaxes. Over the years that I've 
watched languages evolve, they too often leave a syntax behind as they 
evolve to a new one. Dot notation isn't hard to learn, but it, again, 
is less natural than the very fluid human-language-style approach in 
Transcript. No matter how you slice it, "card43.button('OK').hide" is 
not as comfortable or fluid as "hide button "OK" of card 43."

"It is a hazardeous way to compare Flash and Revolution ; but it is 
easy to explain "Revolution is superior to Flash beacuse Revolution can 
embedd Flash"."

Reminds me of the old religious language wars between Prolog and LISP. 
The LISPers always thought they could win the battle by saying, smugly, 
"You could write Prolog in LISP but you could never write LISP in 
Prolog." I always wanted to shout, "But I don't *want* to write a 
freaking computer language!" To me, a linkage between Transcript and 
JavaScript that would allow me to wrapper calls to media objects in my 
favorite language (Transcript) would be more beneficial than the 
ability to embed Flash stuff in Rev.

"Revolution appears today as the tool for the Macintosh community."

I thought Kevin dealt well with that one the other day. If anyone has a 
perception that Rev is a Mac tool, there's not much that can be done to 
help them. The MacWorld (UK?) reviewer who said that obviously had 
spent little or no time writing the review. Nothing at RunRev's Web 
site, in their marketing or, anywhere else that I've seen conveys that 
message.

Frank Leahy offers:

"Yes, please, if anyone at RunRev is reading this, please add support 
for standard statement syntax such as

x = y + z (instead of put y + z into x)
x += 1 (instead of add 1 to x)
x.myProperty = foo (instead of set myProperty of x to foo)"

Sorry, Frank, but I just flat disagree. Those syntaxes -- in particular 
the far-too-cryptic and unreadably annoying "x += 1" -- are off-putting 
to all but professional programmers with backgrounds in C/C++/Java. And 
those folks, as I said in my earlier post, are vanishingly unlikely to 
change languages to any other tool, particularly one which is 
accessible to those who have not "paid their dues" and become members 
of the "Programming Priesthood." (Don't get me started!)

Dar Scott says, sarcastically and amusingly:

"Of course, if RunRev was to add ?: from C to support something _I_ 
want, then that would be OK.  ;-)"

Yeah. And that syntax found its way into an otherwise largely 
accessible language called JavaScript. Go figure.



More information about the use-livecode mailing list