Newsgroups: comp.lang.apl
Path: watmath!watserv2.uwaterloo.ca!torn!cs.utexas.edu!uunet!elroy.jpl.nasa.gov!jato!csi!sam
From: sam@csi.jpl.nasa.gov (Sam Sirlin)
Subject: Re: Saplpc vs Inverson vs J
Message-ID: <1992Nov19.224832.28873@csi.jpl.nasa.gov>
Originator: sam@kalessin
Sender: usenet@csi.jpl.nasa.gov (Network Noise Transfer Service)
Nntp-Posting-Host: kalessin
Organization: Jet Propulsion Laboratory, Pasadena, CA
References:  <1992Nov19.203203.11732@mnemosyne.cs.du.edu>
Date: Thu, 19 Nov 1992 22:48:32 GMT
Lines: 67


In article <1992Nov19.203203.11732@mnemosyne.cs.du.edu>, alaroy@nyx.cs.du.edu (Andrew LaRoy) writes:

|> What differences (other than speed and documenttion, as mentioned in the
|> guide to low cost apl's a while back) are there between saplpc and the
|> inversion version.  I am interested in whether or not the extra expense is
|> worth it.  

The major difference I can see is  in available ws size. Is making the
ws limit equal to what the machine has worth $30? I'd say so.
Especially since APL programming style tends to lead to large arrays. 

|> Also, other than the fact that the keyboard is not goofey (at
|> least to a new apl user) what are the advantages / disadvantages of J as
|> opposed to apl.
|> The applications I forsee using apl for are physics lab computations
|> (which I currently complete on a spreadsheet - yuck) and integration of
|> ugly intigrals using brute force.

APL or J can easily do these. Here are some comments:

Advantages of J

availability: source, compiles on probably any machine with C.
portability: the basic program and data storage can be readable ASCII
 script  files, which can be sent anywhere (well,... taking special
 precautions  for IBM mainframes...).
cost: this is probably a wash for pc's, but not so for anything else -
 APLs are typically $Ks for sun's, while J is still free.
standardization: there's only one J I know of, but when it comes to
 arrays of arrays, most apls dissagree (on many other less fundamental
 things as well). This obviously has a big  impact on portability.

Dissadvantages of J

character set: it isn't very nice compared to APL's. I really miss
 times and divide...
speed: I'd guess APLI386 is faster. I haven't tested them though...
programming style: this could be an advantage or dissadvantage
 depending on your point of view. I'd say it's much more
 foreign to a new user than "normal" APL (e.g. selective reassignment
 doesn't exist in J).  
available code: there's more existing stuff written in APL.
 On the other hand it may not be easy to get ahold of electronically. 
available literature: lots more for APL. 
stability: J is still evolving, so current features may dissapear,
 or change, others appear, etc.

Recommendation:
(I assume you have a 386 box)
If you're balking at $30, go for the free APLs and borrow some books
from the library to learn to use them. Ask someone local to help get
you started if you can find an APLer. If you find you can't stand APL,
then you're not out anything, and you probably won't like J either. 

If you a little money, go for APLI386 next if you find yourself
somewhat cramped. Only once you are familiar with APL and if you
really like "neat" mathematical things that take some effort (do you
like Rubick's cube? [this is probably a prerequisite for likeing APL
as well]) would I recommend you get J (definitely get all the
documentation as well though).  

I guess that's enough for now...
-- 
Sam Sirlin
Jet Propulsion Laboratory         sam@kalessin.jpl.nasa.gov

