@incollection{algorithmics, title = "Algorithmics", author = "Richard S. Bird, Jeremy Gibbons, Ralf Hinze, Peter Hoefner, Johan Jeuring, Lambert G. L. T. Meertens, Bernhard Moeller, Carroll Morgan, Tom Schrijvers, Wouter Swierstra, Nicolas Wu", year = "2021", booktitle = "Advancing Research in Information and Communication Technology - IFIP's Exciting First 60+ Years, Views from the Technical Committees and Working Groups", editor = "Michael Goedicke, Erich J. Neuhold, Kai Rannenberg", pages = "59-98", publisher = "Springer", series = "IFIP Advances in Information and Communication Technology", volume = "600", doi = "10.1007/978-3-030-81701-5_3", } @article{dropping-digits, title = "A Greedy Algorithm for Dropping Digits", author = "Richard S. Bird and Shin-Cheng Mu", year = "2021", journal = "Journal of Functional Programming", pages = "e29", volume = "31", doi = "10.1017/S0956796821000198", } @article{garcia-wachs, title = "An Optimal, Purely Functional Implementation of the Garsia-Wachs Algorithm", author = "Richard S. Bird", year = "2020", journal = "Journal of Functional Programming", pages = "e3", volume = "30", doi = "10.1017/S0956796819000194", } @book{adwh, title = "Algorithm Design with Haskell", author = "Richard Bird and Jeremy Gibbons", year = "2020", isbn = "9781108491617", month = "July", publisher = "Cambridge University Press", url = "http://www.cs.ox.ac.uk/publications/books/adwh/", } @article{fake-coin, title = "How to Find a Fake Coin", author = "Richard S. Bird", year = "2019", journal = "Journal of Functional Programming", pages = "e8", volume = "29", doi = "10.1017/S0956796819000030", } @inproceedings{nondeterministic-functions, title = "How to Calculate with Nondeterministic Functions", author = "Richard S. Bird and Florian Rabe", year = "2019", booktitle = "Mathematics of Program Construction", editor = "Graham Hutton", pages = "138-154", publisher = "Springer", volume = "11825", doi = "10.1007/978-3-030-33636-3_6", } @article{mingle-streams, title = "How to Mingle Streams", author = "Richard S. Bird", year = "2015", journal = "Journal of Functional Programming", pages = "e4", volume = "25", doi = "10.1017/S0956796815000064", } @book{tfwh, title = "Thinking Functionally with Haskell", author = "Richard Bird", year = "2014", isbn = "9781107452640", publisher = "Cambridge University Press", url = "https://www.cs.ox.ac.uk/publications/books/functional/", } @article{in-situ, title = "An In-Situ Algorithm for Expanding a Graph", author = "Richard S. Bird", year = "2013", journal = "Journal of Functional Programming", number = "2", pages = "174-184", volume = "23", doi = "10.1017/S0956796812000457", } @inproceedings{uitbaf, title = "Understanding Idiomatic Traversals Backwards and Forwards", author = "Richard Bird and Jeremy Gibbons and Stefan Mehner and Janis Voigtlaender and Tom Schrijvers", year = "2013", booktitle = "Haskell Symposium", month = "sep", url = "http://www.comlab.ox.ac.uk/jeremy.gibbons/publications/uitbaf.pdf", doi = "10.1145/2503778.2503781", } @article{cyclic-shared, title = "On Building Cyclic and Shared Structures in Haskell", author = "Richard S. Bird", year = "2012", journal = "Formal Aspects of Computing", number = "4-6", pages = "609-621", volume = "24", doi = "10.1007/s00165-012-0243-6", } @unpublished{backwards, title = "Be Kind, Rewind: A Modest Proposal about Traversal", author = "Jeremy Gibbons and Richard Bird", year = "2012", month = "May", note = "Submitted for publication (but rejected)", url = "http://www.comlab.ox.ac.uk/jeremy.gibbons/publications/backwards.pdf", } @article{building-consensus, title = "Building a Consensus: A Rectangle Covering Problem", author = "Richard S. Bird", year = "2011", journal = "Journal of Functional Programming", number = "2", pages = "119-128", volume = "21", doi = "10.1017/S0956796810000316", } @article{determinants, title = "A simple division-free algorithm for computing determinants", author = "Richard S. Bird", year = "2011", journal = "Information Processing Letters", url = "http://dx.doi.org/10.1016/j.ipl.2011.08.006", doi = "10.1016/j.ipl.2011.08.006", } @book{pofad, title = "Pearls of Functional Algorithm Design", author = "Richard Bird", year = "2010", isbn = "9780521513388", publisher = "Cambridge University Press", url = "http://www.cambridge.org/gb/knowledge/isbn/item5600469", } @inproceedings{meeting-fanclub, title = "Meeting a Fanclub: A Lattice of Generic Shape Selectors", author = "Roland Carl Backhouse, Richard S. Bird, Paul F. Hoogendijk", year = "2009", booktitle = "Workshop on Generic Programming", editor = "Patrik Jansson and Sibylle Schupp", pages = "73-84", publisher = "ACM", doi = "10.1145/1596614.1596625", } @article{spider-spinning, title = "Spider Spinning for Dummies", author = "Richard S. Bird", year = "2008", booktitle = "Advanced Functional Programming", editor = "Pieter W. M. Koopman and Rinus Plasmeijer and S. Doaitse Swierstra", pages = "39-65", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "5832", doi = "10.1007/978-3-642-04652-0_2", } @inproceedings{DBLP:conf/mpc/Bird08, title = "Zippy Tabulations of Recursive Functions", author = "Richard S. Bird", year = "2008", booktitle = "Mathematics of Program Construction", editor = "Philippe Audebaud and Christine Paulin-Mohring", isbn = "978-3-540-70593-2", pages = "92-109", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "5133", doi = "10.1007/978-3-540-70594-9_7", } @article{BirdSadnicki2007:Online, title = "Minimal On-line List Labelling", author = "Richard S. Bird and Stefan Sadnicki", year = "2007", journal = "Information Processing Letters", number = "1", pages = "41-45", volume = "101", } @article{Bird2006:Program, title = "A Program to Solve {S}udoku", author = "Richard S. Bird", year = "2006", journal = "Journal of Functional Programming", number = "6", pages = "671-679", volume = "16", doi = "10.1017/S0956796806006058", } @inproceedings{DBLP:conf/icfp/Bird06, title = "Fifteen Years of Functional Pearls", author = "Richard S. Bird", year = "2006", booktitle = "International Conference on Functional Programming", editor = "John H. Reppy and Julia L. Lawall", isbn = "1-59593-309-3", pages = "215", doi = "10.1145/1159803.1159832", } @inproceedings{Bird2006:Loopless, title = "Loopless Functional Algorithms", author = "Richard S. Bird", year = "2006", booktitle = "Mathematics of Program Construction", editor = "Tarmo Uustalu", isbn = "3-540-35631-2", pages = "90-114", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "4014", doi = "10.1007/11783596_9", } @inproceedings{Bird2006:Improving, title = "Improving Saddleback Search: A Lesson in Algorithm Design", author = "Richard S. Bird", year = "2006", booktitle = "Mathematics of Program Construction", editor = "Tarmo Uustalu", isbn = "3-540-35631-2", pages = "82-89", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "4014", doi = "10.1007/11783596_8", } @article{Gibbons*2006:Enumerating, title = "Enumerating the Rationals", author = "Jeremy Gibbons and David Lester and Richard Bird", year = "2006", journal = "Journal of Functional Programming", number = "3", pages = "281-292", url = "http://www.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/rationals.pdf", volume = "16", } @article{BirdCurtis2006:Finding, title = "Finding Celebrities: A Lesson in Functional Programming", author = "Richard S. Bird and Sharon Curtis", year = "2006", journal = "Journal of Functional Programming", number = "1", pages = "13-20", volume = "16", doi = "10.1017/S0956796805005678", } @article{BirdMu2005:Countdown, title = "Countdown: A Case Study in Origami Programming", author = "Richard S. Bird and Shin-Cheng Mu", year = "2005", journal = "Journal of Functional Programming", number = "5", pages = "679-702", volume = "15", doi = "10.1017/S0956796805005642", } @inproceedings{Bird2005:Polymorphic, title = "Polymorphic String Matching", author = "Richard S. Bird", year = "2005", address = "New York, NY, USA", booktitle = "Haskell Workshop", isbn = "1-59593-071-X", location = "Tallinn, Estonia", pages = "110--115", publisher = "ACM Press", doi = "10.1145/1088348.1088359", } @article{DBLP:journals/jfp/BirdM04, title = "Inverting the {B}urrows-{W}heeler Transform", author = "Richard S. Bird and Shin-Cheng Mu", year = "2004", journal = "Journal of Functional Programming", note = "Earlier version appeared at Haskell Workshop 2001", number = "6", pages = "603-612", url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/BirdMu2004Inverting.pdf", volume = "14", doi = "10.1017/S0956796804005118", } @article{DBLP:journals/jfp/Bird04, title = "On Tiling a Chessboard", author = "Richard S. Bird", year = "2004", journal = "Journal of Functional Programming", number = "6", pages = "613-622", volume = "14", doi = "10.1017/S095679680400512X", } @article{DBLP:journals/scp/MuB04, title = "Theory and Applications of Inverting Functions as Folds", author = "Shin-Cheng Mu and Richard S. Bird", year = "2004", journal = "Science of Computer Programming", number = "1-2", pages = "87-116", volume = "51", doi = "10.1016/j.scico.2003.09.003", } @inproceedings{DBLP:conf/aplas/MuB03, title = "Rebuilding a Tree from Its Traversals: A Case Study of Program Inversion", author = "Shin-Cheng Mu and Richard S. Bird", year = "2003", 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", url = "http://www.comlab.ox.ac.uk/people/richard.bird/online/MuBird2003Rebuilding.pdf", volume = "2895", } @inproceedings{BirdHinze2003:Trouble, title = "Trouble Shared is Trouble Halved", author = "Richard Bird and Ralf Hinze", year = "2003", address = "New York, NY, USA", booktitle = "Haskell Workshop", isbn = "1-58113-758-3", location = "Uppsala, Sweden", pages = "1--6", publisher = "ACM Press", doi = "10.1145/871895.871896", } @inproceedings{BirdGibbons2003:Arithmetic, title = "Arithmetic Coding with Folds and Unfolds", author = "Richard Bird and Jeremy Gibbons", year = "2003", booktitle = "Advanced Functional Programming 4", editor = "Johan Jeuring and Simon Peyton Jones", pages = "1-26", publisher = "Springer-Verlag", series = "Lecture Notes in Computer Science", url = "http://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/arith.pdf", volume = "2638", } @inproceedings{DBLP:conf/mpc/MuB02, title = "Inverting Functions as Folds", author = "Shin-Cheng Mu and Richard S. Bird", year = "2002", 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", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/MuBird2002Inverting.pdf", volume = "2386", } @incollection{Bird*2002:Optimization, title = "Algebraic Methods for Optimization Problems", author = "Richard Bird and Jeremy Gibbons and Shin Cheng Mu", year = "2002", 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", url = "http://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/acmmpc-optimization.pdf", volume = "2297", } @article{DBLP:journals/jfp/Bird01a, title = "Maximum Marking Problems", author = "Richard S. Bird", year = "2001", journal = "Journal of Functional Programming", number = "4", pages = "411-424", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/Bird2001Maximum.pdf", volume = "11", doi = "10.1017/S0956796801004038", } @article{DBLP:journals/jfp/Bird01, title = "Unfolding Pointer Algorithms", author = "Richard S. Bird", year = "2001", journal = "Journal of Functional Programming", number = "3", pages = "347-358", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/Bird2001Unfolding.pdf", volume = "11", doi = "10.1017/S0956796801003914", } @inproceedings{MuBird2001:Functional, title = "Functional Quantum Programming", author = "Shin-Cheng Mu and Richard Bird", year = "2001", address = "KAIST, Dajeaon, Korea", booktitle = "Asian Workshop on Programming Languages and Systems", month = "dec", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/MuBird2001Functional.pdf", } @inproceedings{MuBird2000:OnBuilding, title = "On Building Trees with Minimum Height, Relationally", author = "Shin-Cheng Mu and Richard Bird", year = "2000", booktitle = "First Asian Workshop on Programming Languages and Systems", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/MuBird2000OnBuilding.pdf", } @inproceedings{Bird*99:Program, title = "Program Optimisation, Naturally", author = "Richard Bird and Jeremy Gibbons and Geraint Jones", year = "2000", booktitle = "Millenial Perspectives in Computer Science", editor = "J. W. Davies and A. W. Roscoe and J. C. P. Woodcock", publisher = "Palgrave", url = "http://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/naturally.ps.gz", } @article{BirdPaterson99:deBruijn, title = "de~{B}ruijn Notation as a Nested Datatype", author = "Richard S. Bird and Ross Paterson", year = "1999", journal = "Journal of Functional Programming", number = "1", pages = "77--91", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdPaterson99DeBruijn.pdf", volume = "9", doi = "10.1017/S0956796899003366", } @article{BirdPaterson99:Generalised, title = "Generalised Folds for Nested Datatypes", author = "Richard Bird and Ross Paterson", year = "1999", journal = "Formal Aspects of Computing", pages = "200--222", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdPaterson99Generalised.pdf", volume = "11", } @inproceedings{BirdMeertens98:Nested, title = "Nested Datatypes", author = "Richard S. Bird and Lambert Meertens", year = "1998", address = "Marstrand, Sweden", booktitle = "LNCS~1422: Proceedings of Mathematics of Program Construction", editor = "Johan Jeuring", month = "jun", pages = "52--67", publisher = "Springer-Verlag", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdMeertens98Nested.pdf", } @article{DBLP:journals/jfp/Bird98, title = "Meertens' Number", author = "Richard S. Bird", year = "1998", journal = "Journal of Functional Programming", number = "1", pages = "83-88", volume = "8", doi = "10.1017/S0956796897002931", } @book{Bird98:Introduction, title = "Introduction to Functional Programming Using {H}askell", author = "Richard S. Bird", year = "1998", isbn = "0134843460", publisher = "Prentice-Hall", url = "http://www.cs.ox.ac.uk/publications/books/functional/", } @proceedings{DBLP:conf/alc/1997, title = "IFIP TC2 WG2.1 International Workshop on Algorithmic Languages and Calculi", year = "1997", editor = "Richard S. Bird and Lambert G. L. T. Meertens", isbn = "0-412-82050-1", publisher = "Chapman {\&} Hall", series = "IFIP Conference Proceedings", volume = "95", } @article{BirdRavelo97:On, title = "On Computing Representatives", author = "Richard S. Bird and Jes{\'u}s N. Ravelo", year = "1997", journal = "Information Processing Letters", pages = "1--7", volume = "63", doi = "10.1016/S0020-0190(97)00087-2", } @article{Bird*97:More, title = "More Haste, Less Speed: Lazy Versus Eager Evaluation", author = "Richard S. Bird and Geraint Jones and Oege de Moor", year = "1997", journal = "Journal of Functional Programming", number = "5", pages = "541--547", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdJonesDeMoor1997More.pdf", volume = "7", doi = "10.1017/S0956796897002827", } @inproceedings{Bird97:Allegories, title = "Allegories as a Basis for Algorithmics", author = "Richard S. Bird", year = "1997", booktitle = "LNCS~1290: Category Theory and Computer Science", editor = "Eugenio Moggi and Guiseppe Rosolini", month = "sep", pages = "34--46", publisher = "Springer-Verlag", doi = "10.1007/BFb0026979", } @article{Bird97:OnBuilding, title = "On Building Trees with Minimum Height", author = "Richard S. Bird", year = "1997", journal = "Journal of Functional Programming", number = "4", pages = "441--445", volume = "7", doi = "10.1017/S0956796897002803", } @article{Bird97:OnMerging, title = "On Merging and Selection", author = "Richard S. Bird", year = "1997", journal = "Journal of Functional Programming", number = "3", pages = "349--354", volume = "7", doi = "10.1017/S0956796897002736", } @article{Bird*96:Generic, title = "Generic Functional Programming with Types and Relations", author = "Richard Bird and Oege de Moor and Paul Hoogendijk", year = "1996", journal = "Journal of Functional Programming", number = "1", pages = "1--28", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdHoogendijkDeMoor1996Generic.pdf", volume = "6", } @book{BirddeMoor96:Algebra, title = "The Algebra of Programming", author = "Richard Bird and Oege de Moor", year = "1996", isbn = "013507245X", publisher = "Prentice-Hall", url = "http://www.cs.ox.ac.uk/publications/books/algebra/", } @article{Bird96:Functional, title = "Functional Algorithm Design", author = "Richard S. Bird", year = "1996", address = "Amsterdam, The Netherlands, The Netherlands", issn = "0167-6423", journal = "Science of Computer Programming", number = "1-3", pages = "15--31", publisher = "Elsevier North-Holland, Inc.", volume = "26", doi = "10.1016/0167-6423(95)00033-X", } @inproceedings{DBLP:conf/mpc/Bird95, title = "Functional Algorithm Design", author = "Richard S. Bird", year = "1995", booktitle = "Mathematics of Program Construction", isbn = "3-540-60117-1", pages = "2-17", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "947", doi = "10.1007/3-540-60117-1_2", } @incollection{aop-marktoberdorf, title = "The Algebra of Programming", author = "Richard Bird and Oege de Moor", year = "1994", booktitle = "Proceedings of the NATO Advanced Study Institute on Deductive Program Design", editor = "Manfred Broy", isbn = "3-540-60947-4", pages = "167-203", publisher = "Springer-Verlag", series = "NATO ASI series F", url = "http://dl.acm.org/citation.cfm?id=256116", } @unpublished{BirddeMoor94:Hybrid, title = "Hybrid Dynamic Programming", author = "Richard Bird and Oege de Moor", year = "1994", note = "Programming Research Group, Oxford", } @incollection{BirddeMoor93:Relational, title = "Relational Program Derivation and Context-Free Language Recognition", author = "Richard Bird and Oege de Moor", year = "1994", booktitle = "A Classical Mind: Essays in Honour of {C}.~{A}.~{R}.~{H}oare", chapter = "2", editor = "A. W. Roscoe", publisher = "Prentice-Hall", } @article{Bird93:Last, title = "The Last Tail", author = "R. S. Bird", year = "1993", journal = "Journal of Functional Programming", number = "1", pages = "117--122", volume = "3", } @article{BirddeMoor93:List, title = "List Partitions", author = "Richard S. Bird and Oege de Moor", year = "1993", journal = "Formal Aspects of Computing", pages = "61--78", volume = "5", doi = "10.1007/BF01211316", } @proceedings{DBLP:conf/mpc/1992, title = "Mathematics of Program Construction", year = "1993", editor = "Richard S. Bird and Carroll Morgan and Jim Woodcock", isbn = "3-540-56625-2", publisher = "Springer", series = "Lecture Notes in Computer Science", volume = "669", doi = "10.1007/3-540-56625-2", } @inproceedings{BirddeMoor93:Solving, title = "Solving Optimisation Problems with Catamorphisms", author = "Richard S. Bird and Oege de Moor", year = "1993", booktitle = "Mathematics of Program Construction", pages = "45--66", publisher = "Springer", series = "Lecture Notes in Computer Science", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdDeMoor93Solving.pdf", volume = "669", doi = "10.1007/3-540-56625-2_7", } @inproceedings{BirddeMoor93:From, title = "From Dynamic Programming to Greedy Algorithms", author = "Richard S. Bird and Oege de Moor", year = "1993", booktitle = "IFIP TC2/WG2.1 State-of-the-Art Report on Formal Program Development", editor = "Bernhard M{\"o}ller and Helmut Partsch and Steve Schumann", publisher = "Springer-Verlag", series = "Lecture Notes in Computer Science", url = "http://www.cs.ox.ac.uk/people/richard.bird/online/BirdDeMoor93From.pdf", volume = "755", doi = "10.1007/3-540-57499-9_16", } @article{Bird92:Unravelling, title = "Unravelling Greedy Algorithms", author = "Richard S. Bird", year = "1992", journal = "Journal of Functional Programming", number = "3", pages = "375--385", volume = "2", } @article{Bird92:Two, title = "Two Greedy Algorithms", author = "Richard S. Bird", year = "1992", journal = "Journal of Functional Programming", number = "2", pages = "237--244", volume = "2", } @article{Bird92:Smallest, title = "The Smallest Upravel", author = "Richard S. Bird", year = "1992", journal = "Science of Computer Programming", pages = "281--292", volume = "18", doi = "10.1016/0167-6423(92)90020-C", } @inproceedings{Bird91:Knuths, title = "Knuth's Problem", author = "Richard S. Bird", year = "1991", booktitle = "IFIP TC2/WG2.1 Working Conference on Constructing Programs from Specifications", editor = "B. M{\"o}ller", pages = "1--8", publisher = "North-Holland", } @article{Bird91:Minout, title = "The {Minout} Problem", author = "Richard S. Bird", year = "1991", journal = "Journal of Functional Programming", month = "jan", number = "1", pages = "121--124", volume = "1", } @article{DBLP:journals/jfp/Bird91a, title = "On Removing Duplicates", author = "Richard S. Bird", year = "1991", journal = "Journal of Functional Programming", number = "2", pages = "235-243", volume = "1", } @incollection{Bird90:Small, title = "Small Specification Exercises", author = "Richard S. Bird", year = "1990", 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", } @incollection{Bird90:Calculus, title = "A Calculus of Functions for Program Derivation", author = "Richard S. Bird", year = "1990", 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", } @article{Bird*89:KMP, title = "Formal Derivation of a Pattern Matching Algorithm", author = "Richard S. Bird and Jeremy Gibbons and Geraint Jones", year = "1989", journal = "Science of Computer Programming", month = "jul", number = "2", pages = "93--104", volume = "12", doi = "10.1016/0167-6423(89)90036-1", } @article{Bird89:Algebraic, title = "Algebraic Identities for Program Calculation", author = "Richard S. Bird", year = "1989", journal = "Computer Journal", month = "apr", number = "2", pages = "122--126", volume = "32", doi = "10.1093/comjnl/32.2.122", } @inproceedings{Bird88:Constructive, title = "Lectures on Constructive Functional Programming", author = "Richard S. Bird", year = "1988", 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", } @book{BirdWadler88:Introduction, title = "An Introduction to Functional Programming", author = "Richard S. Bird and Philip L. Wadler", year = "1988", isbn = "0-13-484189-1", publisher = "Prentice-Hall", } @incollection{BirdMeertens87:Two, title = "Two Exercises Found In a Book on Algorithmics", author = "Richard S. Bird and Lambert Meertens", year = "1987", booktitle = "Program Specification and Transformation", editor = "Lambert Meertens", pages = "451--457", publisher = "North-Holland", } @article{Bird87:Supercombinator, title = "A Formal Development of an Efficient Supercombinator Compiler", author = "R. S. Bird", year = "1987", journal = "Science of Computer Programming", pages = "113--137", volume = "8", doi = "10.1016/0167-6423(87)90017-7", } @incollection{Bird87:Theory, title = "An Introduction to the Theory of Lists", author = "Richard S. Bird", year = "1987", 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", } @article{BirdHughes87:Alpha-Beta, title = "The Alpha-Beta Algorithm: {An} Exercise in Program Transformation", author = "Richard S. Bird and John Hughes", year = "1987", journal = "Information Processing Letters", month = "jan", number = "1", pages = "53--57", volume = "24", doi = "10.1016/0020-0190(87)90198-0", } @article{Bird86:Paragraph, title = "Transformational Programming and the Paragraph Problem", author = "Richard S. Bird", year = "1986", journal = "Science of Computer Programming", pages = "159--189", volume = "6", doi = "10.1016/0167-6423(86)90023-7", } @article{Bird85:Promotion, title = "Addendum to ``{T}he Promotion and Accumulation Strategies in Transformational Programming''", author = "Richard S. Bird", year = "1985", journal = "ACM Transactions on Programming Languages and Systems", month = "jul", number = "3", pages = "490--492", volume = "7", } @article{Bird84:Promotion, title = "The Promotion and Accumulation Strategies in Transformational Programming", author = "Richard S. Bird", year = "1984", journal = "ACM Transactions on Programming Languages and Systems", month = "oct", note = "See also \cite{Bird85:Promotion}", number = "4", pages = "487--504", volume = "6", doi = "10.1145/1780.1781", } @article{Bird84:Using, title = "Using Circular Programs to Eliminate Multiple Traversals of Data", author = "Richard S. Bird", year = "1984", journal = "Acta Informatica", pages = "239--250", volume = "21", doi = "10.1007/BF00264249", } @article{DBLP:journals/csur/Bird81, title = "Surveyor's Forum: A Recurring Bug", author = "Richard S. Bird", year = "1981", journal = "ACM Computing Surveys", number = "2", pages = "243", volume = "13", doi = "10.1145/356842.356848", } @article{Bird81:Joggers, title = "The Jogger's Problem", author = "Richard S. Bird", year = "1981", journal = "Information Processing Letters", number = "3", pages = "114--117", volume = "13", doi = "10.1016/0020-0190(81)90122-8", } @article{Bird80:Tabulation, title = "Tabulation Techniques for Recursive Programs", author = "Richard S. Bird", year = "1980", journal = "ACM Computing Surveys", month = "dec", note = "See \cite{DBLP:journals/csur/Bird81}", number = "4", pages = "403--417", volume = "12", doi = "10.1145/356827.356831", } @article{Bird79:Recursion, title = "Recursion Elimination with Variable Parameters", author = "Richard S. Bird", year = "1979", journal = "Computer Journal", number = "2", pages = "151--154", volume = "22", doi = "10.1093/comjnl/22.2.151", } @article{Bird77:Improving, title = "Improving Programs by the Introduction of Recursion", author = "Richard S. Bird", year = "1977", journal = "Communications of the ACM", month = "nov", number = "11", pages = "856--863", volume = "20", doi = "10.1145/359863.359889", } @article{Bird77:Two, title = "Two-Dimensional Pattern Matching", author = "Richard S. Bird", year = "1977", journal = "Information Processing Letters", number = "5", pages = "168--170", volume = "6", doi = "10.1016/0020-0190(77)90017-5", } @article{Bird77:Notes, title = "Notes on Recursion Elimination", author = "Richard S. Bird", year = "1977", journal = "Communications of the ACM", number = "6", pages = "434--439", volume = "20", doi = "10.1145/359605.359630", } @book{Bird76:Programs, title = "Programs and Machines", author = "Richard Bird", year = "1976", isbn = "0471016500", publisher = "Wiley", } @article{Bird75:Non, title = "Non Recursive Functionals", author = "Richard Bird", year = "1975", journal = "Zeitschrift f{\"u}r mathematische {L}ogik und {G}rundlagen der {M}athematik", pages = "41--46", volume = "21", doi = "10.1002/malq.19750210105", } @article{Bird74:Speeding, title = "Speeding Up Programs", author = "Richard S. Bird", year = "1974", journal = "Computer Journal", number = "4", pages = "337--339", volume = "17", } @article{Bird74:On, title = "On Transformations of Programs", author = "Richard Bird", year = "1974", journal = "Journal of Computer and System Sciences", pages = "22-35", volume = "8", } @phdthesis{bird-phd, title = "Computational Complexity on Register Machines", author = "Richard Simpson Bird", year = "1973", institution = "Institute of Computer Science, University of London", month = "October", url = "http://hdl.handle.net/10044/1/20651", } @article{Bird73:Note, title = "A Note on Definition by Cases", author = "Richard Bird", year = "1973", journal = "Zeitschrift f{\"u}r mathematische {L}ogik und {G}rundlagen der {M}athematik", pages = "207--208", volume = "19", doi = "10.1002/malq.19730191304", } @article{Bird72:Integers, title = "Integers with Given Initial Digits", author = "Richard Bird", year = "1972", journal = "American Mathematical Monthly", pages = "367-370", url = "https://www.jstor.org/stable/2978087", volume = "79", doi = "10.2307/2978087", }