Iverson's original APL was a notation for doing linear algebra. To make it a general purpose programming language, it had to be extended significantly. As a result, each commercial flavor of APL is rather different. I found APLX the easiest to understand and APL+Win the hardest, with Dyalog somewhere in between. APLX was a commercial product but is now free and is hosted on the Dyalog site. Another good one to start with is IBM's APL2. The demo version is full featured but time limited. It looks old, but has a well designed interface and good learning materials.