[3346] in comp.os.os2.announce archive
FREEWARE: Free "Special edition of Object Rexx for Warp 3"
daemon@ATHENA.MIT.EDU (Rony G. Flatscher)
Fri Sep 5 04:27:17 1997
To: os2ann.DISCUSS@bloom-picayune.MIT.EDU
Date: 05 Sep 1997 01:02:00 -0400
From: Rony.Flatscher@wu-wien.ac.at (Rony G. Flatscher)
Reply-To: Rony.Flatscher@wu-wien.ac.at (Rony G. Flatscher)
Reply-to: Rony.Flatscher@wu-wien.ac.at (Rony G. Flatscher)
[Followups directed to comp.os.os2.programmer.tools]
---------------------------------------------------------------------
Just learned that:
IBM has released a free "special edition of Object REXX for Warp 3" users.
To look for it go to Object REXX' homepage at:
http://www2.hursley.ibm.com/orexx/
or use M.F. Cowlishaw's excellent REXX homepage as a starting point to link to
it at:
http://www2.hursley.ibm.com/rexx/
or use the RexxLA ("Rexx Language Association") as a starting point to link to
it at:
http://www.RexxLA.org/
---
Follow either link to "Object REXX on OS/2 Warp 3.0 - SPECIAL EDITION - August
27, 1997" and you'll get to the US download page.
[There are nice tutorials on Object REXX there as well as links to Object REXX
books.]
So customers and ISVs wanting to deploy their Object REXX programs not only
under Warp 4, but also under Warp 3 may do so now.
For Object REXX novices there is a small (but excellent) on-line tutorial
enclosed which is named "REXXPG.INF" together with short examples of what one
can do with OO-stuff available in REXX now.
---
[Object REXX is OO-oriented from the ground up, but the usage of its powerful
OO-concepts is optional.]
Classic REXX programs keep running and there are additional features
available, like:
- passing stems by *REFERENCE*
- defining procedures/functions as "public routines" makes them
callable directly from other REXX programs, so one can devise
modules of useful functions/procedures and keep them in one place
(instead of copying them physically from program to program)
- calling procedures/function by variable (which contains the label to
be called; results of functions called this way are stored as with
classic REXX in the system set variable "result")
- added functionality in REXXUTIL.DLL (e.g. high resolution timing
with SysElapsedTime; others like SysBootDrive, SysProcessType,
SysSetPriority, SysOpenMutexSem, SysOpenEventSem,
SysNationalLanguageCompare, SysAddRexxMacro, SysSaveRexxMacroSpace,
SysQuerySwitchList, SysQueryEAList and the like). together with a
little Easter egg allowing fractions of seconds in SysSleep
- having the entire program syntax-checked before executing it (this
is to make sure that the programs are really error-free w.r.t. the
syntax, something usually compilers do)
- extensive error-reporting adding additional error messages
explaining the problem more concrete
- one can hide the source code by running "rexxc" (a tokenizer), but
tokenized programs cannot run under classic REXX, only under Object
REXX (tokenized image structure changed a lot under the hoods)
- ...
--------
The OO-features in overview:
- multiple inheritance
- class and instance methods and variables
- classification tree implemented as class objects
- multithread support out of the box (intra-object and inter-object
concurrency)
- collection classes pre-defined
- interpreter allows for creating classes, methods, messages at
runtime
- powerful UNKNOWN-method, FORWARD keyword instruction
- ...
For sending messages to objects a new message-send operator - a "Twiddle" (~)
- has been introduced.
Object REXX is to C++ what REXX was to C, extremely easy to use and very
powerful (mostly due to the simple syntax, partly due to being an
interpreter).
If one mastered the OO-paradigm, sending messages around objects is just
peanuts with Object REXX.
-------------
Thought to share these great news about IBM's Object REXX and Warp 3.
---rony
_____________________________________________________________________
| NOTE: Please send submissions by EMAIL os2_ann_req@bix.com
| Correspondence to the COOA Moderator: lfirrantello@bix.com .
| Please see: http://www.bix.com/pub/os2ann/pindex.htm for posting guidelines