Subj : Apl2 For Os/2 To : Mike Luther From : Murray Lesser Date : Sun Jun 03 2001 05:07 am (Mike Luther wrote to Murray Lesser on 06-02-01, topic: "Apl2 For Os/2") Hi Mike-- The "ML>" in the following quote is me! The rest are you. ML> APL (A Programming Language) has been around since the 1960s (about ML> the same age as PL/I!). It is known in some circles as a "write only" ML> language, because it is so concise, and uses such a strange symbol ML> set, that not even the people who wrote the program can read it later. ML> Its great strength is matrix and vector manipulation, but I've seen it ML> used to interrogate data bases, something I'd rather do with REXX. Like ML> REXX, APL was designed, ab initio, to be an interpreted language, but > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ML> that is the only thing the two languages have in common. ML>Thus APL2 could be a way to do that part of the work, I >suspect, from what has been learned here, in a better way. ML>But as to the fact that it is still an interpreter based game, if >you have to wait to load an application with it everytime you go to >use it, and that means everytime you run the suite for each >module, that's, from a practical standpoint, near useless. >No user who needs the ordinary data from the suite will >ever wait more than a second or so, willingly, without >thumbing down a computer program product. ML>Specifically, as to OS/2 and APL2, I learned some more! >The only operating system in which the interpreter is sold >separately is the WINDOWS game!... Don't knock interpreters. It depends on the language design, and also how the interpreter is written. Some of the REXX (and APL) constructs require very late binding. So compiled versions may be slower, if they manage to include all the language functions. David Noon once wrote that he had run the same REXX program, on the same hardware, once compiled and once interpreted. The interpreted version ran faster! David must have been using a _real_ compiler. The so-called compiler versions of REXX for microprocessors that I know (they produce programs with an .EXE extension) merely wrap the interpreted program so that the user can't read the source code without a disassembler :-(. There were some early attempts at writing a _true_ APL compiler in IBM Research, but none of them were successful. (What with the rise of OOP languages, compiler writers have learned to handle late-binding constructs without too egregious a performance loss.) I have no idea as to whether the one your correspondent talked about for Windows was a _true_ compiler that was capable of executing all the APL late-binding functions. However, everything runs slower under Windows, so Windows users wouldn't know any better if they were stuck with a late-binding compiled version of APL :-) Regards, --Murray ___ * MR/2 2.30 #120 * Curiouser and curiouser. --- Maximus/2 3.01 * Origin: COMM Port OS/2 juge.com 204.89.247.1 (281) 980-9671 (1:106/2000) .