skip to main content
10.1145/166197.166201acmconferencesArticle/Chapter ViewAbstractPublication PagesaplConference Proceedingsconference-collections
Article
Free access

The role of APL and J in high-performance computation

Published: 01 September 1993 Publication History

Abstract

Although multicomputers are becoming feasible for solving large problems, they are difficult to program: Extraction of parallelism from scalar languages is possible, but limited. Parallelism in algorithm design is difficult for those who think in von Neumann terms. Portability of programs and programming skills can only be achieved by hiding the underlying machine architecture from the user, yet this may impact performance on a specific host.APL, J, and other applicative array languages with adequately rich semantics can do much to solve these problems. The paper discusses the value of abstraction and semantic richness, performance issues, portability, potential degree of parallelism, data distribution, process creation, communication and synchronization, frequency of program faults, and clarity of expression. The BLAS are used as a basis for comparison with traditional supercomputing languages.

References

[1]
Philip Abrams. An APL Machine. PhD thesis, Stanford University, 1970.
[2]
j.R. Allen, K. Kennedy, C. Porterfield, and J. Warren. Conversion of control dependence; to data dependence. In Proceedings of the Principles of Programming Languages Conference, 1983.
[3]
APL2 Programming: Language Reference. 1987. SH20-9227.
[4]
Jon Bentley. Programming pearls. Communications of the ACM, 20(8), July 1983.
[5]
Jon Bentley. Programming pearls. Communications of the A CM, 20(9), August 1983.
[6]
Robert Bernecky. Function arrays. ACM SIGAPL Quote Quad, 14(4), June 1984.
[7]
Robert Bernecky. APL: a prototyping language. A CM SIGAPL Quote Quad, 16(4), July 1986.
[8]
Robert Bernecky. An introduction to function rank. A CM SIGAPL Quote Quad, 18(2), December 1987.
[9]
Robert Bernecky. Fortran 90 arrays. ACM SIGPLAN Notices, 26(2), February 1991.
[10]
Robert Bernecky. Fortran 90 arrays. APL- CAM Journal, 13(4), October 1991. Originally appeared in ACM SIGPLAN Notices, 26(2), February 1991.
[11]
Robert Bernecky. Array morphology. ACM SIGAPL Quote Quad, 24(1), August 1993.
[12]
Robert Bernecky and R.K.W. Hui. Gerunds and representations. ACM SIGAPL Quote Quad, 21(4), July 1991.
[13]
Robert Bernecky and Kenneth E. Iverson. Operators and enclosed arrays. In APL Users Meeting 1980, I.P. Sharp Associates Limited, 1980.
[14]
Lloyd W. Campbell, editor. Fortran 88: A Proposed Revision of FORTRAN 77. ISO/IEC JTCI/SC22/WG5-N357, March 1989.
[15]
David Cann. Retire Fortran? A debate rekindled. Communications of the A CM, 35(8), August 1992.
[16]
M.J. Dayd6 and I.S. Duff. Use of parallel level 3 BLAS in LU factorization on three vector multiprocessors- the Alliant FX/80, the CRAY-2, and the IBM 3090VF. 1990 h~ternational Conference on Supercomputing, June 1990.
[17]
J.J. Dongarra, Jeremy Decroz, Sven Hammarlung, and Ian Duff. A set of level 3 basic linear algebra subprograms. A CM Transactions on Mathematical Software, 16(1 ), March 1990.
[18]
Roger K.W. Hui, Kenneth E. Iverson, and Eugene E. McDonnell. Tacit programming. ACM SIGAPL Quote Quad, 21 (4), August 1991.
[19]
John L. Hennessy and David A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kauffman, 1990.
[20]
Susan Flynn Hummel, Edith Schonberg, and Lawrence E. Flynn. Factoring: a method for scheduling parallel loops. Communications of the A CM, 35(8), August 1992.
[21]
Kenneth E. Iverson. A Programming Language. Wiley, 1962.
[22]
Kenneth E. Iverson. Programming in J. 1991.
[23]
Kenneth E. Iverson. A Dictionary of J. J version 5 edition, 1992.
[24]
McGraw J.R, S.K. Skedzielewski, S.J. Allen, R.R. Oldehoeft, J. Glauert, C. Kirkham, W. Noyce, and R. Thomas. SISAL: Streams and Iterations in a Single-Assignment Language, Language Reference Manual. Technical Report M-146, Revision 1, Lawrence Livermore National Laboratory, March 1985.
[25]
F. Thomson Leighton. Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann, 1992.
[26]
C.L. Lawson, R.J. Hanson, D.R. Kincaid, and F.T. Krogh. Basic linear algebra subroutines for FORTRAN usage. A CM Transactions on Mathematical Software, 5(3), September 1979.
[27]
D.B. McIntyre. Language as an intellectual tool: from hieroglyphics to APL. IBM Systems Journal, 30(4), 1991.
[28]
Eugene E. McDonnell and Kenneth E. Iverson. Phrasal forms. A CM SIGAPL Quote Quad, 19(4), August 1989.
[29]
M.V. Morreale and M. Van Der Meulen. Primitive Function Performance of APL2 Version 1 Release 3 (with SPE PL34409) on the IBM 3090/S Vector Facility. Technical Report Technical Bulletin No. GG66-3130-00, IBM Washington Systems Center, IBM Corporation, May 1989.
[30]
Alan J. Perlis. Programming with idioms in APL. A CM SIGAPL Quote Quad, 9(4), June 1979.
[31]
SHARP APL Reference Manual. Reuters Information Services (Canada) Limited, Toronto, Canada, 2nd edition, 1991.
[32]
SHARP APL Reference Manual. iverson Software Inc., 33 Major St., Toronto, Canada, 2nd edition, 1993.
[33]
Bob Smith. Nested arrays, operators, and fufictions. ACM SIGAPL Quote Quad, 12(1), September 1981.
[34]
Guy L. Steele Jr. High performance Fortran: status report. A CM SIGPLAN Notices, 28(1), January 1993.
[35]
Harold S. Stone. High-Performance Computer Architecture. Addison-Wesley, 1987.
[36]
David W. Wall. Limits of instruction-level parallelism. In Proceedings ofASPLOS, 1991.
[37]
R.G. Willhoft. Parallel expression in the APL2 language. IBM Systems Journal, 30(4), 1991.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
APL '93: Proceedings of the international conference on APL
September 1993
325 pages
ISBN:0897916123
DOI:10.1145/166197

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 1993

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

APL93
Sponsor:
APL93: International Conference on APL
August 15 - 19, 1993
Ontario, Toronto, Canada

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)88
  • Downloads (Last 6 weeks)27
Reflects downloads up to 29 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media