0.9.3.11:
[sbcl.git] / CREDITS
diff --git a/CREDITS b/CREDITS
index ec08b96..1384e2f 100644 (file)
--- a/CREDITS
+++ b/CREDITS
@@ -243,9 +243,13 @@ Also, Christopher Hoover and William Lott wrote compiler/generic/vm-macs.lisp
 to centralize information about machine-dependent macros and constants.
 
 Sean Hallgren is credited with most of the Alpha backend.  Julian
-Dolby created the CMU CL Alpha/linux port. Douglas Crosher added
+Dolby created the CMU CL Alpha/Linux port. Douglas Crosher added
 complex-float support.
 
+The original PPC backend was the work of Gary Byers.  Some bug fixes
+and other changes to update it for current CMUCL interfaces were made 
+by Eric Marsden and Douglas Crosher
+
 The CMU CL machine-independent disassembler (compiler/disassem.lisp)
 was written by Miles Bader.
 
@@ -279,7 +283,7 @@ by Bill Chiles to add encapsulation, and modified more by William Lott
 to add FDEFN objects.
 
 The CMU CL condition system (code/error.lisp) was based on
-some prototyping code written by Ken Pitman at Symbolics.
+some prototyping code written by Kent Pitman at Symbolics.
 
 The CMU CL HASH-TABLE system was originally written by Skef Wholey
 for Spice Lisp, then rewritten by William Lott, then rewritten
@@ -448,8 +452,9 @@ Aronson, and Steve Handerson.
 
 Douglas Crosher wrote code to support Gray streams, added X86 support
 for the debugger and relocatable code, wrote a conservative
-generational GC for the X86 port, and added X86-specific extensions to
-support stack groups and multiprocessing.
+generational GC for the X86 port.  He also added X86-specific
+extensions to support stack groups and multiprocessing, but these are
+not present in SBCL
 
 The CMU CL user manual credits Robert MacLachlan as editor. A chapter
 on the CMU CL interprocess communication extensions (not supported in
@@ -502,14 +507,21 @@ Martin Atzmueller:
   I've lost count. See the CVS logs.)
 
 Daniel Barlow:
-  He made SBCL play nicely with ILISP. He figured out how to get the
-  CMU CL dynamic object file loading code to work under SBCL. He
-  ported CMU CL's support for Alpha and PPC CPUs to SBCL. He wrote
-  code (e.g. grovel_headers.c and stat_wrapper stuff) to handle
-  machine-dependence and OS-dependence automatically, reducing
-  the amount of hand-tweaking required to keep ports synchronized.
-  He's also provided support for SBCL (as well as for free
-  Common Lisp in general) through his CLiki website.
+  His contributions have included support for shared object loading
+  (from CMUCL), the Cheney GC for non-x86 ports (from CMUCL), Alpha
+  and PPC ports (from CMUCL), control stack exhaustion checking (new),
+  native threads support for x86 Linux (new), and the initial x86-64
+  backend (new).  He also refactored the garbage collectors for
+  understandability, wrote code (e.g. grovel-headers.c and
+  stat_wrapper stuff) to find machine-dependent and OS-dependent
+  constants automatically, and was original author of the asdf,
+  asdf-install, sb-bsd-sockets, sb-executable, sb-grovel and sb-posix
+  contrib packages.
+
+Robert E. Brown:
+  He has reported various bugs and submitted several patches, 
+  especially improving removing gratuitous efficiencies in the
+  standard library.
 
 Cadabra, Inc. (later merged into GoTo.com):
   They hired Bill Newman to do some consulting for them,
@@ -520,29 +532,75 @@ Cadabra, Inc. (later merged into GoTo.com):
 Douglas Crosher:
   He continued to improve CMU CL after SBCL forked from it, creating 
   many patches which were directly applicable to SBCL. Notable examples
-  include fixes for various compiler bugs, and a generalization
-  of the type system's handling of the CONS type to allow ANSI-style
-  (CONS FOO BAR) types. 
+  include fixes for various compiler bugs, the implementation of
+  CL:DEFINE-SYMBOL-MACRO, and a generalization of the type system's
+  handling of the CONS type to allow ANSI-style (CONS FOO BAR) types. 
 
 Alexey Dejneka:
-  He has fixed many, many bugs. There's no single summary theme, but
-  he's fixed about a dozen different bugs in LOOP alone, and it appears
-  that a lot of his fixes there and elsewhere reflect systematic
-  public-spiritedness, fixing bugs as they show up in sbcl-devel or as
-  archived in the BUGS file.
+  He fixed many, many bugs on various themes, and has done a
+  tremendous amount of work on the compiler in particular, fixing
+  bugs and refactoring.
+
+Paul Dietz:
+  He is in the process of writing a comprehensive test suite
+  for the requirements of the ANSI Common Lisp standard. Already, at
+  the halfway stage, it has caught hundreds of bugs in SBCL, and
+  provided simple test cases for them. His random crash tester has
+  caught an old deep problem in the implementation of the stack
+  analysis phase in the compiler.
+
+Brian Downing:
+  He fixed the linker problems for building SBCL on Mac OS X.  He
+  found and fixed the cause of backtraces failing for undefined
+  functions and assembly routines.
+
+Miles Egan:
+  He creates binary packages of SBCL releases for Red Hat and other
+  (which?) platforms.
+
+Lutz Euler:
+  He made a large number of improvements to the x86-64 disassembler.
+
+Andreas Fuchs:
+  He provides infrastructure for monitoring build and performance
+  regressions of SBCL.  He assisted with the integration of the
+  Unicode work.
 
 Nathan Froyd:
   He has fixed various bugs, and also done a lot of internal
   cleanup, not visible at the user level but important for
   maintenance. (E.g. converting the PCL code to use LOOP instead
   of the old weird pre-ANSI ITERATE macro so that the code can be
-  read without being an expert in ancient languages and so that
-  can delete a thousand lines of implement-ITERATE macrology.)
+  read without being an expert in ancient languages and so that we
+  can delete a thousand lines of implement-ITERATE macrology from
+  the codebase.)
+
+Bruno Haible:
+  He devised an accurate continued-fraction-based implementation of
+  RATIONALIZE, replacing a less-accurate version inherited from
+  primordial CMUCL.
+
+Matthias Hoelzl:
+  He reported and fixed COMPILE's misbehavior on macros.
+
+Espen S Johnsen:
+  He provided an ANSI-compliant version of CHANGE-CLASS for PCL.
+
+Teemu Kalvas:
+  He worked on Unicode support for SBCL, including parsing the Unicode
+  character database, restoring the FAST-READ-CHAR optimization and
+  developing external format support.
+
+Frederik Kuivinen:
+  He showed how to implement the DEBUG-RETURN functionality.
 
 Arthur Lemmens:
-  He found and fixed a number of SBCL bugs while partially porting SBCL
-  to bootstrap under <some other Common Lisp system, which could
-  probably be found in the sbcl-devel archives>.
+  He found and fixed a number of SBCL bugs while partially porting
+  SBCL to bootstrap under Lispworks for Windows.
+
+David Lichteblau:
+  He came up with a more memory-efficient representation for
+  structures with raw slots.
 
 Robert MacLachlan:
   He has continued to answer questions about, and contribute fixes to, 
@@ -550,10 +608,48 @@ Robert MacLachlan:
   problems, has been invaluable to the CMU CL project and, by
   porting, invaluable to the SBCL project as well.
 
+Pierre Mai:
+  He has continued to work on CMU CL since the SBCL fork, and also
+  patched code to SBCL to enable dynamic loading of object files 
+  under OpenBSD.  He contributed to the port of SBCL to MacOS X,
+  implementing the Lisp side of the PowerOpen ABI.
+
+Eric Marsden:
+  Some of his fixes to CMU CL since the SBCL fork have been ported
+  to SBCL.  He also maintains the cl-benchmark package, which gives
+  us some idea of how our performance changes compared to earlier
+  releases and to other implementations.  He assisted in development
+  of Unicode support for SBCL.
+
+Antonio Martinez-Shotton:
+  He has contributed a number of bug fixes and bug reports to SBCL.
+
+Brian Mastenbrook:
+  He contributed to and extensively maintained the port of SBCL to
+  MacOS X. His contributions include overcoming binary compatibility
+  issues between different versions of dlcompat on Darwin, other 
+  linker fixes, and signal handler bugfixes.
+
 Dave McDonald:
   He made a lot of progress toward getting SBCL to be bootstrappable
   under CLISP.
 
+Perry E. Metzger:
+  He ported SBCL to NetBSD with newer signals, building on the
+  work of Valtteri Vuorikoski.  He also provided various cleanups to
+  the C runtime.
+
+Gerd Moellman:
+  He has made many cleanups and improvements, small and large, in
+  CMU CL (mostly in PCL), which we have gratefully ported to SBCL.  Of
+  particular note is his ctor MAKE-INSTANCE optimization, which is both
+  faster in the typical case than the old optimizations in PCL and
+  less buggy.
+
+Timothy Moore:
+  He designed and implemented the original CMUCL linkage-table, on
+  which the SBCL implementation thereof is based.
+
 William ("Bill") Newman:
   He continued to maintain SBCL after the fork, increasing ANSI
   compliance, fixing bugs, regularizing the internals of the
@@ -562,28 +658,89 @@ William ("Bill") Newman:
   updating documentation, and even, for better or worse, getting
   rid of various functionality (e.g. the byte interpreter).
 
+Patrik Nordebo:
+  He contributed to the port of SBCL to MacOS X, finding solutions for
+  ABI and assembly syntax differences between Darwin and Linux.
+
+Scott Parish:
+  He ported SBCL to OpenBSD-with-ELF.
+
+Kevin M. Rosenberg:
+  He provided the ACL-style toplevel (sb-aclrepl contrib module), and
+  a number of MOP-related bug reports.  He also creates the official
+  Debian packages of SBCL.
+
 Christophe Rhodes:
-  He has done various low-level work on SBCL, especially for the
-  SPARC port (and for CPU-architecture-neutral things motivated by
-  it, like *BACKEND-FEATURES*). He's also contributed miscellaneous
-  bug fixes.
+  He ported SBCL to SPARC (based on the CMUCL backend), made various
+  port-related and SPARC-related changes (like *BACKEND-SUBFEATURES*),
+  made many fixes and improvements in the compiler's type system, has
+  essentially completed the work to enable bootstrapping SBCL under
+  unrelated (non-SBCL, non-CMU-CL) Common Lisps.  He participated in
+  the modernization of SBCL's CLOS implementation, implemented the
+  treatment of compiler notes as restartable conditions, provided
+  optimizations to compiler output, and contributed in other ways as
+  well.
+
+Stig Erik Sandoe:
+  He showed how to convince the GNU toolchain to build SBCL in a way
+  which supports callbacks from C code into SBCL.
+
+Rudi Schlatte:
+  He ported Paul Foley's simple-streams implementation from cmucl,
+  converted the sbcl manual to Texinfo and wrote a documentation
+  string extractor that keeps function documentation in the manual
+  current.
+
+Thiemo Seufer:
+  He modernized the MIPS backend, fixing many bugs, and assisted in
+  cleaning up the C runtime code.
+
+Julian Squires:
+  He worked on Unicode support for the PowerPC platform.
+
+Nikodemus Siivola:
+  He provided build fixes, in particular to tame the SunOS toolchain,
+  implemented package locks, ported the linkage-table code from CMUCL,
+  reimplemented STEP, and has fixed many (stream-related and other) bugs 
+  besides.
+
+Juho Snellman:
+  He provided several performance enhancements, including a better hash
+  function on strings, removal of unneccessary bounds checks, and
+  multiple improvements to performance of common operations on
+  bignums.  He ported and enhanced the statistical profiler written by
+  Gerd Moellmann for CMU CL.  He completed the work on the x86-64 port
+  of SBCL.
+
+Brian Spilsbury:
+  He wrote Unicode-capable versions of SBCL's character, string, and
+  stream types and operations on them.  (These versions did not end up
+  in the system, but did to a large extent influence the support which
+  finally did get merged.)
 
 Raymond Toy:
   He continued to work on CMU CL after the SBCL fork, especially on
   floating point stuff. Various patches and fixes of his have been
-  ported to SBCL.
+  ported to SBCL, including his Sparc port of linkage-table.
 
 Peter Van Eynde:
-  He wrestled the CLISP test suite into a portable test suite
+  He wrestled the CLISP test suite into a mostly portable test suite
   (clocc ansi-test) which can be used on SBCL, provided a slew of
   of bug reports resulting from that, and submitted many other bug
   reports as well.
 
+Valtteri Vuorikoski:
+  He ported SBCL to NetBSD, and also fixed a long-standing bug in
+  DEFSTRUCT with respect to colliding accessor names.
+
 Colin Walters:
   His O(N) implementation of the general case of MAP, posted on the
   cmucl-imp@cons.org mailing list, was the inspiration for similar MAP
   code added in sbcl-0.6.8.
 
+Cheuksan Edward Wang:
+  He assisted in debugging the SBCL x86-64 backend.
+
 Raymond Wiker:
   He ported sbcl-0.6.3 back to FreeBSD, restoring the ancestral
   CMU CL support for FreeBSD and updating it for the changes made
@@ -593,13 +750,20 @@ Raymond Wiker:
 
 INITIALS GLOSSARY (helpful when reading comments, CVS commit logs, etc.)
 
-AL   Arthur Lemmens
+VJA  Vincent Arkesteijn
 MNA  Martin Atzmueller
-DB   Daniel Barlow
+DB   Daniel Barlow (also "dan")
 DTC  Douglas Crosher
 APD  Alexey Dejneka
+PFD  Paul F. Dietz
 NJF  Nathan Froyd
+AL   Arthur Lemmens
+DFL  David Lichteblau
 RAM  Robert MacLachlan
+PRM  Pierre Mai
 WHN  William ("Bill") Newman
 CSR  Christophe Rhodes
+THS  Thiemo Seufer
+NS   Nikodemus Siivola
 PVE  Peter Van Eynde
+PW   Paul Werkowski