Notation for Parallel Thought

Since the original APL\360 interpreter saw the light of day in 1966, a large part of the of primitive functions in APL (A Programming Language) implicitly map operations to all elements of array arguments (and arrays of numbers or characters are the only “types” available in the language). Over the decades, the parallelism at the core of the notation has been extended, to nested arrays in the 80’s and arrays of objects in the 00’s. In this decade, arrays of futures have been added to provide users of APL with the ability to express asynchronous – but deterministic -algorithms.

This talk will introduce the most important parallel constructs available in current Dyalog APL, which (despite the name) essentially remains an executable mathematical notation.

 
1 favorite thumb_down thumb_up 0 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

The talk will review the original parallel constructs in 1966 APL, and the extensions that have been made during the first decade of APL. It will be similar to my keynote at Array'16, but with more focus on a comparative discussion of the parallel features of the language from a user perspective and less focus on implementation.

Learning Outcome

An understanding of the parallelism available in the APL language.

Target Audience

Anyone interested in functional array-oriented parallel programming

schedule Submitted 10 months ago

Comments Subscribe to Comments

comment Comment on this Proposal