APL2 vs VSAPL 
Author Message
 APL2 vs VSAPL

Can anyone out there educate a poor backward waif as to the merits(or lack
thereof) of APL2 over VSAPL(a la IBM mainframe fame).  I've only used VSAPL
and am at present contemplating buying a package for my little machine at home.
I have a choice between an interpreter based on VSAPL(which I know) and one
that is based on APL2(which I know nothing about).

What's the difference - i.e. what does APL2 offer that VSAPL doesn't and what
(of significance) does it leave out.  I'm not interested so much in esoteric
changes I'll never bump into, but more of a broad description.  In other words
if I've been living happily in the land of VSAPL have I been living a deprived
and malnourished existence without even knowing it?  Are the two source code
compatible(i.e. do VSAPL programs run under APL2 - I assume the reverse is not
true)?

Thanks in advance.

--
------------------------------------------------------------------------------
Jeff Richards
Federal Government of Canada
Department of Environment
Atmospheric Environment Service
700 - 1200 West 73rd Avenue
Vancouver, BC  CANADA  V6P 6H9

Voice:    (604) 664-9140
Fax:      (604) 664-9195



UUCP:     aesyvr1!jeff - (604) 664-9135  Userid=uucp, Password=<none>

DOTS:     RICHARDSJ AT A1 AT AESVAN
------------------------------------------------------------------------------



Sat, 23 Sep 1995 19:51:49 GMT  
 APL2 vs VSAPL

Quote:


> -----------------------------------------

> I am most familiar with the mainframe situation, and will assume
> that the PC situation is broadly similar.

> The short answer is that APL2 is to VSAPL as VSAPL is to BASIC.
> Much of the hoop-jumping that you have to do in VSAPL is unnecessary
> in APL2.  There are three main features that distinguish VSAPL and APL2
> (actually, there are more, but some of the others might not yet be
> available on the PC):

> 1. generalized arrays
> 2. user-defined operators
> 3. user-defined functions as operands to operators.

This question is probably dumb, but what would be the significant difference
in being able to define an operator(your item #2) as opposed to defining a
function the old way.  I gather you're meaning that you can assign a symbol
on the keyboard to the function, but is there something of greater meaning
behind this.  I mean I could define a function RIGHTBRACE or use "}" but is
there more than this to it?

Otherwise your reply intrigues me to no end.  I've been told that IBM offers
something called TRYAPL2 which I'm going to have a peek at(a kind soul at
IBM has offered to send me an order form).  That'll probably let me see what
it's like before I shell out $$$.

Basically though, it sounds like I've been out of circulation for a while in
the world of APL.  I'd never heard of generalized arrays(<drool> <slobber>).

Does APL2 still rely solely on the Branch operator for flow of control or have
they added anything along the structured line of programming to the language?

--
------------------------------------------------------------------------------
|Jeff Richards                       |                                       |
|Federal Government of Canada        |  "Pardon me, but there is a multi-    |
|Department of Environment           |   legged creature crawling on your    |
|Atmospheric Environment Service     |   shoulder."                          |
|700 - 1200 West 73rd Avenue         |                     Spock.            |
|Vancouver, BC  CANADA  V6P 6H9      |                                       |
+------------------------------------+---------------------------------------+


+------------------------------------+---------------------------------------+
|UUCP:  aesyvr1!jeff                 | DOTS:     RICHARDSJ AT A1 AT AESVAN   |
|       (604) 664-9135               |                                       |
|       Userid=uucp/Password=<none>  |                                       |
------------------------------------------------------------------------------



Sun, 24 Sep 1995 19:38:54 GMT  
 APL2 vs VSAPL

Quote:
>What's the difference - i.e. what does APL2 offer that VSAPL doesn't and what
>(of significance) does it leave out.

APL2 adds many language features.  In a nutshell, they are:  support
for nested arrays, mixed data and complex numbers; new primitive
functions (pertaining to data structure, selection and position); new
system functions and system variables; defined operators; national
language support; new system commands.

APL2 also has enhanced system interfaces.  I'm not super familiar with
the PC version, but here is a list of the mainframe enhancements:
calls to ISPF, GDDM, SQL/DB2, and ESSL, calls to C/370, PL/I and
fortran and assembler routines, large workspaces on XA and ESA
systems, namespaces (encapsulated workspaces) and files as arrays.

Migrating to APL2 from VSAPL is generally trivial, but there are
a couple things to watch for, such as differences in quadAV and
how constant vectors are indexed ( 3 4 5[I] ).



Mon, 25 Sep 1995 20:38:13 GMT  
 APL2 vs VSAPL

Quote:


>> -----------------------------------------
>Does APL2 still rely solely on the Branch operator for flow of control or have
>they added anything along the structured line of programming to the language?

Unfortunately, APL still doesn't believe in control structures, in spite
of claims to the contrary by a number of posters here. Array semantics
and adverbs do indeed reduce the need for explicit loops. HOWEVER, that need
is STILL there.

J, however, does have control structures. See the Bernecky & Hui paper
"Gerunds and Representations" in ACM SIGAPL Quote Quad, August 1991.

We propose (and Roger implemented in J) control structures in APL which
are merely adverbs (Operators to the unwashed), and thereby do not require
any syntactic changes to the language. Gerunds, functions treated as
data, offer significant power (ability to compute on functions, for example),
and work well with these control structures.

The structures we propose fit very nicely on top of existing APL. It merely
waits for some APL implementer to go do it.
BOb


Snake Island Research Inc  (416) 368-6944   FAX: (416) 360-4694
18 Fifth Street, Ward's Island
Toronto, Ontario M5J 2B9
Canada



Fri, 29 Sep 1995 03:18:00 GMT  
 
 [ 4 post ] 

 Relevant Pages 

1. APL2 vs. C/C++ for estimating

2. Microcode Assist for VSAPL

3. Archiving VSAPL workspaces

4. APL2/2 to APL2/W95/NT

5. stdcall vs c vs cdecl vs pascal vs whosyerdaddy

6. 68K vs CFM68K vs Tk 8.0.3 vs AppearanceLib vs System 7

7. MASM vs TASM vs VC++ vs DJGPP vs A*^ vs PCC vs DEBUG,, "Hello World!"

8. MASM vs TASM vs VC++ vs DJGPP vs A*^ vs PCC vs DEBUG,, "Hello World!"

9. ST vs Java vs ST vs ....

10. API vs Internal vs Public vs Private in Envy/QA

11. VO vs DELPHI vs FOXPRO(Windows) vs DBASE(Windows)

12. Cellular automata benchmarks: Java vs C++ vs Java vs C++

 

 
Powered by phpBB® Forum Software