% $Id: lexspoon.bib 661 2009-06-06 14:40:58Z lex $
%
% This file contains BibTeX entries for all of the technical
% work of Alexander Spoon <lex AT lexspoon.org> .
%
% It is based on Olin Shivers' approach.  Specifically:
% 
% - It's comprehensive.  It includes everything I have published, with
%   a liberal definition of "published".
%
% - It is in revers chronological order.
% 
% - I have tried to be comprehensive in the information provided: page numbers,
%   ISBN's for the proceedings, everything.
%   
%   In general, anything I do to make these listings better -- better BibTeX
%   hackery, more accurate info, more fields -- is useful for anyone who cites
%   my papers. On the basis of this "multiplier" benefit, please send me
%   corrections or improvements to these listings.
% 
% - Because there is so much information listed for an entry, you may find
%   that your bib style renders these extra fields into references that are
%   cluttered or ugly. If so, just "comment" out the field providing the
%   unwanted info in your bibtex file by prefixing the field name with "OPT"
%   or "X" ("OPT" appears to be the standard prefix for this trick).
% 
%   Some fields are already marked with these OPT prefixes. Feel free to 
%   kill the prefix and turn the fields back on, as you like.
% 
% - The claim to reverse-chronological order above notwithstanding, this file
%   is broken into two parts. Every conference paper herein is listed using a
%   "crossref" field to link it to its containing proceedings. This will make
%   it easier for multiple papers drawn from a single proceedings to have
%   consistent listings. So proceedings are all segregated at the bottom of
%   the file. These proceedings all have crossrefonly=1 fields.
%
% - Dependencies
%   + To help make it easier to clip out entries, I have *avoided* the usual
%     game of defining string variables for standard conference & journal
%     names. There are *no such* dependencies in these entries. (But you can
%     mutate them as you like to use your own conventions.)
%
%   + The few URLs that are listed are given using the \url{...} LaTeX form.
%     Define this as you like, or \usepackage{url} to get a good, default
%     handler.
%
%   + If you snip an entry for a conference, be sure to also snip the
%     entry for the corresponding proceedings from the bottom of the file. 
% 
% - With a few exceptions, I have not provided URLs. URLs just aren't
%   long-lived enough.  Even so, most of these documents are available
%   online -- try a web search.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


% TODO
% add technical-report number for the LCSD proceedings....
% add the Science of Computer Programming article whenever it comes out


@Book{odersky08:scalabook,
  author = 	 {Martin Odersky and Lex Spoon and Bill Venners},
  title = 	 {Programming in Scala},
  publisher = 	 {Artima, Inc.},
  year = 	 2008}

@InProceedings{spoon07:apievol,
  author={S.~Alexander Spoon},
  title={Fine-Grained {API} Evolution for Method
         Deprecation and Anti-Deprecation},
  crossref = "FOOL:07"
}
  

@TechReport{spoon06:antideptr,
  author={S.~Alexander Spoon},
  title={Anti-Deprecation: Towards Complete Static Checking for
         {API} Evolution (Extended Version)},
  number={LAMP-REPORT-2006-004},
  year=2006,
  institution={\'{E}cole Polytechnique F\'{e}d\'{e}rale de Lausanne (EPFL)}
}


@InProceedings{spoon06:lcsd,
  author={S.~Alexander Spoon},
  title={Anti-Deprecation: {Towards} Complete Static Checking
         for {API} Evolution},
  pages={65--74},
  crossref = "LCSD:06"
}

@TechReport{spoon06:packuniv,
  author={Alexander Spoon},
  title={Package Universes: {Which} Components Are Real Candidates?},
  number={LAMP-REPORT-2006-002},
  year=2006,
  institution={\'{E}cole Polytechnique F\'{e}d\'{e}rale de Lausanne (EPFL)}
}


@InProceedings{spoon05:chuck,
  author = {S.~Alexander Spoon and Olin Shivers},
  title = {Semantic Navigation of Large Code Bases in 
           Higher-Order, Dynamically Typed Languages},
  pages = {219--228},
  crossref = "WCRE:05"
}



@InProceedings{spoon05:ddpct,
  author = {S.~Alexander Spoon and Olin Shivers},
  title = {Dynamic Data Polyvariance Using Source-Tagged Classes},
  pages = {35--48},
  crossref = "DLS:05"
}


@PhdThesis{spoon:diss,
  author = {S. Alexander Spoon},
  title =  {Demand-Driven Type Inference with Subgoal Pruning},
  school = {Georgia Institute of Technology},
  year = 2005,
  address = {Atlanta, Georgia}
}

@InProceedings{spoon04:ddp,
  author = {S.~Alexander Spoon and Olin Shivers},
  title = {Demand-Driven Type Inference With Subgoal Pruning:
           Trading Precision for Scalability},
  pages = {51--74},
  crossref = "ECOOP:04"
}

@InProceedings{harrold01:selection,

  author = { Mary Jean Harrold and James A. Jones and Tongyu Li and
             Donglin Liang and Alessandro Orso and Maikel Pennings and
             Saurabh Sinha and S. Alexander Spoon and Ashish Gujarathi },
  title = 	 {Regression Test Selection for {J}ava Software},
  pages = {312--326},
  crossref = "OOPSLA:01"
}

@InProceedings{spoon99:muswikis,
  author = {Lex Spoon and Mark Guzdial},
  title = {Mu{S}wikis: A Graphical Collaboration System},
  pages = {590--599},
  crossref = "CSCL:99"
}


@InProceedings{pargas97:hybrid,
  author = {Roy P. Pargas  and  Jennifer Ludwick and  Steven A. Spoon},
  title = {Hybrid Search Algorithms},
  pages = {269--273},
  crossref = "SAC:97"
}




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


@Proceedings{FOOL:07,
  title = {Proceedings of the Workshop on
           Foundations and Developments of Object-Oriented Languages
           ({FOOL/WOOD} 2007)},
  booktitle = {Proceedings of the Workshop on
               Foundations and Developments of Object-Oriented Languages
               ({FOOL/WOOD} 2007)},
  month = jan,
  year = 2007,
  address = {Nice, France}
}

@Proceedings{LCSD:06,
  title = {Proceedings of the Workshop on Library-Centered Software
           Design ({LCSD} 2006)},
  booktitle = {Proceedings of the Workshop on Library-Centered Software
               Design ({LCSD} 2006)},
  month = oct,
  year = 2006,
  organization = {ACM},
  publisher = {Chalmers University of Technology},
  crossrefonly=1
}

@Proceedings{DLS:05,
  title =	{Proceedings of the Dynamic Languages Symposium ({DLS} 2005)},
  booktitle =	{Proceedings of the Dynamic Languages Symposium ({DLS} 2005)},
  address = 	{San Diego, California},
  month = oct,
  year =  2005,
  editor = {Roel Wuyts},
  organization = {ACM},
  crossrefonly=1
}

@Proceedings{WCRE:05,
  title =     {Proceedings of the 12th Working Conference on 
               Reverse Engineering ({WCRE} 2005)},
  booktitle = {Proceedings of the 12th Working Conference on 
               Reverse Engineering ({WCRE} 2005)},
  address = {Pittsburgh, Pennsylvania},
  month = nov,
  year = 2005,
  editor = {Andrea {De} Lucia and Susan Elliott Sim},
  organization = {IEEE},
  isbn={0-7695-2474-5},
  crossrefonly=1
}


@Proceedings{ECOOP:04,
  booktitle = {Proceedings of the $18^{\mathrm th}$ European Conference on 
               Object-Oriented Programming ({ECOOP} 2004)},
  title     = {Proceedings of the $18^{\mathrm th}$ European Conference on 
               Object-Oriented Programming ({ECOOP} 2004)},
  editor = {Martin Odersky},
  address = {Oslo, Norway},
  month = jun,
  year = 2004,
  publisher = {Springer},
  series    = {Lecture Notes in Computer Science},
  number    = 3086,
  isbn      = {3-540-22159-X},
  crossrefonly=1
}


@Proceedings{OOPSLA:01,
  booktitle = {Proceedings of the $16^{\mathrm th}$ ACM Conference on
               Object-Oriented Programming, Systems, Languages,
               and Applications ({OOPSLA} 2001)},
  title = {Proceedings of the $16^{\mathrm th}$ ACM Conference on
               Object-Oriented Programming, Systems, Languages,
               and Applications ({OOPSLA} 2001)},
  month = nov,
  year = 2001,
  address = {New York, NY, USA},
  publisher = {ACM Press},
  isbn = {1-58113-335-9},
}


@Proceedings{CSCL:99,
  booktitle = {Computer Support for Collaborative Learning ({CSCL} 1999)},
  title = {Computer Support for Collaborative Learning ({CSCL} 1999)},
  editor = {Christopher Hoadley},
  month = dec,
  year = 1999
}

@Proceedings{SAC:97,
  author = {Dave Oppenheim},
  editor = {Barrett Bryant and Janice Carroll and Jim Hightower and K. M. George},
  booktitle = {Proceedings of the 1997 ACM symposium on Applied computing ({SAC} 1997)},
  title = {Proceedings of the 1997 ACM symposium on Applied computing ({SAC} 1997)},
  year = 1997,
  address = {New York, NY, USA},
  publisher = {ACM Press},
  isbn = {0-89791-850-9}
}

