Recent Freeware: APL

Authors

Publication

Pub Details

Date

Pages

See all articles from QL Hacker's Journal 20

Richard Zidlicky has ported a version of APL to the QL. APL stands for A Programming Language. APL is known for being about the worst write-only language. APL uses special symbols as it’s operators. This means that it usually requires a special keyboard, thereby making it a language not easy to port. APL is also an interpreted language.

This particular version of APL is based on a freeware Unix version that does not use any special symbols, only the symbols in ASCII. This means that you can not type standard written APL code directly in to this APL. You have to do some converting first.

Since I have only used APL once in College, I really can’t say much about this port. It does seem to run with the example code provided with it. I tried to port over some APL code, but I did not know how to translate the funny symbols into the ASCII symbols. As I said, APL is not an easy language to deal with.

Below are a few examples of APL code that came with the interpreter.

a{1 2 3           C assign a vector to a
b{3 4 5 C b
a+b C skalar addition
aXb C mult
a%b C division
aJ.*b C inner produkt

now for a few matrix operations

a{4 4R16?17       C random matrix
L<bs>% C invert it
b{I4
x{bL<bs>%a C solve ax=b
(a+.Xx)-b         C .. is that true?
a{5 4R20?21      
Ra C now we have 5x4
b{I5

APL is designed for matrix operations and is great if you are doing some fairly complex math operations. I have a book on computer generated music which is based on APL. I’m sure the use of APL is limited in the QL community, but it is always nice to have another language for the QL.

This port of APL also comes with some Signal utilites written by Richard. Signals allow communications between processes. If this is something you are looking for, then pick up a copy of APL and get the utilities thrown in.

Products

 

Downloadable Media

 

Image Gallery

Scroll to Top