R would not be what it is today without the invaluable help of these
people outside of the R core team, who contributed by donating code, bug
fixes and documentation:

Valerio Aimale, Suharto Anggono, Thomas Baier, Henrik Bengtsson, Roger Bivand,
Ben Bolker, David Brahm, G"oran Brostr"om, Patrick Burns, Vince Carey,
Saikat DebRoy, Matt Dowle, Brian D'Urso, Lyndon Drake, Dirk Eddelbuettel,
Claus Ekstrom, Sebastian Fischmeister, John Fox, Paul Gilbert,
Yu Gong, Gabor Grothendieck, Frank E Harrell Jr, Peter M. Haverty,
Torsten Hothorn, Robert King, Kjetil Kjernsmo, Roger Koenker, Philippe Lambert,
Jan de Leeuw, Jim Lindsey, Patrick Lindsey, Catherine Loader,
Gordon Maclean, Arni Magnusson, John Maindonald, David Meyer, Ei-ji Nakama,
Jens Oehlschaegel, Steve Oncley, Richard O'Keefe, Hubert Palme,
Roger D. Peng, Jose' C. Pinheiro, Tony Plate, Anthony Rossini,
Jonathan Rougier, Petr Savicky, Guenther Sawitzki, Marc Schwartz,
Arun Srinivasan, Detlef Steuer, Bill Simpson, Gordon Smyth, Adrian Trapletti,
Terry Therneau, Rolf Turner, Bill Venables, Gregory R. Warnes,
Andreas Weingessel, Morten Welinder, James Wettenhall, Simon Wood, and
Achim Zeileis.

Others have written code that has been adopted by R and is
acknowledged in the code files, including

J. D. Beasley, David J. Best, Richard Brent, Kevin Buhr, Michael
A. Covington, Bill Cleveland, Robert Cleveland,, G. W. Cran,
C. G. Ding, Ulrich Drepper, Paul Eggert, J. O. Evans, David M. Gay,
H. Frick, G. W. Hill, Richard H. Jones, Eric Grosse, Shelby Haberman,
Bruno Haible, John Hartigan, Andrew Harvey, Trevor Hastie, Min Long
Lam, George Marsaglia, K. J. Martin, Gordon Matzigkeit,
C. R. Mckenzie, Jean McRae, Cyrus Mehta, Fionn Murtagh, John C. Nash,
Finbarr O'Sullivan, R. E. Odeh, William Patefield, Nitin Patel, Alan
Richardson, D. E. Roberts, Patrick Royston, Russell Lenth, Ming-Jen
Shyu, Richard C. Singleton, S. G. Springer, Supoj Sutanthavibul, Irma
Terpenning, G. E. Thomas, Rob Tibshirani, Wai Wan Tsang, Berwin
Turlach, Gary V. Vaughan, Michael Wichura, Jingbo Wang, M. A. Wong,
and the Free Software Foundation (for autoconf code and utilities).
See also files under src/extras.

Many more, too numerous to mention here, have contributed by sending bug
reports and suggesting various improvements.

Simon Davies whilst at the University of Auckland wrote the original
version of glm().

Julian Harris and Wing Kwong (Tiki) Wan whilst at the University of
Auckland assisted Ross Ihaka with the original Macintosh port.

R was inspired by the S environment which has been principally
developed by John Chambers, with substantial input from Douglas Bates,
Rick Becker, Bill Cleveland, Trevor Hastie, Daryl Pregibon and
Allan Wilks.

A special debt is owed to John Chambers who has graciously contributed
advice and encouragement in the early days of R and later became a
member of the core team.



The R Foundation may decide to give out <first.lastname>@R-project.org
email addresses to contributors to the R Project (even without making them
members of the R Foundation) when in the view of the R Foundation this
would help advance the R project.

The R Core Group, Roger Bivand, Jennifer Bryan, Di Cook, Dirk Eddelbuettel,
John Fox, Bettina Grün, Frank Harrell, Torsten Hothorn, Stefano Iacus,
Julie Josse, Balasubramanian Narasimhan, Marc Schwartz, Heather Turner,
Bill Venables, Hadley Wickham and Achim Zeileis are the ordinary members of
the R Foundation.
In addition, David Meyer and Simon Wood are also e-addressable by
<Firstname>.<Lastname>@R-project.org.
