On 11/14/2021 2:58 AM, Sahananda Sahananda wrote: > ooRexx checks syntax before running the code, so classic rexx > interpreters can tolerate syntax errors in lines of code that are never > interpreted, whereas ooRexx will inform you of those errors and not run.
Whoa, that's something I missed in my post about this way back and somehow never filled in before. Classic Rexx never has to scan to the end of the file unless you call a routine that it doesn't find internally. Object Rexx has to scan the entire file for any ::OPTIONS and ::REQUIRES directives to process before it can start executing the main routine. My old post: Back in 2012 in message <z9kdnuexgraicb7nnz2dnuvz_todn...@bestweb.net> I wrote: [There's just] one substantial incompatibility: When a stem is assigned to another stem, in Object Rexx the entire stem object is assigned rather than just the default value. To make your code compatible, you need to put the value being assigned into an expression that will cause it to be evaluated as a string. The simplest way is to concatenate it with the null string: x. = y.'' /* x. = y. would assign the stem object in Object Rexx */ z. = f(x)'' /* f(x) *might* return a stem object in Object Rexx */ The one other incompatibility you might run into, depending on what Rexx version you've been using, is the line comment syntax. ooRexx takes "--" and anything following it as a comment. If you build expressions for INTERPRET and need to allow for subtracting negative numbers, you'll have to be sure to pad your minus signs with blanks: Say 2 - - 2 /* says 4 */ Say 2--2 /* says 2 in ooRexx */ ¬R _______________________________________________ Oorexx-users mailing list Oorexx-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-users