TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Ivan Todoroski
from: David Noon
date: 1999-01-13 21:29:06
subject: APL2 for OS/2

In a message dated 01-11-99, Ivan Todoroski said to David Noon about "APL2
for OS/2"

Hi Ivan,

IT>  OK guys, PL/I, APL? You got me interested! During this short period of
IT>  participating in this echo, I can see that you're very knowledgeable
IT>  people, and I'm sure you have some great reasons for using these
IT>  languages.

In my case, getting paid.

IT>  So, could you share them with the rest of us, please? :)

IT>  I've never seen those languages, and they have most probably been
IT>  created before I was born (1977). What ARE those languages exactly?

PL/I was developed during the mid-to-late 1960's as the successor to FORTRAN
IV (one of its working titles was FORTRAN 5) with all the facilities of
ALGOL 60 and COBOL, plus a few more that no other compiler languages had at
that time.

APL stands for "A Programming Language", which was the title of a research
paper by Dr. Kenneth Iverson of IBM. [I think he would have been in Murray's
neck of the woods: Yorktown Heights.] This was originally an abstract
language for teaching mathematics.

IT>  Are they compilers, interpretes?

PL/I is usually compiled. APL is invariably interpreted.

IT>  What are their features/highlights?

APL has more mathematical operators than most people could envisage. It has
its own character set, Z-code, as ASCII and EBCDIC didn't offer enough
obscure glyphs for all the operators.

APL also has no priority scheme for operators, and expressions are evaluated
right-to-left unless parentheses dictate otherwise. This is initially
counter-intuitive, but one becomes used to it and it offers some neat
facilities. It is more orthogonal a design than other languages that offer
assignment as an operator rather than a statement-forming operation.

PL/I has a huge grammar and can do almost anything.

IT>  Are they OO languages?

No, although PL/I for OS/2 and its Visual Age successor have class
definition capabilities as OO extensions. These extensions are not yet part
of the semi-official SAA standard grammar.

APL defies description in this regard.

IT>  Do they have static/dynamic/strong/weak typing?

PL/I has static weak typing with robust conversions. The table of conversion
rules in a PL/I manual will run a couple of pages.

APL has dynamic typing, typical of interpreted languages. It has much the
same conversion rules as FORTRAN 77.

IT>  How about dynamical storage? Do they have pointers like C, or do they
IT>  work on a higher abstract level like REXX?

APL handles storage allocation for you. You don't even know about it.

PL/I has 4 classes of storage, 3 of them dynamic. One is based on pointers,
and is called BASED. The others are AUTOMATIC, which is truly dynamic, in
the manner of the ALGOLs, and CONTROLLED, which is unlike any facility in
any other compiler language I know.

IT>  Could you provide some
IT>  examples of the most common data structures used when programming in
IT>  those languages?

APL deals only in arrays and scalars. It was developed to teach vector and
matrix algebra, and that is its forte.

PL/I deals with all sorts of things, including genuine self-defining
structures in the BASED class. Whatever you want to declare you can, more or
less.

IT>  Is the parameter passing to procedures any different
IT>  from languages like Pascal or C?

APL is different from anything else. It doesn't really define functions or
subroutines in the FORTRAN style, but each subprogram is an operator. This
means it can be monadic or dyadic, and that's your lot.

PL/I passes scalar parameters in the way as C or Pascal. It passes data
aggregates by means of locator/descriptor control blocks. This means that
parameters can be declared with unspecified array bounds and string lengths,
and these can be determined at run time. There are built-in functions for
enquiring about array bounds and string lengths.

IT>  And while you're at it, how do they fare compared to more popular
IT>  languages? Are they like C,C++, Pascal maybe? Or are they like REXX,
IT>  OREXX, or maybe even Java?

Classic REXX was derived largely from PL/I. If you make the statement
terminating semi-colons compulsory in REXX, you would have a fair visual
impression of PL/I. However, there are some semantic differences, in spite
of the strong syntactic resemblance.

IT>  Also, what are the differences between PL/I and APL?

They are totally unalike. APL is not like any other programming language I
have ever seen.

IT>  Any more info would be highly appreciated! I'm really interested, and
IT>  am always ready to learn something new...

IT>  Is there some INF file titled "PL/I Programming Guide and
Reference"
IT>  (or something to that effect) in your copy of "PL/I Personal
Edition"?
IT>  If so, could you zip it up and attach it via email?

There is a language reference manual in .INF format.

IT>  Same question for APL...

IT>  I also saw your complaints about the pricing of new versions of these
IT>  languages... is there some cheaper/older version? What about that
IT>  "Personal Edition" of yours, how much does that cost? And
where can it
IT>  be found?

The PL/I Personal Edition apparently can be found by enquiring on the
Internet at: [Mike Ruskai was also after this]

  help{at}releasesoft.com

The pricing should be about US$200, if previous versions are any guide.

I have never actually owned a copy of Personal Edition, as I need a more
fully featured compiler. Fortunately, I don't need the Y2K remediation tools
for Windows NT that distinguishes Enterprise Edition (US$3,000 or so) from
Standard Edition (no longer available).

Regards

Dave

___
 * MR/2 2.25 #353 * Is there a BBS-aholics Anonymous?

--- Maximus/2 3.01
* Origin: DoNoR/2,Woking UK (44-1483-717904) (2:440/4)
SEEN-BY: 396/1 632/0 371 633/260 262 267 270 371 635/444 506 728 639/252
SEEN-BY: 670/218
@PATH: 440/4 255/1 251/25 396/1 633/260 635/506 728 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.