Content deleted Content added
→Language features: Looks like PoVy WP:OR, but maybe the helpfulness can be documented. |
|||
Line 19:
== Language features ==
Although REALbasic (RB) uses the word "basic" in its description as a variant of the BASIC programming language, RB is not compliant with the ANSI Standard for the BASIC programming language. For example, the ANSI Standard source code of simple demo programs in TrueBASIC will not compile in RB without a complete rewrite. RB also does not support the standard matrix math operations "MAT" that make ANSI BASIC a helpful{{Fact}} tool for the teaching of introductory programming concepts.
RB is a [[strongly typed]] language with minimal automatic type conversion, which supports [[single inheritance]] and [[Interface (computer science)|interfaces]], [[Class (computer science)|class]] [[Method (computer science)|methods]] and class properties, automatic memory management via [[reference counting]], and [[operator overloading]]. A very important feature is the ability to '''extend''' (not just [[Inheritance (computer science)|inherit]] from) existing classes, like [[Objective-C#Categories (Programming languages)|Objective-C Categories]]. This considerably reduces the need for the [[Abstract factory pattern|Abstract Factory Pattern]], which complicates using Application Frameworks in [[Java (programming language)|Java]] and [[C++]]. REALbasic also includes [[Delegation (programming)|delegates]], [[Introspection (computer science)|introspection]], and [[Namespace (computer science)|namespace]] support, which allows modules to contain classes, interfaces and other modules.
|