
    
    
      @inproceedings{DBLP:conf/mpc/Bird08,
  author = "Richard S. Bird",
  booktitle = "Mathematics of Program Construction",
  doi = "10.1007/978-3-540-70594-9_7",
  editor = "Philippe Audebaud and Christine Paulin-Mohring",
  isbn = "978-3-540-70593-2",
  pages = "92-109",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Zippy Tabulations of Recursive Functions",
  volume = "5133",
  year = "2008",
}


    
      @article{BirdSadnicki2007:Online,
  author = "Richard S. Bird and Stefan Sadnicki",
  journal = "Information Processing Letters",
  number = "1",
  pages = "41-45",
  title = "Minimal On-line List Labelling",
  volume = "101",
  year = "2007",
}


    
      @article{Bird2006:Program,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796806006058",
  journal = "Journal of Functional Programming",
  number = "6",
  pages = "671-679",
  title = "A Program to Solve {S}udoku",
  volume = "16",
  year = "2006",
}


    
      @inproceedings{DBLP:conf/icfp/Bird06,
  author = "Richard S. Bird",
  booktitle = "International Conference on Functional Programming",
  doi = "10.1145/1159803.1159832",
  editor = "John H. Reppy and Julia L. Lawall",
  isbn = "1-59593-309-3",
  pages = "215",
  title = "Fifteen Years of Functional Pearls",
  year = "2006",
}


    
      @inproceedings{Bird2006:Loopless,
  author = "Richard S. Bird",
  booktitle = "Mathematics of Program Construction",
  doi = "10.1007/11783596_9",
  editor = "Tarmo Uustalu",
  isbn = "3-540-35631-2",
  pages = "90-114",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Loopless Functional Algorithms",
  volume = "4014",
  year = "2006",
}


    
      @inproceedings{Bird2006:Improving,
  author = "Richard S. Bird",
  booktitle = "Mathematics of Program Construction",
  doi = "10.1007/11783596_8",
  editor = "Tarmo Uustalu",
  isbn = "3-540-35631-2",
  pages = "82-89",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Improving Saddleback Search: A Lesson in Algorithm Design",
  volume = "4014",
  year = "2006",
}


    
      @article{Gibbons*2006:Enumerating,
  author = "Jeremy Gibbons and David Lester and Richard Bird",
  journal = "Journal of Functional Programming",
  number = "3",
  pages = "281-292",
  title = "Enumerating the Rationals",
  url = "http://www.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/rationals.pdf",
  volume = "16",
  year = "2006",
}


    
      @article{BirdCurtis2006:Finding,
  author = "Richard S. Bird and Sharon Curtis",
  doi = "10.1017/S0956796805005678",
  journal = "Journal of Functional Programming",
  number = "1",
  pages = "13-20",
  title = "Finding Celebrities: A Lesson in Functional Programming",
  volume = "16",
  year = "2006",
}


    
      @article{BirdMu2005:Countdown,
  author = "Richard S. Bird and Shin-Cheng Mu",
  doi = "10.1017/S0956796805005642",
  journal = "Journal of Functional Programming",
  number = "5",
  pages = "679-702",
  title = "Countdown: A Case Study in Origami Programming",
  volume = "15",
  year = "2005",
}


    
      @inproceedings{Bird2005:Polymorphic,
  address = "New York, NY, USA",
  author = "Richard S. Bird",
  booktitle = "Haskell Workshop",
  doi = "10.1145/1088348.1088359",
  isbn = "1-59593-071-X",
  location = "Tallinn, Estonia",
  pages = "110--115",
  publisher = "ACM Press",
  title = "Polymorphic String Matching",
  year = "2005",
}


    
      @article{DBLP:journals/jfp/BirdM04,
  author = "Richard S. Bird and Shin-Cheng Mu",
  doi = "10.1017/S0956796804005118",
  journal = "Journal of Functional Programming",
  note = "Earlier version appeared at Haskell Workshop 2001",
  number = "6",
  pages = "603-612",
  title = "Inverting the {B}urrows-{W}heeler Transform",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdMu2004Inverting.pdf",
  volume = "14",
  year = "2004",
}


    
      @article{DBLP:journals/jfp/Bird04,
  author = "Richard S. Bird",
  doi = "10.1017/S095679680400512X",
  journal = "Journal of Functional Programming",
  number = "6",
  pages = "613-622",
  title = "On Tiling a Chessboard",
  volume = "14",
  year = "2004",
}


    
      @article{DBLP:journals/scp/MuB04,
  author = "Shin-Cheng Mu and Richard S. Bird",
  doi = "10.1016/j.scico.2003.09.003",
  journal = "Science of Computer Programming",
  number = "1-2",
  pages = "87-116",
  title = "Theory and Applications of Inverting Functions as Folds",
  volume = "51",
  year = "2004",
}


    
      @inproceedings{DBLP:conf/aplas/MuB03,
  author = "Shin-Cheng Mu and Richard S. Bird",
  booktitle = "Asian Symposium on Programming Languages and Systems",
  editor = "Atsushi Ohori",
  isbn = "3-540-20536-5",
  pages = "265-282",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Rebuilding a Tree from Its Traversals: A Case Study of Program Inversion",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/MuBird2003Rebuilding.pdf",
  volume = "2895",
  year = "2003",
}


    
      @inproceedings{BirdHinze2003:Trouble,
  address = "New York, NY, USA",
  author = "Richard Bird and Ralf Hinze",
  booktitle = "Haskell Workshop",
  doi = "10.1145/871895.871896",
  isbn = "1-58113-758-3",
  location = "Uppsala, Sweden",
  pages = "1--6",
  publisher = "ACM Press",
  title = "Trouble Shared is Trouble Halved",
  year = "2003",
}


    
      @inproceedings{BirdGibbons2003:Arithmetic,
  author = "Richard Bird and Jeremy Gibbons",
  booktitle = "Advanced Functional Programming 4",
  editor = "Johan Jeuring and Simon Peyton Jones",
  pages = "1-26",
  publisher = "Springer-Verlag",
  series = "Lecture Notes in Computer Science",
  title = "Arithmetic Coding with Folds and Unfolds",
  url = "http://www.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/arith.pdf",
  volume = "2638",
  year = "2003",
}


    
      @inproceedings{DBLP:conf/mpc/MuB02,
  author = "Shin-Cheng Mu and Richard S. Bird",
  booktitle = "Mathematics of Program Construction",
  editor = "Eerke A. Boiten and Bernhard M{\"o}ller",
  isbn = "3-540-43857-2",
  pages = "209-232",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Inverting Functions as Folds",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/MuBird2002Inverting.pdf",
  volume = "2386",
  year = "2002",
}


    
      @incollection{Bird*2002:Optimization,
  abstract = "We argue for the benefits of relations over functions for modelling programs, and even more so for modelling specifications. To support this argument, we present an extended case study for a class of optimization problems, deriving efficient functional programs from concise relational specifications.",
  author = "Richard Bird and Jeremy Gibbons and Shin Cheng Mu",
  booktitle = "Algebraic and Coalgebraic Methods in the Mathematics of Program Construction",
  editor = "Roland Backhouse and Roy Crole and Jeremy Gibbons",
  pages = "281--307",
  publisher = "Springer-Verlag",
  series = "Lecture Notes in Computer Science",
  title = "Algebraic Methods for Optimization Problems",
  url = "http://www.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/acmmpc-optimization.pdf",
  volume = "2297",
  year = "2002",
}


    
      @article{DBLP:journals/jfp/Bird01a,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796801004038",
  journal = "Journal of Functional Programming",
  number = "4",
  pages = "411-424",
  title = "Maximum Marking Problems",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/Bird2001Maximum.pdf",
  volume = "11",
  year = "2001",
}


    
      @article{DBLP:journals/jfp/Bird01,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796801003914",
  journal = "Journal of Functional Programming",
  number = "3",
  pages = "347-358",
  title = "Unfolding Pointer Algorithms",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/Bird2001Unfolding.pdf",
  volume = "11",
  year = "2001",
}


    
      @inproceedings{MuBird2001:Functional,
  address = "KAIST, Dajeaon, Korea",
  author = "Shin-Cheng Mu and Richard Bird",
  booktitle = "Asian Workshop on Programming Languages and Systems",
  month = "dec",
  title = "Functional Quantum Programming",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/MuBird2001Functional.pdf",
  year = "2001",
}


    
      @inproceedings{MuBird2000:OnBuilding,
  author = "Shin-Cheng Mu and Richard Bird",
  booktitle = "First Asian Workshop on Programming Languages and Systems",
  title = "On Building Trees with Minimum Height, Relationally",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/MuBird2000OnBuilding.pdf",
  year = "2000",
}


    
      @inproceedings{Bird*99:Program,
  abstract = "It is well-known that each polymorphic function satisfies a certain equational law, called a \emph{naturality} condition. Such laws are part and parcel of the basic toolkit for improving the efficiency of functional programs. More rarely, some polymorphic functions also possess a \emph{higher-order} naturality property. One example is the operation \emph{unzip} that takes lists of pairs to pairs of lists. Surprisingly, this property can be invoked to improve the asymptotic efficiency of some divide-and-conquer algorithms from $O(n log n)$ to $O(n)$. The improved algorithms make use of polymorphic recursion, and can be expressed neatly using nested datatypes, so they also serve as evidence of the practical utility of these two concepts.",
  author = "Richard Bird and Jeremy Gibbons and Geraint Jones",
  booktitle = "Millenial Perspectives in Computer Science",
  editor = "J. W. Davies and A. W. Roscoe and J. C. P. Woodcock",
  publisher = "Palgrave",
  title = "Program Optimisation, Naturally",
  url = "http://www.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/naturally.ps.gz",
  year = "2000",
}


    
      @article{BirdPaterson99:deBruijn,
  author = "Richard S. Bird and Ross Paterson",
  doi = "10.1017/S0956796899003366",
  journal = "Journal of Functional Programming",
  number = "1",
  pages = "77--91",
  title = "de~{B}ruijn Notation as a Nested Datatype",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdPaterson99DeBruijn.pdf",
  volume = "9",
  year = "1999",
}


    
      @article{BirdPaterson99:Generalised,
  author = "Richard Bird and Ross Paterson",
  journal = "Formal Aspects of Computing",
  pages = "200--222",
  title = "Generalised Folds for Nested Datatypes",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdPaterson99Generalised.pdf",
  volume = "11",
  year = "1999",
}


    
      @inproceedings{BirdMeertens98:Nested,
  address = "Marstrand, Sweden",
  author = "Richard S. Bird and Lambert Meertens",
  booktitle = "LNCS~1422: Proceedings of Mathematics of Program Construction",
  editor = "Johan Jeuring",
  month = "jun",
  pages = "52--67",
  publisher = "Springer-Verlag",
  title = "Nested Datatypes",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdMeertens98Nested.pdf",
  year = "1998",
}


    
      @article{DBLP:journals/jfp/Bird98,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796897002931",
  journal = "Journal of Functional Programming",
  number = "1",
  pages = "83-88",
  title = "Meertens' Number",
  volume = "8",
  year = "1998",
}


    
      @book{Bird98:Introduction,
  author = "Richard S. Bird",
  publisher = "Prentice-Hall",
  title = "Introduction to Functional Programming Using {H}askell",
  url = "http://www.comlab.ox.ac.uk/oucl/publications/books/functional/",
  year = "1998",
}


    
      @proceedings{DBLP:conf/alc/1997,
  editor = "Richard S. Bird and Lambert G. L. T. Meertens",
  isbn = "0-412-82050-1",
  publisher = "Chapman {\&} Hall",
  series = "IFIP Conference Proceedings",
  title = "IFIP TC2 WG2.1 International Workshop on Algorithmic Languages and Calculi",
  volume = "95",
  year = "1997",
}


    
      @article{BirdRavelo97:On,
  author = "Richard S. Bird and Jes{\'u}s N. Ravelo",
  doi = "10.1016/S0020-0190(97)00087-2",
  journal = "Information Processing Letters",
  pages = "1--7",
  title = "On Computing Representatives",
  volume = "63",
  year = "1997",
}


    
      @article{Bird*97:More,
  author = "Richard S. Bird and Geraint Jones and Oege de Moor",
  doi = "10.1017/S0956796897002827",
  journal = "Journal of Functional Programming",
  number = "5",
  pages = "541--547",
  title = "More Haste, Less Speed: Lazy Versus Eager Evaluation",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdJonesDeMoor1997More.pdf",
  volume = "7",
  year = "1997",
}


    
      @inproceedings{Bird97:Allegories,
  author = "Richard S. Bird",
  booktitle = "LNCS~1290: Category Theory and Computer Science",
  doi = "10.1007/BFb0026979",
  editor = "Eugenio Moggi and Guiseppe Rosolini",
  month = "sep",
  pages = "34--46",
  publisher = "Springer-Verlag",
  title = "Allegories as a Basis for Algorithmics",
  year = "1997",
}


    
      @article{Bird97:OnBuilding,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796897002803",
  journal = "Journal of Functional Programming",
  number = "4",
  pages = "441--445",
  title = "On Building Trees with Minimum Height",
  volume = "7",
  year = "1997",
}


    
      @article{Bird97:OnMerging,
  author = "Richard S. Bird",
  doi = "10.1017/S0956796897002736",
  journal = "Journal of Functional Programming",
  number = "3",
  pages = "349--354",
  title = "On Merging and Selection",
  volume = "7",
  year = "1997",
}


    
      @article{Bird*96:Generic,
  author = "Richard Bird and Oege de Moor and Paul Hoogendijk",
  journal = "Journal of Functional Programming",
  number = "1",
  pages = "1--28",
  title = "Generic Functional Programming with Types and Relations",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdHoogendijkDeMoor1996Generic.pdf",
  volume = "6",
  year = "1996",
}


    
      @book{BirddeMoor96:Algebra,
  author = "Richard Bird and Oege de Moor",
  publisher = "Prentice-Hall",
  title = "The Algebra of Programming",
  url = "http://www.comlab.ox.ac.uk/oucl/publications/books/algebra/",
  year = "1996",
}


    
      @article{Bird96:Functional,
  address = "Amsterdam, The Netherlands, The Netherlands",
  author = "Richard S. Bird",
  doi = "10.1016/0167-6423(95)00033-X",
  issn = "0167-6423",
  journal = "Science of Computer Programming",
  number = "1-3",
  pages = "15--31",
  publisher = "Elsevier North-Holland, Inc.",
  title = "Functional Algorithm Design",
  volume = "26",
  year = "1996",
}


    
      @inproceedings{DBLP:conf/mpc/Bird95,
  author = "Richard S. Bird",
  booktitle = "Mathematics of Program Construction",
  doi = "10.1007/3-540-60117-1_2",
  isbn = "3-540-60117-1",
  pages = "2-17",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Functional Algorithm Design",
  volume = "947",
  year = "1995",
}


    
      @unpublished{BirddeMoor94:Hybrid,
  author = "Richard Bird and Oege de Moor",
  note = "Programming Research Group, Oxford",
  title = "Hybrid Dynamic Programming",
  year = "1994",
}


    
      @incollection{BirddeMoor93:Relational,
  author = "Richard Bird and Oege de Moor",
  booktitle = "A Classical Mind: Essays in Honour of {C}.~{A}.~{R}.~{H}oare",
  chapter = "2",
  editor = "A. W. Roscoe",
  publisher = "Prentice-Hall",
  title = "Relational Program Derivation and Context-Free Language Recognition",
  year = "1994",
}


    
      @article{Bird93:Last,
  author = "R. S. Bird",
  journal = "Journal of Functional Programming",
  number = "1",
  pages = "117--122",
  title = "The Last Tail",
  volume = "3",
  year = "1993",
}


    
      @article{BirddeMoor93:List,
  author = "Richard S. Bird and Oege de Moor",
  doi = "10.1007/BF01211316",
  journal = "Formal Aspects of Computing",
  pages = "61--78",
  title = "List Partitions",
  volume = "5",
  year = "1993",
}


    
      @proceedings{DBLP:conf/mpc/1992,
  doi = "10.1007/3-540-56625-2",
  editor = "Richard S. Bird and Carroll Morgan and Jim Woodcock",
  isbn = "3-540-56625-2",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Mathematics of Program Construction",
  volume = "669",
  year = "1993",
}


    
      @inproceedings{BirddeMoor93:Solving,
  author = "Richard S. Bird and Oege de Moor",
  booktitle = "Mathematics of Program Construction",
  doi = "10.1007/3-540-56625-2_7",
  pages = "45--66",
  publisher = "Springer",
  series = "Lecture Notes in Computer Science",
  title = "Solving Optimisation Problems with Catamorphisms",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdDeMoor93Solving.pdf",
  volume = "669",
  year = "1993",
}


    
      @inproceedings{BirddeMoor93:From,
  author = "Richard S. Bird and Oege de Moor",
  booktitle = "IFIP TC2/WG2.1 State-of-the-Art Report on Formal Program Development",
  doi = "10.1007/3-540-57499-9_16",
  editor = "Bernhard M{\"o}ller and Helmut Partsch and Steve Schumann",
  publisher = "Springer-Verlag",
  series = "Lecture Notes in Computer Science",
  title = "From Dynamic Programming to Greedy Algorithms",
  url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdDeMoor93From.pdf",
  volume = "755",
  year = "1993",
}


    
      @article{Bird92:Unravelling,
  author = "Richard S. Bird",
  journal = "Journal of Functional Programming",
  number = "3",
  pages = "375--385",
  title = "Unravelling Greedy Algorithms",
  volume = "2",
  year = "1992",
}


    
      @article{Bird92:Two,
  author = "Richard S. Bird",
  journal = "Journal of Functional Programming",
  number = "2",
  pages = "237--244",
  title = "Two Greedy Algorithms",
  volume = "2",
  year = "1992",
}


    
      @article{Bird92:Smallest,
  author = "Richard S. Bird",
  doi = "10.1016/0167-6423(92)90020-C",
  journal = "Science of Computer Programming",
  pages = "281--292",
  title = "The Smallest Upravel",
  volume = "18",
  year = "1992",
}


    
      @inproceedings{Bird91:Knuths,
  author = "Richard S. Bird",
  booktitle = "IFIP TC2/WG2.1 Working Conference on Constructing Programs from Specifications",
  editor = "B. M{\"o}ller",
  pages = "1--8",
  publisher = "North-Holland",
  title = "Knuth's Problem",
  year = "1991",
}


    
      @article{Bird91:Minout,
  author = "Richard S. Bird",
  journal = "Journal of Functional Programming",
  month = "jan",
  number = "1",
  pages = "121--124",
  title = "The {Minout} Problem",
  volume = "1",
  year = "1991",
}


    
      @article{DBLP:journals/jfp/Bird91a,
  author = "Richard S. Bird",
  journal = "Journal of Functional Programming",
  number = "2",
  pages = "235-243",
  title = "On Removing Duplicates",
  volume = "1",
  year = "1991",
}


    
      @incollection{Bird90:Small,
  author = "Richard S. Bird",
  booktitle = "Beauty is our Business",
  editor = "W. H. J. Feijen and A. J. M. van Gasteren and D. Gries and J. Misra",
  pages = "36--43",
  publisher = "Springer-Verlag",
  title = "Small Specification Exercises",
  year = "1990",
}


    
      @incollection{Bird90:Calculus,
  author = "Richard S. Bird",
  booktitle = "Research Topics in Functional Programming",
  editor = "David A. Turner",
  note = "Also available as Technical Monograph PRG-64, from the Programming Research Group, Oxford University",
  organization = "University of Texas at Austin",
  publisher = "Addison-Wesley",
  title = "A Calculus of Functions for Program Derivation",
  year = "1990",
}


    
      @article{Bird*89:KMP,
  author = "Richard S. Bird and Jeremy Gibbons and Geraint Jones",
  doi = "10.1016/0167-6423(89)90036-1",
  journal = "Science of Computer Programming",
  month = "jul",
  number = "2",
  pages = "93--104",
  title = "Formal Derivation of a Pattern Matching Algorithm",
  volume = "12",
  year = "1989",
}


    
      @article{Bird89:Algebraic,
  author = "Richard S. Bird",
  doi = "10.1093/comjnl/32.2.122",
  journal = "Computer Journal",
  month = "apr",
  number = "2",
  pages = "122--126",
  title = "Algebraic Identities for Program Calculation",
  volume = "32",
  year = "1989",
}


    
      @inproceedings{Bird88:Constructive,
  author = "Richard S. Bird",
  booktitle = "Constructive Methods in Computer Science",
  editor = "Manfred Broy",
  note = "NATO ASI Series~F Volume~55. Also available as Technical Monograph PRG-69, from the Programming Research Group, Oxford University",
  pages = "151--218",
  publisher = "Springer-Verlag",
  title = "Lectures on Constructive Functional Programming",
  year = "1988",
}


    
      @book{BirdWadler88:Introduction,
  author = "Richard S. Bird and Philip L. Wadler",
  publisher = "Prentice-Hall",
  title = "An Introduction to Functional Programming",
  year = "1988",
}


    
      @incollection{BirdMeertens87:Two,
  author = "Richard S. Bird and Lambert Meertens",
  booktitle = "Program Specification and Transformation",
  editor = "Lambert Meertens",
  pages = "451--457",
  publisher = "North-Holland",
  title = "Two Exercises Found In a Book on Algorithmics",
  year = "1987",
}


    
      @article{Bird87:Supercombinator,
  author = "R. S. Bird",
  doi = "10.1016/0167-6423(87)90017-7",
  journal = "Science of Computer Programming",
  pages = "113--137",
  title = "A Formal Development of an Efficient Supercombinator Compiler",
  volume = "8",
  year = "1987",
}


    
      @incollection{Bird87:Theory,
  author = "Richard S. Bird",
  booktitle = "Logic of Programming and Calculi of Discrete Design",
  editor = "M. Broy",
  note = "NATO ASI Series~F Volume~36. Also available as Technical Monograph PRG-56, from the Programming Research Group, Oxford University",
  pages = "3--42",
  publisher = "Springer-Verlag",
  title = "An Introduction to the Theory of Lists",
  year = "1987",
}


    
      @article{BirdHughes87:Alpha-Beta,
  author = "Richard S. Bird and John Hughes",
  doi = "10.1016/0020-0190(87)90198-0",
  journal = "Information Processing Letters",
  month = "jan",
  number = "1",
  pages = "53--57",
  title = "The Alpha-Beta Algorithm: {An} Exercise in Program Transformation",
  volume = "24",
  year = "1987",
}


    
      @article{Bird86:Paragraph,
  author = "Richard S. Bird",
  doi = "10.1016/0167-6423(86)90023-7",
  journal = "Science of Computer Programming",
  pages = "159--189",
  title = "Transformational Programming and the Paragraph Problem",
  volume = "6",
  year = "1986",
}


    
      @article{Bird85:Promotion,
  author = "Richard S. Bird",
  journal = "ACM Transactions on Programming Languages and Systems",
  month = "jul",
  number = "3",
  pages = "490--492",
  title = "Addendum to ``{T}he Promotion and Accumulation Strategies in Transformational Programming''",
  volume = "7",
  year = "1985",
}


    
      @article{Bird84:Promotion,
  author = "Richard S. Bird",
  doi = "10.1145/1780.1781",
  journal = "ACM Transactions on Programming Languages and Systems",
  month = "oct",
  note = "See also \cite{Bird85:Promotion}",
  number = "4",
  pages = "487--504",
  title = "The Promotion and Accumulation Strategies in Transformational Programming",
  volume = "6",
  year = "1984",
}


    
      @article{Bird84:Using,
  author = "Richard S. Bird",
  doi = "10.1007/BF00264249",
  journal = "Acta Informatica",
  pages = "239--250",
  title = "Using Circular Programs to Eliminate Multiple Traversals of Data",
  volume = "21",
  year = "1984",
}


    
      @article{DBLP:journals/csur/Bird81,
  author = "Richard S. Bird",
  doi = "10.1145/356842.356848",
  journal = "ACM Computing Surveys",
  number = "2",
  pages = "243",
  title = "Surveyor's Forum: A Recurring Bug",
  volume = "13",
  year = "1981",
}


    
      @article{Bird81:Joggers,
  author = "Richard S. Bird",
  doi = "10.1016/0020-0190(81)90122-8",
  journal = "Information Processing Letters",
  number = "3",
  pages = "114--117",
  title = "The Jogger's Problem",
  volume = "13",
  year = "1981",
}


    
      @article{Bird80:Tabulation,
  author = "Richard S. Bird",
  doi = "10.1145/356827.356831",
  journal = "ACM Computing Surveys",
  month = "dec",
  note = "See \cite{DBLP:journals/csur/Bird81}",
  number = "4",
  pages = "403--417",
  title = "Tabulation Techniques for Recursive Programs",
  volume = "12",
  year = "1980",
}


    
      @article{Bird79:Recursion,
  author = "Richard S. Bird",
  doi = "10.1093/comjnl/22.2.151",
  journal = "Computer Journal",
  number = "2",
  pages = "151--154",
  title = "Recursion Elimination with Variable Parameters",
  volume = "22",
  year = "1979",
}


    
      @article{Bird77:Improving,
  author = "Richard S. Bird",
  doi = "10.1145/359863.359889",
  journal = "Communications of the ACM",
  month = "nov",
  number = "11",
  pages = "856--863",
  title = "Improving Programs by the Introduction of Recursion",
  volume = "20",
  year = "1977",
}


    
      @article{Bird77:Two,
  author = "Richard S. Bird",
  doi = "10.1016/0020-0190(77)90017-5",
  journal = "Information Processing Letters",
  number = "5",
  pages = "168--170",
  title = "Two-Dimensional Pattern Matching",
  volume = "6",
  year = "1977",
}


    
      @article{Bird77:Notes,
  author = "Richard S. Bird",
  doi = "10.1145/359605.359630",
  journal = "Communications of the ACM",
  number = "6",
  pages = "434--439",
  title = "Notes on Recursion Elimination",
  volume = "20",
  year = "1977",
}


    
      @book{Bird76:Programs,
  author = "Richard Bird",
  publisher = "Wiley",
  title = "Programs and Machines",
  year = "1976",
}


    
      @article{Bird75:Non,
  author = "Richard Bird",
  journal = "Zeitschrift f{\"u}r mathematische {L}ogik und {G}rundlagen der {M}athematik",
  pages = "41--46",
  title = "Non Recursive Functionals",
  volume = "21",
  year = "1975",
}


    
      @article{Bird74:Speeding,
  author = "Richard S. Bird",
  journal = "Computer Journal",
  number = "4",
  pages = "337--339",
  title = "Speeding Up Programs",
  volume = "17",
  year = "1974",
}


    
      @article{Bird74:On,
  author = "Richard Bird",
  journal = "Journal of Computer and System Sciences",
  pages = "22-35",
  title = "On Transformations of Programs",
  volume = "8",
  year = "1974",
}


    
      @article{Bird73:Note,
  author = "Richard Bird",
  journal = "Zeitschrift f{\"u}r mathematische {L}ogik und {G}rundlagen der {M}athematik",
  pages = "207--208",
  title = "A Note on Definition by Cases",
  volume = "19",
  year = "1973",
}


    
      @article{Bird72:Integers,
  author = "Richard Bird",
  journal = "American Mathematical Monthly",
  pages = "367-370",
  title = "Integers with Given Initial Digits",
  url = "http://links.jstor.org/sici?sici=0002-9890%28197204%2979%3A4%3C367%3AIWGID%3E2.0.CO%3B2-2",
  volume = "79",
  year = "1972",
}


    
    