At 3:27 PM +0300 9/5/01, Douglas Wagner wrote:
>You list Transcript as one of REV's advantages vs. BASIC in REALBasic.
>(I read Basic as REALBasic in REALBasic).
>
>I feel a little uneasy about the Basic connection myself. Still, REALBasic
>is offered as an OO language,  so presumably it's a thoroughly revised
>variant of Basic.
>
>Whatever the antecendent of REALBasic my understand is that it is now a
>modern OO language.

Just to clarify, I don't offer Transcript as superior to REALbasic's language because 
I think Transcript has a better OO implementation. Rather, Transcript is easier to 
understand, often self-documenting, and more powerful in that you can do more with 
less. That said, here are my slightly educated responses to your specific points:

>Can the same be said of Transcript? If yes, then I expect the languages can
>be compared point by point by someone with a thorough knowledge of both.

Transcript is not object-oriented in the classic sense. There is an inheritance 
aspect, but it's very different to standard OO.

>
>For a start one might ask where Transcript stand on:
>1      Data hiding (encapsulation): Where data cannot be accessed except
>throught methods associated with the data?

Check out the getProp and setProp entries in the language reference. This can be done 
(but again, very differently than standard OO).

>
>2      Inheritance (hierarchy of object definitions): Where new objects
>can be defined to inherit from existing objects?

Not the way OO does it. I think there's an entry about this somewhere in the docs, but 
I don't know where it is offhand. Basically (no pun intended) in OO an object inherits 
behavior from the type of object it is. In Revolution, an object inherits from its 
place in the application: the group it is in, the card it is on, the stack it is in, 
the mainStack of that stack.

>
>3      Polymorphism: Where methods in different objects can have the same
>name?

Sure, you can name them anything you like. One thing that some OO implementations 
offer is the ability to have the same method name with different arguments be two 
separate methods. You can do this in Transcript, because you can have a variable 
number of arguments and do different things based on what you're handed, but it would 
be in one routine, not multiple routines.

>
>4      Single data type: where any variable can hold anything and may hold
>different things at different times.

??? I'm unaware of this as a feature of OO. Transcript has it, definitely.

regards,

Geoff

Reply via email to