Skip to main content

TIP in Haskell — another exercise in functional programming

  • Conference paper
  • 67 Accesses

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

Several years ago, Peyton Jones [3] tested some of the claims made for functional programming by re-implementing a well-known parser generator (YACC) in a lazy functional language (SASL) and comparing the result with the original imperative implementation. His conclusions were positive so far as the expressive power of functional programming was concerned — laziness and higher-order functions both proved valuable — but he bemoaned SASL’s lack of type-checking, abstract data types and modules, and also the difficulties of correcting errors and optimising performance in the presence of lazy evaluation.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R. Bird and P. Wadler. Introduction to Functional Programming. Prentice-Hall, 1988.

    Google Scholar 

  2. P. Hudak and P. Wadler (editors). Report on the programming language Haskell, a non-strict purely functional language (Version 1.0). Technical report, University of Glasgow, Department of Computing Science, April 1990.

    Google Scholar 

  3. S.L. Peyton Jones. YACC in SASL — an exercise in functional programming. SoftwarePractice and Experience, 15 (8): 807–820, August 1985.

    Article  MATH  Google Scholar 

  4. C. Runciman. What about the natural numbers? Computer Languages, 14 (3): 181–191, 1989.

    Article  Google Scholar 

  5. C. Runciman and D. Wakeling. Problems and proposals for time and space profiling of functional programs. In Proceedings of 3rd Glasgow Workshop on Functional Programming, pages 237–245. Springer-Verlag, 1990.

    Google Scholar 

  6. M. Spivey. A functional theory of exceptions. Science of Computer Programming, 14 (1): 25–42, June 1990.

    Article  MATH  Google Scholar 

  7. W. Stoye. The Implementation of Functional Languages Using Custom Hardware. PhD thesis, University of Cambridge Computer Laboratory, December 1985. Technical Report No. 81.

    Google Scholar 

  8. H.W. Thimbleby. The design of a terminal independent package. Software — Practice and Experience, 17 (5): 351–367, May 1987.

    Article  Google Scholar 

  9. S.J. Thompson. Interactive functional programs. Technical Report 48, Computing Laboratory, University of Kent at Canterbury, 1987.

    Google Scholar 

  10. P.L. Wadler. Comprehending monads. In Proceedings of ACM Conference on LISP and Functional Programming, pages 61–78, June 1990.

    Chapter  Google Scholar 

  11. D. Wakeling and C. Runciman. Linearity and laziness. In Proceedings of 5th ACM Conference on Functional Programming Languages and Computer Architecture, pages 215–240. Springer-Verlag, August 1991. LNCS 523.

    Google Scholar 

  12. S.C. Wray. Implementation and Programming Techniques for Functional Languages. PhD thesis, University of Cambridge Computer Laboratory, January 1986. Technical Report No. 92.

    Google Scholar 

  13. S.C. Wray and J. Fairbairn. Non-strict languages — programming and implementation. The Computer Journal, 32 (2): 142–151, April 1989.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1992 British Computer Society

About this paper

Cite this paper

Runciman, C. (1992). TIP in Haskell — another exercise in functional programming. In: Heldal, R., Holst, C.K., Wadler, P. (eds) Functional Programming, Glasgow 1991. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3196-0_22

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3196-0_22

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19760-7

  • Online ISBN: 978-1-4471-3196-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics