skip to main content
column
Free Access

Ode or Code? Programmers be Mused!: Is your code literate or literary?

Published:01 April 2007Publication History
Skip Abstract Section

Abstract

My sermon-text this grumpy month is Matt Barton’s article “The Fine Art of Computer Programming”, in which he extols the virtues of what is widely called literate programming. As with the related terms literary and literature, we have ample room for wranglings of a theological intensity, further amplified by disputes inherent in the questions: “Is computer science or art?” and “What do programmers need to know?” Just as we must prefer agile to clumsy programming, it’s hard to knock anything literate. Competing methods tend to sound, like, man, kinda illiterate, a term with such a bad reputation that cultures that have not yet invented or borrowed a writing system are called preliterate.

References

  1. Dijkstra, E.W. 1975. How do we tell truths that might hurt? http://www.cs.utexas.edu/users/EWD/transcriptions/EWD04xx/EWD498.html.Google ScholarGoogle Scholar
  2. ibid.Google ScholarGoogle Scholar
  3. ibid.Google ScholarGoogle Scholar
  4. The frisky "horses-for-courses" idiom may not have galloped beyond Albion's shores. Even Brits use it without due process. It simply states the obvious: that objects may be differentiated ontologically by their innate purposefulness. Easy for me to say. Liverpool Dock Road cart horses do not win the Pimlico Special. Seabiscuit never hauled a ton of stolen coal. Pascal, some claimed, was a "teaching" language. C, others claimed, was "unteachable," acquired through trial and error, chiefly error.Google ScholarGoogle Scholar
  5. Kelly-Bootle, S. 1995. The Computer Contradictionary. Cambridge: The MIT Press. My entry at Extended Basic gives the unexpurgated version. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. A clever, illiterarily back-formed noun from the more familiar adjective infamous. This reminds me that my current bete noire is the overuse of famously, as in "As Churchill famously remarked.."Google ScholarGoogle Scholar
  7. In keeping with my subject matter, fatidic is a more elitist, literary choice than prophetic. Was Orwell's pessimism ill founded? I leave it to my readers to decide.Google ScholarGoogle Scholar
  8. Kelly-Bootle, S. 1988. 680x0 Programming by Example. Indianapolis: Howard W. Sams & Company. I find that I wrote in the introduction, "..one of the objects of the book is to improve your reading skills!"Google ScholarGoogle Scholar
  9. Well-versed readers will know that Finnegans Wake is fond of an APL anagram: ALP crops up as Anna Livia Plurabelle. LitCritters get quite excited over such minutiae. I must confess my analogy is imperfect. APLers will rush to tell me that the garrulous, circular Finnegans Wake (it opens with "riverun" and ends with "the"---a sort of GOTO START endless loop) can be expressed in just three lines. Dijkstra's spin was quite acerbic: "APL is a mistake, carried through to perfection. It is the language of the future for the programming techniques of the past: it creates a new generation of coding bums."Google ScholarGoogle Scholar
  10. Peder Zane, J. 2007. The Top 10: Writers Pick Their Favorite Books. New York: W.W. Norton.Google ScholarGoogle Scholar
  11. ibid.Google ScholarGoogle Scholar
  12. Giguette, R. 2006. Building objects out of Plato: Applying philosophy, symbolism, and analogy to software design. Communications of the ACM 49(10): 66-71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. McGrath, R.E. 2007. Programs are not literature, even by analogy. Communications of the ACM 50(1): 11.Google ScholarGoogle Scholar
  14. Naur, P. Computing versus human thinking. 2007. Communications of the ACM 50(1): 85-94. Well worth the reading effort. Improve your command of NL and your ability to detect and possibly ignore the odd whiffs of justified, cranky victimhood. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Ode or Code? Programmers be Mused!: Is your code literate or literary?

      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

      Full Access

      • Published in

        cover image Queue
        Queue  Volume 5, Issue 3
        DNS
        April 2007
        39 pages
        ISSN:1542-7730
        EISSN:1542-7749
        DOI:10.1145/1242489
        Issue’s Table of Contents

        Copyright © 2007 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: 1 April 2007

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • column
      • Article Metrics

        • Downloads (Last 12 months)212
        • Downloads (Last 6 weeks)43

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format