Skip to main content

The Bird Tree

  • RALF HINZE (a1)

Sadly, Richard Bird is stepping down as the editor of the ‘Functional Pearls’ column. As a farewell present, I would like to dedicate a tree to him. A woody plant is appropriate for at least two reasons: Richard has been preoccupied with trees in many of his pearls, and where else would you find a bird's nest? Actually, there is a lot of room for nests, as the tree is infinite. Figure 1 displays the first five levels. The Bird tree, whose nodes are labelled with rational numbers, enjoys several remarkable properties.

Hide All
Aigner, M. & Ziegler, G. M. (2004) Proofs from THE BOOK, 3rd edn.Springer-Verlag.
Backhouse, R. & Ferreira, J. F. (2008) Recounting the rationals: Twice!, In The 9th International Conference on Mathematics of Program Construction (MPC '08), Audebaud, P. & Paulin-Mohring, C. (eds), Lecture Notes in Computer Science, vol. 5133. Springer, pp. 7991.
Bird, R. S. (2006) Loopless functional algorithms. In The 8th International Conference on Mathematics of Program Construction (MPC '06), Uustalu, T. (ed.), Lecture Notes in Computer Science, vol. 4014. Springer, pp. 90114.
Calkin, N. & Wilf, H. (2000) Recounting the rationals, Am. Math. Monthly, 107 (4): 360363.
Dijkstra, E. W. (1976) EWD 570: An exercise for Dr. R. M. Burstall. In Selected Writings on Computing: A Personal Perspective, Dijkstra, E. W. Springer, pp. 215216. ISBN 0–387–90652–5.
Gibbons, J., Lester, D. & Bird, R. (2006) Functional pearl: Enumerating the rationals, J. Funct. Program., 16 (3): 281291.
Graham, R. L., Knuth, D. E. & Patashnik, O. (1994) Concrete Mathematics, 2nd ed.Addison-Wesley.
Hinze, R. (2008) Functional pearl: Streams and unique fixed points. In Proceedings of the 13th ACM SIGPLAN International Conference on Functional Programming (ICFP '08), Thiemann, P. (ed.). ACM Press, pp. 189200.
McBride, C. & Paterson, R. (2008) Functional pearl: Applicative programming with effects, J. Funct. Program., 18 (1): 113.
Peyton Jones, S. (2003) Haskell 98 Language and Libraries. Cambridge University Press.
Rutten, J. (2003) Fundamental study: Behavioural differential equations: A coinductive calculus of streams, automata, and power series, Theoret. Comp. Sci., 308: 153.
Sloane, N. J. A. (2009) The on-line encyclopedia of integer sequences [online]. Available at: (Accessed 17 July 2009).
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Journal of Functional Programming
  • ISSN: 0956-7968
  • EISSN: 1469-7653
  • URL: /core/journals/journal-of-functional-programming
Please enter your name
Please enter a valid email address
Who would you like to send this to? *


Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Abstract views

Total abstract views: 0 *
Loading metrics...

* Views captured on Cambridge Core between <date>. This data will be updated every 24 hours.

Usage data cannot currently be displayed

The Bird Tree

  • RALF HINZE (a1)
Submit a response


No Discussions have been published for this article.


Reply to: Submit a response

Your details

Conflicting interests

Do you have any conflicting interests? *