 |
APL-ASCII Transliteration
Describes how {keywords} came to be. Why I did certain things and not
others.
|
 |
 |
APL-ASCII Workspace Transfer
How to move programs and data from one APL to another using {keywords}.
|
 |
 |
APL Compiler
APL is usually interpreted, meaning that the APL system parses and
translates each statement every time it is executed, resulting in gross
inefficiency for certain types of programs. This article describes a
true APL compiler, which translates APL statements to IBM 370 machine
code for faster execution.
|
 |
 |
APL Compiler Example
An example of how a compiler can radically alter the range of practical
algorithms in APL. With benchmarks.
|
 |
 |
APL79 Back Cover
Reverse-engineering a
message in a bottle that was adrift for 16 years.
|
 |
 |
Ball Clock Problem
The most amazing programming puzzle I've ever seen. Read it and
learn what permutation vectors, cyclic representations of permutations,
least common multiples, permutation powers and logs, and the Chinese
Remainder Theorem have to do with a goofy clock.
|
 |
 |
Benchmarks of APL vs. Other Languages
The answer is never a scalar...
|
 |
 |
Beware Selective Assignment
What APL vendors don't want you to know about selective assignment! This
article explains how to avoid slowdowns and excessive memory usage when
using selective assignment.
|
 |
 |
Binomial Coefficient Puzzler  
Another fine puzzle that lead into factoring, prime numbers, and the
prime powers representation of numbers. Includes assembler-based
utilities for factoring and finding primes. I'm still looking for Larry
Breed's A!B algorithm...
|
 |
 |
Blob Finder  
A classic image processing problem: find the connected 1s in a Boolean matrix.
|
 |
 |
Bridge Crossing Puzzler  
It was a dark and stormy night, and four men had to get across a bridge.
An interesting programming problem, though not as deep as some of the other
puzzles here.
|
 |
 |
File Key Indexing
How to efficiently build a directory to the keys in a file.
|
 |
 |
Function Comparison Utility
An extremely useful program--an APL version of the Unix diff command.
|
 |
 |
Function Minimization
An APL version of the Nelder-Meade downhill simplex method, with
an example.
|
 |
 |
Gaussian Random Numbers
A utility to generate random numbers having a Gaussian normal
distribution, along with some references about APL's random number generator.
|
 |
 |
Global Variables
On the uses of global variables and precautions for the safe use
thereof.
|
 |
 |
Good Code, Bad Code, and Looping
I rant and rave.
|
 |
 |
Hex Dump
A simple demonstration program, one step up from "Hello World".
|
 |
 |
Indexing Questions FAIQ
|
 |
 |
Inverse F Distribution
A statistical utility.
|
 |
 |
Large vs. Small Functions
More ranting and raving.
|
 |
 |
Locking Native Files
A utility function for applying DOS or Windows locks to
files (something that's needed when sharing files under Windows).
|
 |
 |
MATIOTA Function
A fundamental and indispensible utility function.
Now with assembler source code!
|
 |
 |
MIME, uuencode, etc.
Basic information, links, and translators.
|
 |
 |
Multivariate Polynomials
Including the longest line of code I've written in years.
|
 |
 |
Non-Exponential Formatting
How to avoid seeing E in your numbers. A useful utility function; a
rather hairy piece of advanced APL programming.
|
 |
 |
Permutations and Anagrams
Includes efficient subroutines for generating permutations.
|
 |
 |
Pushbutton Lock Puzzle
How the right data representation can make or break an algorithm.
|
 |
 |
Rubik's Cube
No, I don't solve the rude brick. This article is about efficiency,
optimization, and hybrid (mixed-language) programming. It also has
tutorial information about multidimensional arrays.
|
 |
 |
Set Game Puzzler
My original solution as posted to comp.lang.apl. Includes a subroutine
for generating combinations, and benchmarks of APL vs. J.
|
 |
 |
Set Game Tutorial
A good demonstration
of APL's facility at handling multidimensional arrays. Includes an
explanation of the solution for APL novices.
|
 |
 |
Spelling Numbers
A simple utility that would be a good introductory tutorial if I added a
step-by-step trace. For now, you'll have to practice reading APL code.
|
 |
 |
StepView Debugger
This is another indispensible utility that my colleagues and I rely on.
|
 |
 |
Sunrise/Sunset, Moonrise/Moonset
APL versions of two utility programs from Sky & Telescope magazine.
|
 |
 |
32-bit to 64-bit Real Conversion
A useful program along with some information on modelling execution
time.
|
 |
 |
User Command Processor
Probably my most useful tool, one that I use many times an hour when
programming.
|
 |
 |
Word Wrap Puzzle
Includes Bob Smith's incredible domino-based solution.
|
 |