• DocumentCode
    324444
  • Title

    Leftover curry and reheated Pizza: how functional programming nourishes software reuse

  • Author

    Odersky, Martin ; Wadler, Philip

  • Author_Institution
    Univ. of South Australia, SA, Australia
  • fYear
    1998
  • fDate
    2-5 Jun 1998
  • Firstpage
    2
  • Lastpage
    11
  • Abstract
    Functional programmers and reuse engineers dine at the same table. Delicacies like type abstraction and higher order functions are meat and potatoes for those who need to reuse code parameterised by types and operations. The article starts with a review of modern functional languages. Isolation has given way to systems that interact with C and COM components. Code quality can rival C. Functional programs deliver calls in Brussels, route planes through Paris, and play CDs over networks at Cornell. The article then describes Pizza, an attempt to make functional ideas accessible to a wider community by embedding them in Java. Pizza contains Java as a subset, so it is easy to learn, and it compiles to the Java Virtual Machine, so it runs anywhere Java runs, including Web browsers. We focus on how Pizza is designed to add parametric types on top of existing Java libraries, enhancing reuse. Applications of functional languages have been described elsewhere (P. Wadler, 1998); the paper describes salient features of the latest version of Pizza
  • Keywords
    Internet; functional languages; functional programming; object-oriented languages; software reusability; COM components; Java Virtual Machine; Java libraries; Pizza; Web browsers; code quality; functional ideas; functional programming; higher order functions; modern functional languages; parametric types; reuse engineers; software reuse; type abstraction; Bridges; Functional programming; Isolation technology; Java; Law; Legal factors; Libraries; Pathology; Programming profession; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Reuse, 1998. Proceedings. Fifth International Conference on
  • Conference_Location
    Victoria, BC
  • ISSN
    1085-9098
  • Print_ISBN
    0-8186-8377-5
  • Type

    conf

  • DOI
    10.1109/ICSR.1998.685724
  • Filename
    685724