compileIt for revolution?
Richard Gaskin
ambassador at fourthworld.com
Wed Jun 22 20:28:12 EDT 2005
Dennis Brown wrote:
> I don't think compiling scripts is the answer.
It wasn't with CompileIt! either. ;)
Yes, it was *possible* to compile straight HyperTalk, but that rarely
ran significantly faster than it did in HC's own interpreter, mostly due
to the need for callbacks to the engine.
So instead CompileIt! had its own unique syntax and hundreds of symbols
one could use to implement things that were algorithmically very much
like one would do in Pascal or C. Of course this required a whole other
level of knowledge, and for those symbols related to the Mac Toolbox it
also required the dozen-volume set of Inside Mac books, and/or the more
efficient Think Library (which came with Think C). So to use CompileIt!
effectively required an understanding of pointers, handles, and the OS
API, along with many other low-level things.
For many folks the bigger downside to implementing lower-level
algorithms in a high-level xTalk variant was that it ultimately
resembled neither HyperTalk nor any of the languages used in examples
for the OS API.
With only 27 keywords in the language, the learning requirement for
implementing those sorts of algorithms in C is arguably much lower, and
there are infinitely more resources available to get one started with C
than with CompileItSpeak.
And of course CompileIt! was written for Mac OS/68k only, while Rev runs
on a dozen platforms. By the time one could manage to master
CompileItSpeak to do effecient work, the amount of forked code needed
for all platforms would not likely be much less than is required for C.
This is not to suggest that I believe all Rev fans should learn C, so
let me please dispel that hyperbole before it arises. All I'm
suggesting is that CompileIt! was no panacea, and the effort of using it
well was arguably about the same as using existing solutions to make
externals in Rev today.
--
Richard Gaskin
Fourth World Media Corporation
__________________________________________________
Rev tools and more: http://www.fourthworld.com/rev
More information about the use-livecode
mailing list