on Tuesday, September 29, 1998, 6:30pm at the Rogers Communication Centre, Ryerson University, (corner of Gould & Church streets) Eaton Lecture Theatre - room V204 (2nd floor, west end of building) *Note - change of date and room from previous announcements The Toronto APL Special Interest Group presents: "All Roads Lead to Rome - Some Highlights of APL 98" Our September meeting features talks and highlights from the recent APL98 conference in Rome. Speakers: Robert Bernecky - APL98 Program Co-Chair, Snake Island Research Dr. Sven-Bodo Scholz - Dept. of Computer Science, University of Kiel Talks: 1. Highlights of APL 98 Robert Bernecky The next two talks look at techniques for compiling and optimizing array operations. 2. SAC as a Meta-Level Language for Compiling APL Sven-Bodo Scholz 3. Reducing Computational Complexity with Array Predicates Robert Bernecky Abstracts: 1. Highlights of APL 98 - Robert Bernecky Bob will give us a whirlwind tour of some of his favorite talks from APL 98, and perhaps comment on Roman summer weather and night-life. 2. SAC as a Meta-Level Language for Compiling APL Sven-Bodo Scholz "In this talk Dr. Scholz gives us an introduction to SAC (Single assignement C). On top of a purely functional subset of C, SAC provides an array concept for specifying array operations irrespective of the rank of argument arrays. A few examples show that the high-level operations that are typically available in array processing languages such as APL or Fortran90 can be easily specified in SAC by using a special language construct, the so-called with-loop. The most important optimization techniques used in the current SAC compiler are outlined. "Finally, a performance comparison between a SAC, a Fortran77, and a SISAL implementation for a 3D multigrid relaxation is presented. It shows that the SAC implementation, despite its higher level of abstraction, is competitive with the other two both in terms of program runtimes and memory consumption." 3. Reducing Computational Complexity with Array Predicates Robert Bernecky "This talk describes how "array predicates" are used to reduce the computational complexity of four APL primitive functions when one of their arguments is a permutation vector. The search primitives, "indexof" and "set membership", and the sorting primitives, "upgrade" and "downgrade", execute in linear time on such arguments. Our contribution, a method for static determination of array properties, lets us generate code that is optimized for special cases of primitives. Our approach eliminates run-time checks which would otherwise slow down the execution of all cases of the effected primitives. We use the same analysis technique to reduce the type complexity of certain array primitives." ================================================================ Free Admission