skip to main content
10.1145/800117.803777acmconferencesArticle/Chapter ViewAbstractPublication PagesaplConference Proceedingsconference-collections
Article
Free Access

What's wrong with APL?

Published:11 June 1975Publication History

ABSTRACT

Throughout history, every time a new idea has come along there have been many people quick to criticize it. As often as not, such criticism has come from detractors of the idea, and has been motivated by its threat to older, more established beliefs. The Biblical prophets, Socrates, Jesus, Copernicus, Galileo, Pasteur, Marx, Darwin, Stravinsky, and countless others, all experienced resistance to their ideas for essentially emotional rather than intellectual reasons.

From its early days as “Iverson Notation” through its more recent development, APL has been the target of heated discussion. This paper is a criticism of APL, but I believe, different from others. I am not a detractor of APL; in fact, I have been a supporter, developer, and promoter of the language for quite some time. Therefore, the intention of this review is not to suggest that since APL has faults it is worthless. To the contrary, I hope that these comments will lead to further improvements of APL and perhaps suggest some of the directions to consider in the development of its successors.

This paper could not have been written much earlier. It is because APL has come of age, both in the theoretical domain and in the commercial world, that it is possible to look at it publicly with a critical eye.

The discussion that follows is written for the APL community, present and future. My wish is that APL “believers” will accept this analysis in the constructive spirit in which it is offered, and that those who still do not appreciate the beauty, elegance, and practical power of APL will not take these comments out of the context in which they are presented.

References

  1. 1.P. S. Abrams, An Interpreter for "Iverson Notation", Tech. Rept. CS47, Computer Science Dept., Stanford University (1966) Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2.P. S. Abrams, An APL Machine, Ph.D. Dissertation, Stanford University (1970) Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.P. S. Abrams, "Program Writing, Rewriting, and Style", APL Congress 73 (1973) 1-8Google ScholarGoogle Scholar
  4. 4.J. A. Brown, A Generalization of APL, Ph.D. Dissertation, Syracuse University (1971)Google ScholarGoogle Scholar
  5. 5.O.-J. Dahl, E. W. Dijkstra, and C. A. R. Hoare, Structured Programming, London: Academic Press (1972) Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6.E. W. Dijkstra, "The Humble Programmer", Communications of the ACM, 15, 10 (October 1972) 859-866 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.E. M. Edwards, "Generalized Arrays (Lists) in APL", APL Congress 73 (1973) 99-105Google ScholarGoogle Scholar
  8. 8.A. D. Falkoff and K. E. Iverson, APLSV User's Manual, Philadelphia: IBM 1973Google ScholarGoogle Scholar
  9. 9.S. L. Gerhart, Verification of APL Programs, Ph.D. Dissertation, Carnegie-Mellon University (1972) Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10.Z. Ghandour and J. E. Mezei, "General Arrays, Operators and Functions", IBM Journal of Research and Development, 17, 4 (July 1973) 335-352Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.L. Gilman and A. J. Rose, APL - An Interactive Approach, New York: John Wiley & Sons, Inc. (1974) Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.P. Gjerløv, H. J. Helms, and J. Nielsen, APL Congress 73, Amsterdam: North-Holland Publishing Co. (1973)Google ScholarGoogle Scholar
  13. 13.L. R. Harris, "A Logical Control Structure for APL", APL Congress 73 (1973) 203-210Google ScholarGoogle Scholar
  14. 14.K. E. Iverson, A Programming Language, New York: John Wiley & Sons, Inc. (1962) Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.K. E. Iverson, Elementary Functions: An Algorithmic Approach, Chicago: Science Research Associates, Inc. (1966)Google ScholarGoogle Scholar
  16. 16.R. A. Kelley, "APLGOL, An Experimental Structured Programming Language", IBM Journal of Research and Development, 17, 1 (January 1973) 69-73Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.R.H. Lathwell, and J. E. Mezei, "A Formal Description of APL", Colloque APL, Paris: IRIA (1971)Google ScholarGoogle Scholar
  18. 18.D. McCracken, "Whither APL", Datamation, 16, 11 (15 September 1970) 53-55Google ScholarGoogle Scholar
  19. 19.E. E. McDonnell, "Complex Floor", APL Congress 73, (1973) 299-305Google ScholarGoogle Scholar
  20. 20.T. More Jr., "Axioms and Theorems for a Theory of Arrays", IBM Journal of Research and Development, 17, 2 (March 1973) 135-175Google ScholarGoogle Scholar
  21. 21.R. C. Murray, "On Tree Structure Extensions to the APL Language", APL Congress 73, (1973) 333-338Google ScholarGoogle Scholar
  22. 22.T. H. Puckett, "Improved Security in APL Application Packages", Proceedings of the Sixth International APL Users' Conference, Coast Community College District (1974) 438-441 Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.A. J. Rose, "More About Multi-Adic Functions", APL Quote Quad, 2, 6 (March 1971) 3-4Google ScholarGoogle Scholar
  24. 24.L. Ryan, "Secure Applications Within an APL Environment", APL Congress 73 (1973) 407-414Google ScholarGoogle Scholar

Index Terms

  1. What's wrong with APL?

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      APL '75: Proceedings of seventh international conference on APL
      June 1975
      390 pages
      ISBN:9781450374200
      DOI:10.1145/800117

      Copyright © 1975 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 11 June 1975

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader