%%% -*-BibTeX-*- %%% ==================================================================== %%% BibTeX-file{ %%% author = "Nelson H. F. Beebe", %%% version = "2.182", %%% date = "22 August 2025", %%% time = "16:13:30 MDT", %%% filename = "java2000.bib", %%% address = "University of Utah %%% Department of Mathematics, 110 LCB %%% 155 S 1400 E RM 233 %%% Salt Lake City, UT 84112-0090 %%% USA", %%% telephone = "+1 801 581 5254", %%% URL = "https://www.math.utah.edu/~beebe", %%% checksum = "07820 85711 372643 3763233", %%% email = "beebe at math.utah.edu, beebe at acm.org, %%% beebe at computer.org (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "bibliography; BibTeX; HotJava; HotJava; %%% HotJavaBean; HTML; Java; Java3D; JavaBean; %%% JavaChip; JavaCUP; JavaDev; JavaDump; %%% JavaEngine; JavaLanche; JavaLex; JavaMan; %%% JavaManagement; JavaOne; JavaOS; JavaPVM; %%% JavaQ; JavaScript; JavaSoft; JavaSpace; %%% JavaStation; JavaStations; JavaStudio; %%% JavaTalk; JBuilder; JChat; JClass; Jcon; %%% JDKs; JetAssist; JetForm; JFactory; JLex; %%% JPython; JRes; JSafe; JScape; JScript; %%% JScriptTest; JSpace; JTable; JTAPI; KJPrice; %%% MacJava; MetaJava; NexusJava; PersonalJava; %%% picoJava; PJAmi; PowerJ; SpecJava; TclJava; %%% TowerJ; World Wide Web; WWW", %%% license = "public domain", %%% supported = "yes", %%% docstring = "This bibliography records books and other %%% publications about the Java programming %%% language, and related software, for the years %%% 2000--date. The companion bibliography, %%% java.bib, covers the years 1995--1999. %%% %%% At version 2.182, year coverage looked %%% like this: %%% %%% 1997 ( 1) 2002 ( 454) 2007 ( 156) %%% 1998 ( 1) 2003 ( 530) 2008 ( 164) %%% 1999 ( 1) 2004 ( 450) 2009 ( 122) %%% 2000 ( 462) 2005 ( 294) 2010 ( 1) %%% 2001 ( 527) 2006 ( 171) %%% %%% Article: 2562 %%% Book: 581 %%% InCollection: 1 %%% InProceedings: 106 %%% Manual: 6 %%% MastersThesis: 8 %%% Misc: 6 %%% PhdThesis: 5 %%% Proceedings: 46 %%% TechReport: 13 %%% %%% Total entries: 3334 %%% %%% Further information on Java development and %%% the HotJava WorldWideWeb browser can be %%% found at the URL http://java.sun.com/. %%% Netscape versions 2.03-beta or later %%% support Java as well. %%% %%% A Java applet index and repository is %%% available at http://www.gamelan.com/. %%% %%% Visix has extended their %%% platform-independent window systems support %%% to include Java; details are at %%% http://www.visix.com/ %%% %%% A tutorial on Java is available at %%% http://java.sun.com/tutorial, a white paper %%% on the Java language is at %%% http://java.sun.com/1.0alpha3/doc/overview/ %%% java/index.html, and a white paper on the %%% HotJava browser is at http://java.sun.com/ %%% 1.0alpha3/doc/overview/hotjava/index.html. %%% %%% A status report on Java security problems %%% is available at http://java.sun.com/sfaq; %%% a good discussion of these issues can be %%% found in the reference Hamilton:1996:JSN %%% below. %%% %%% John December maintains a Java bibliography %%% that includes press releases and online %%% references at http://www.december.com/john// %%% works/java/bib.html; a snapshot of that %%% collection was incorporated in this %%% bibliography on 17-Dec-1995. %%% %%% The Web site for Java World magazine is at %%% http://www.javaworld.com/; many entries in %%% this bibliography were found in resources %%% there. %%% %%% An interesting press release detailing %%% plans about Java-on-a-chip is available %%% at http://www.sun.com:80/sparc/newsreleases/nr95-042.html. %%% %%% LINPACK benchmark results for Java on a %%% number of different machines have recently %%% been offered at %%% http://www.netlib.org/benchmark/linpackjava/. %%% If you use a Java-aware browser to visit %%% that URL, you can run the benchmark on your %%% own machine, and report the results back to %%% the LINPACK developers. %%% %%% Other Java sites on the Internet include %%% (see entry DeRoest:1996:PHP below): %%% %%% Java FAQS: %%% http://www-net.com/java/faq %%% http://lightyear.ncsa.uiuc.edu/~srp/java/javabooks.html %%% http://www.digitalfocus.com/faq/ %%% http://www.afu.com/javafaq.html %%% %%% JavaScript handbook: %%% http://home.netscape.com/eng/mozilla/2.0/handbook/javascript/index.html %%% %%% Java tutorials: %%% http://www.neca.com/~vmis/java.html %%% http://sunsite.unc.edu/javafaq/javafaq.html %%% http://www.phrantic.com/scoop/onjava.html %%% %%% JavaScript tutorials: %%% http://www.freqgrafx.com/411/tutorial.html %%% http://ourworld.compuserve.com/homepages/voodoo/script.html %%% %%% Java and porting projects: %%% http://www.javasoft.com/ %%% ftp://ftp4.netscape.com/pub/MacJava %%% http://java.blackdown.org/java-linux.html %%% http://www.osf.org/mall/web/javaport.htm %%% http://www.lls.se/~matjo/PJAmi/PJAmi.html %%% http://ncc.hursley.ibm.com/javainfo/ (IBM's %%% official Java home page) %%% http://www.hp.com/go/JAVA (Hewlett--Packard' %%% official Java home page) %%% %%% Java books in languages other than English: %%% http://lightyear.ncsa.uiuc.edu/~srp/java/japanese.html %%% http://wwwiz.com/books/european.html %%% %%% Java books at Amazon bookstore (warning: %%% also contains many entries for books about %%% the island of Java in Indonesia): %%% http://www.wholesaleproducts.com/computer-javascript.html %%% http://www.wholesaleproducts.com/computer-java.html %%% %%% This bibliography was initially built from %%% searches in the OCLC Content1st database. %%% Additions were then made from all of the %%% bibliographies in the TeX User Group %%% collection, from bibliographies in the %%% author's personal files, from the IEEE %%% INSPEC CD-ROM database (1995--Sept 1996), %%% from the Compendex database, from the %%% UnCover database, and from the OCLC %%% BooksInPrint database. %%% %%% Numerous errors in the sources noted above %%% have been corrected. Spelling has been %%% verified with the UNIX spell and GNU ispell %%% programs using the exception dictionary %%% stored in the companion file with extension %%% .sok. %%% %%% BibTeX citation tags are uniformly chosen as %%% name:year:abbrev, where name is the family %%% name of the first author or editor, year is a %%% 4-digit number, and abbrev is a 3-letter %%% condensation of important title %%% words. Citation tags were automatically %%% generated by software developed for the %%% BibNet Project. %%% %%% In this bibliography, entries are sorted %%% first by ascending year, and within each %%% year, alphabetically by author or editor, and %%% then, if necessary, by the 3-letter %%% abbreviation at the end of the BibTeX %%% citation tag, using the bibsort -byyear %%% utility. Year order has been chosen to make %%% it easier to identify the most recent work. %%% %%% The checksum field above contains a CRC-16 %%% checksum as the first value, followed by the %%% equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert %%% Solovay's checksum utility.", %%% } %%% ==================================================================== @Preamble{"\input bibnames.sty " # "\input path.sty " # "\ifx \undefined \acro \def \acro #1{{\sc #1}} \fi" # "\ifx \undefined \booktitle \def \booktitle#1{{{\em #1}}} \fi" # "\ifx \undefined \circled \def \circled #1{(#1)}\fi" # "\ifx \undefined \k \let \k = \c \fi" # "\ifx \undefined \reg \def \reg {\circled{R}}\fi" # "\ifx \undefined \TM \def \TM {${}^{\sc TM}$} \fi" # "\hyphenation{ Aero-space Gur-e-wich Horst-mann ROAST-ER Rich-ard Sep-tem-ber data-bases roast-er }" } %%% ==================================================================== %%% Acknowledgement abbreviations: @String{ack-nhfb = "Nelson H. F. Beebe, University of Utah, Department of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake City, UT 84112-0090, USA, Tel: +1 801 581 5254, e-mail: \path|beebe@math.utah.edu|, \path|beebe@acm.org|, \path|beebe@computer.org| (Internet), URL: \path|https://www.math.utah.edu/~beebe/|"} %%% ==================================================================== %%% Institution abbreviations: @String{inst-CSC = "Center for Scientific Computing, Department of Mathematics, University of Utah"} @String{inst-CSC:adr = "Salt Lake City, UT 84112, USA"} %%% ==================================================================== %%% Journal abbreviations: @String{j-ACM-COMM-COMP-ALGEBRA = "ACM Communications in Computer Algebra"} @String{j-ACTA-INFO = "Acta Informatica"} @String{j-ADA-USER-J = "Ada User Journal"} @String{j-ADV-ENG-SOFTWARE = "Advances in Engineering Software"} @String{j-ADV-EXP-MED-BIO = "Advances in experimental medicine and biology"} @String{j-ADV-IMAGING = "Advanced Imaging"} @String{j-AMER-STAT = "The American Statistician"} @String{j-APL-QUOTE-QUAD = "APL Quote Quad"} @String{j-APPL-MATH-COMP = "Applied Mathematics and Computation"} @String{j-BEHAV-RES-METH-INSTR-COMP = "Behavior Research Methods, Instruments, and Computers"} @String{j-BELL-LABS-TECH-J = "Bell Labs Technical Journal"} @String{j-BIOINFORMATICS = "Bioinformatics"} @String{j-BIOSYSTEMS = "Biosystems (A6E)"} @String{j-BUSINESS-WEEK = "Business week"} @String{j-CACM = "Communications of the ACM"} @String{j-CCCUJ = "C/C++ Users Journal"} @String{j-CCPE = "Concurrency and Computation: Prac\-tice and Experience"} @String{j-CHEMO-INTELL-LAB = "Chemometrics and Intelligent Laboratory Systems"} @String{j-COMP-ARCH-NEWS = "ACM SIGARCH Computer Architecture News"} @String{j-COMP-CIVIL-ENG = "Journal of Computing in Civil Engineering"} @String{j-COMP-EDU-J = "Computers in education journal"} @String{j-COMP-GEOSCI = "Computers and Geosciences"} @String{j-COMP-J = "The Computer Journal"} @String{j-COMP-LANGS = "Computer Languages"} @String{j-COMP-LANGS-SYS-STRUCT = "Computer Languages, Systems and Structures"} @String{j-COMP-NET-AMSTERDAM = "Computer Networks (Amsterdam, Netherlands: 1999)"} @String{j-COMP-PHYS-COMM = "Computer Physics Communications"} @String{j-COMP-STANDARDS-INTERFACES = "Computer Standards and Interfaces"} @String{j-COMP-STAT = "Computational Statistics"} @String{j-COMP-STRUCTURES = "Computers and Structures"} @String{j-COMP-SURV = "ACM Computing Surveys"} @String{j-COMPUT-APPL-ENG-EDUC = "Computer Applications in Engineering Education"} @String{j-COMPUT-MATH-APPL = "Computers and Mathematics with Applications"} @String{j-COMPUT-BULL = "The Computer Bulletin"} @String{j-COMPUT-HUM-BEHAV = "Computers in Human Behavior"} @String{j-COMPUT-MATH-APPL = "Computers and Mathematics with Applications"} @String{j-COMPUT-METH-PROG-BIOMED = "Computer Methods and Programs in Biomedicine"} @String{j-COMPUT-SCI-ENG = "Computing in Science and Engineering"} @String{j-COMPUT-SECUR = "Computers and Security"} @String{j-COMPUTER = "Computer"} @String{j-COMPUTERS-AND-GRAPHICS = "Computers and Graphics"} @String{j-CONTROL-ENG = "Control Engineering"} @String{j-CPE = "Concurrency: Prac\-tice and Experience"} @String{j-DDJ = "Dr. Dobb's Journal of Software Tools"} @String{j-EDN = "EDN"} @String{j-ELECT-NOTES-THEOR-COMP-SCI = "Electronic Notes in Theoretical Computer Science"} @String{j-ELECTRONIC-DESIGN = "Electronic Design"} @String{j-ELECTRONIC-ENG-TIMES = "Electronic Engineering Times"} @String{j-ELECTRONIC-LIBRARY = "Electronic Library"} @String{j-ELECTRONIK = "Elektronik"} @String{j-ELETTRONICA-OGGI = "Elettronica Oggi"} @String{j-EMBED-SYS-PROG = "Embedded Systems Programming"} @String{j-EMBEDDED-LINUX-J = "Embedded Linux Journal"} @String{j-EMPIR-SOFTWARE-ENG = "Empirical Software Engineering"} @String{j-EXPERT-SYST-APPL = "Expert Systems with Applications"} @String{j-FORM-METHODS-SYST-DES = "Formal Methods in System Design"} @String{j-FORM-ASP-COMPUT = "Formal Aspects of Computing"} @String{j-FRONTIERS-EDU-CONF = "Frontiers in Education Conference"} @String{j-FUND-INFO = "Fundamenta Informaticae"} @String{j-FUT-GEN-COMP-SYS = "Future Generation Computer Systems"} @String{j-HIGHER-ORDER-SYMB-COMPUT = "Higher-Order and Symbolic Computation"} @String{j-IBM-JRD = "IBM Journal of Research and Development"} @String{j-IBM-SYS-J = "IBM Systems Journal"} @String{j-IEE-PROC-COMPUT-DIGIT-TECH = "IEE Proceedings. Computers and Digital Techniques"} @String{j-IEEE-CGA = "IEEE Computer Graphics and Applications"} @String{j-IEEE-COMPUT-ARCHIT-LETT = "IEEE Computer Architecture Letters"} @String{j-IEEE-CONCURR = "IEEE Concurrency"} @String{j-IEEE-DISTRIB-SYST-ONLINE = "IEEE Distributed Systems Online"} @String{j-IEEE-INTERNET-COMPUT = "IEEE Internet Computing"} @String{j-IEEE-MICRO = "IEEE Micro"} @String{j-IEEE-MULTIMEDIA = "IEEE MultiMedia"} @String{j-IEEE-POT = "IEEE Potentials"} @String{j-IEEE-SEC-PRIV = "IEEE Security \& Privacy"} @String{j-IEEE-SIGNAL-PROCESS-MAG = "IEEE signal processing magazine"} @String{j-IEEE-SOFTWARE = "IEEE Software"} @String{j-IEEE-SPECTRUM = "IEEE Spectrum"} @String{j-IEEE-TRANS-CONSUMER-ELECTRONICS = "IEEE Transactions on Consumer Electronics"} @String{j-IEEE-TRANS-COMPUT = "IEEE Transactions on Computers"} @String{j-IEEE-TRANS-EDUC = "IEEE transactions on education"} @String{j-IEEE-TRANS-IND-ELECTRON = "IEEE Transactions on Industrial Electronics"} @String{j-IEEE-TRANS-INSTRUM-MEAS = "IEEE Transactions on Instrumentation and Measurement"} @String{j-IEEE-TRANS-PAR-DIST-SYS = "IEEE Transactions on Parallel and Distributed Systems"} @String{j-IEEE-TRANS-SOFTW-ENG = "IEEE Transactions on Software Engineering"} @String{j-IETE-TECH-REV = "IETE Technical Review"} @String{j-IJHPCA = "The International Journal of High Performance Computing Applications"} @String{j-INF-CONTROL = "Information and Control"} @String{j-INFO-PROC-LETT = "Information Processing Letters"} @String{j-INFO-RETRIEVAL-LIB-AUTO = "Information Retrieval and Library Automation"} @String{j-INFO-SOFTWARE-TECH = "Information and Software Technology"} @String{j-INFORMATION-WEEK = "Information Week"} @String{j-INFORMS-J-COMPUT = "INFORMS Journal on Computing"} @String{j-INFOWORLD = "InfoWorld"} @String{j-INT-J-COMPUT-APPL = "International Journal of Computers and Applications"} @String{j-INT-J-COMPUT-SYST-SCI-ENG = "International Journal of Computer Systems Science and Engineering"} @String{j-INT-J-ENG-EDUC = "International Journal of Engineering Education"} @String{j-INT-J-PARALLEL-PROG = "International Journal of Parallel Programming"} @String{j-INT-J-ROBOTICS-AUTOMATION = "International Journal of Robotics and Automation"} @String{j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER = "International Journal on Software Tools for Technology Transfer (STTT)"} @String{j-INT-J-SYST-SCI = "International Journal of Systems Science"} @String{j-INT-TRANS-OPL-RES = "International Transactions in Operational Research"} @String{j-INTEL-TECH-J = "Intel Technology Journal"} @String{j-J-ACM = "Journal of the ACM"} @String{j-J-AM-SOC-INF-SCI = "Journal of the American Society for Information Science"} @String{j-J-AM-SOC-INF-SCI-TECHNOL = "Journal of the American Society for Information Science and Technology: JASIST"} @String{j-J-AUTOM-REASON = "Journal of Automated Reasoning"} @String{j-J-BIOMED-INF = "Journal of Biomedical Informatics"} @String{j-J-COMP-INFO-SYS = "The Journal of Computer Information Systems"} @String{j-J-COMP-SCI-TECH = "Journal of Computer Science and Technology"} @String{j-J-COMP-SYS-SCI = "Journal of Computer and System Sciences"} @String{j-J-COMPUT-APPL-MATH = "Journal of Computational and Applied Mathematics"} @String{j-J-COMPUT-GRAPH-STAT = "Journal of Computational and Graphical Statistics"} @String{j-J-DIGITAL-IMAGING = "Journal of Digital Imaging"} @String{j-J-GEOPHYS-RES = "Journal of Geophysical Research"} @String{j-J-GRID-COMP = "Journal of Grid Computing"} @String{j-J-INFO-SCI-ENG = "Journal of Information Science and Engineering"} @String{j-J-LOGIC-ALG-PROG = "Journal of Logic and Algebraic Programming"} @String{j-J-NETW-COMPUT-APPL = "Journal of Network and Computer Applications"} @String{j-J-OPER-RES-SOC = "OR: the journal of the Operational Research Society"} @String{j-J-PAR-DIST-COMP = "Journal of Parallel and Distributed Computing"} @String{j-J-R-STAT-SOC-SER-A-STAT-SOC = "Journal of the Royal Statistical Society. Series A (Statistics in Society)"} @String{j-J-SOFTW-MAINT-EVOL = "Journal of Software Maintenance and Evolution: Research and Practice"} @String{j-J-STAT-SOFT = "Journal of Statistical Software"} @String{j-J-SUPERCOMPUTING = "The Journal of Supercomputing"} @String{j-J-SYST-ARCH = "Journal of Systems Architecture"} @String{j-J-SYST-SOFTW = "The Journal of systems and software"} @String{j-J-UCS = "J.UCS: Journal of Universal Computer Science"} @String{j-JERIC = "ACM Journal on Educational Resources in Computing (JERIC)"} @String{j-LECT-NOTES-COMP-SCI = "Lecture Notes in Computer Science"} @String{j-LINUX-J = "Linux Journal"} @String{j-LIT-LING-COMP = "Literary and Linguistic Computing"} @String{j-LOGIN = ";login: the USENIX Association newsletter"} @String{j-LOPLAS = "ACM Letters on Programming Languages and Systems"} @String{j-MAGMA = "Magma"} @String{j-MARKUP-LANG = "Markup languages: theory \& practice"} @String{j-MATH-COMP-EDU = "Mathematics and computer education"} @String{j-MATH-COMPUT-SIMUL = "Mathematics and Computers in Simulation"} @String{j-MICROPROC-MICROSYS = "Microprocessors and Microsystems"} @String{j-MICROPROC-REP = "Microprocessor report"} @String{j-MINI-MICRO-SYSTEMS = "Mini-Micro Systems"} @String{j-MOL-SIM = "Molecular simulation"} @String{j-MULTIMEDIA-SYSTEMS = "Multimedia Systems"} @String{j-MULTIMEDIA-TOOLS-APPLIC = "Multimedia Tools and Applications"} @String{j-NETWORK-COMPUTING = "Network Computing"} @String{j-NETWORK-SECURITY = "Network Security"} @String{j-NEURAL-PAR-SCI-COMPUT = "Neural, Parallel and Scientific Computations"} @String{j-NEUROIMAGE = "NeuroImage"} @String{j-NORDIC-J-COMPUT = "Nordic Journal of Computing"} @String{j-OPER-SYS-REV = "Operating Systems Review"} @String{j-PARALLEL-ALGORITHMS-APPL = "Parallel Algorithms and Applications"} @String{j-PARALLEL-COMPUTING = "Parallel Computing"} @String{j-PARALLEL-DIST-COMP-PRACT = "Parallel and Distributed Computing Practices"} @String{j-PARALLEL-PROCESS-LETT = "Parallel Processing Letters"} @String{j-PC-MAGAZINE = "PC Magazine"} @String{j-PERF-EVAL = "Performance evaluation"} @String{j-PERS-COMPUT-WORLD = "Personal computer world"} @String{j-PRAMANA = "Pramana: Journal of Physics"} @String{j-PRIMUS = "PRIMUS (Problems Resources and Issues in Mathematics Undergraduate Studies)"} @String{j-PROC-AM-CONTROL-CONF = "Proceedings of the American Control Conference"} @String{j-PROC-IEEE = "Proceedings of the IEEE"} @String{j-PROC-SPIE = "Proceedings of the SPIE --- The International Society for Optical Engineering"} @String{j-PROG-COMP-SOFT = "Programming and Computer Software; translation of Programmirovaniye (Moscow, USSR) Plenum"} @String{j-QUEUE = "ACM Queue: Tomorrow's Computing Today"} @String{j-R-NEWS = "R News: the Newsletter of the R Project"} @String{j-REAL-TIME-SYST = "Real-Time Systems"} @String{j-REV-ESP-ELECT = "Revista espa{\~n}ola de electronica"} @String{j-SCI-COMPUT-PROGRAM = "Science of Computer Programming"} @String{j-SCI-PROG = "Scientific Programming"} @String{j-SCPE = "Scalable Computing: Practice and Experience"} @String{j-SIGACT = "ACM SIGACT News"} @String{j-SIGADA-LETTERS = "ACM SIGADA Ada Letters"} @String{j-SIGAPP = "ACM SIGAPP Applied Computing Review"} @String{j-SIGCSE = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)"} @String{j-SIGMETRICS = "ACM SIGMETRICS Perform. Eval. Rev."} @String{j-SIGMOD = "SIGMOD Record (ACM Special Interest Group on Management of Data)"} @String{j-SIGPLAN = "ACM SIG{\-}PLAN Notices"} @String{j-SIGSAM = "SIGSAM Bulletin (ACM Special Interest Group on Symbolic and Algebraic Manipulation)"} @String{j-SIGSOFT = "ACM SIGSOFT Software Engineering Notes"} @String{j-SIM-SERIES = "Simulation series"} @String{j-SIMULATION = "Simulation"} @String{j-SOFTW-CONCEPTS-TOOLS = "Software --- Concepts and Tools"} @String{j-SPE = "Soft\-ware\emdash Prac\-tice and Experience"} @String{j-SYS-ADMIN = "SysAdmin"} @String{j-SYS-COMP-JAPAN = "Systems and computers in Japan"} @String{j-SYST-CONTROL-INFO = "Systems, Control and Information = Shisutemu Seigyo Joho Gakkai shi"} @String{j-TACO = "ACM Transactions on Architecture and Code Optimization"} @String{j-TECHNIQUE-SCI-INFORMATIQUES = "Technique et science informatiques : TSI"} @String{j-TECHNOMETRICS = "Technometrics"} @String{j-TECS = "ACM Transactions on Embedded Computing Systems"} @String{j-THEOR-COMP-SCI = "Theoretical Computer Science"} @String{j-TOCHI = "ACM Transactions on Computer-Human Interaction"} @String{j-TOCS = "ACM Transactions on Computer Systems"} @String{j-TODAES = "ACM Transactions on Design Automation of Electronic Systems"} @String{j-TOIT = "ACM Transactions on Internet Technology (TOIT)"} @String{j-TOMS = "ACM Transactions on Mathematical Software"} @String{j-TOPLAS = "ACM Transactions on Programming Languages and Systems"} @String{j-TOSEM = "ACM Transactions on Software Engineering and Methodology"} @String{j-TUGboat = "TUGboat"} @String{j-TWEB = "ACM Transactions on the Web (TWEB)"} @String{j-VLDB-J = "VLDB Journal: Very Large Data Bases"} @String{j-WIRTSCHAFTSINFORMATIK = "Wirtschaftsinformatik"} %%% ==================================================================== %%% Publishers and their addresses: @String{pub-ACM = "ACM Press"} @String{pub-ACM:adr = "New York, NY 10036, USA"} @String{pub-AIP = "American Institute of Physics"} @String{pub-AIP:adr = "Woodbury, NY, USA"} @String{pub-APRESS = "Apress"} @String{pub-APRESS:adr = "Berkeley, CA, USA"} @String{pub-ARTECH = "Artech House Inc."} @String{pub-ARTECH:adr = "Norwood, MA, USA"} @String{pub-AW = "Ad{\-d}i{\-s}on-Wes{\-l}ey"} @String{pub-AW:adr = "Reading, MA, USA"} @String{pub-AW-LONGMAN = "Ad{\-d}i{\-s}on-Wes{\-l}ey Longman"} @String{pub-AW-LONGMAN:adr = "Reading, MA, USA"} @String{pub-BIRKHAUSER = "Birkh{\"a}user Verlag"} @String{pub-BIRKHAUSER:adr = "Basel, Switzerland"} @String{pub-BROOKS-COLE = "Brooks\slash Cole"} @String{pub-BROOKS-COLE:adr = "Pacific Grove, CA, USA"} @String{pub-CAMBRIDGE = "Cambridge University Press"} @String{pub-CAMBRIDGE:adr = "Cambridge, UK"} @String{pub-CHAPMAN-HALL-CRC = "Chapman and Hall/CRC"} @String{pub-CHAPMAN-HALL-CRC:adr = "Boca Raton, FL, USA"} @String{pub-CHARLES-RIVER-MEDIA = "Charles River Media, Inc."} @String{pub-CHARLES-RIVER-MEDIA:adr = "403 VFW Drive, PO Box 417, Rockland, MA 02370, USA"} @String{pub-CORIOLIS = "Coriolis Group Books"} @String{pub-CORIOLIS:adr = "Scottsdale, AZ, USA"} @String{pub-COURSE-TECHNOLOGY = "Course Technology"} @String{pub-COURSE-TECHNOLOGY:adr = "Cambridge, MA, USA"} @String{pub-CRC = "CRC Press"} @String{pub-CRC:adr = "2000 N.W. Corporate Blvd., Boca Raton, FL 33431-9868, USA"} @String{pub-HUNGRY-MINDS = "Hungry Minds"} @String{pub-HUNGRY-MINDS:adr = "909 Third Avenue, New York, NY 10022, USA"} @String{pub-HUNGRY-MINDS-IN = "Hungry Minds"} @String{pub-HUNGRY-MINDS-IN:adr = "Indianapolis, IN, USA"} @String{pub-IBM-PRESS = "IBM Press"} @String{pub-IBM-PRESS:adr = ""} @String{pub-IDG = "IDG Books"} @String{pub-IDG:adr = "San Mateo, CA, USA"} @String{pub-IDG-WORLDWIDE = "I D G Books Worldwide"} @String{pub-IDG-WORLDWIDE:adr = "Indianapolis, IN, USA"} @String{pub-IEEE = "IEEE Computer Society Press"} @String{pub-IEEE:adr = "1109 Spring Street, Suite 300, Silver Spring, MD 20910, USA"} @String{pub-IOS = "IOS Press"} @String{pub-IOS:adr = "Amsterdam, The Netherlands"} @String{pub-IRWIN-MCGRAW-HILL = "Irwin\slash McGraw Hill"} @String{pub-IRWIN-MCGRAW-HILL:adr = "Boston, MA, USA"} @String{pub-ISO = "International Organization for Standardization"} @String{pub-ISO:adr = "Geneva, Switzerland"} @String{pub-ITP = "International Thomson Publishing"} @String{pub-ITP:adr = "London, New York, Boston, Madrid, \\ldots{}"} @String{pub-JONES-BARTLETT = "Jones and Bartlett"} @String{pub-JONES-BARTLETT:adr = "Boston, MA, USA"} @String{pub-KLUWER = "Kluwer Academic Publishers Group"} @String{pub-KLUWER:adr = "Norwell, MA, USA, and Dordrecht, The Netherlands"} @String{pub-MANNING = "Manning Publications"} @String{pub-MANNING:adr = "Greenwich, CT, USA"} @String{pub-MCGRAW-HILL = "Mc{\-}Graw-Hill"} @String{pub-MCGRAW-HILL:adr = "New York, NY, USA"} @String{pub-MIT = "MIT Press"} @String{pub-MIT:adr = "Cambridge, MA, USA"} @String{pub-MORGAN-KAUFMANN = "Morgan Kaufmann Publishers"} @String{pub-MORGAN-KAUFMANN:adr = "Los Altos, CA 94022, USA"} @String{pub-MT = "M\&T Books"} @String{pub-MT:adr = "M\&T Publishing, Inc., 501 Galveston Drive, Redwood City, CA 94063, USA"} @String{pub-NASA = "National Aeronautics and Space Administration"} @String{pub-NASA:adr = "Washington, DC, USA"} @String{pub-NEW-RIDERS = "New Riders Publishing"} @String{pub-NEW-RIDERS:adr = "Carmel, IN, USA"} @String{pub-NIST = "National Institute for Standards and Technology"} @String{pub-NIST:adr = "Gaithersburg, MD, USA"} @String{pub-NO-STARCH = "No Starch Press"} @String{pub-NO-STARCH:adr = "San Francisco, CA, USA"} @String{pub-NORTON = "W. W. Norton \& Co."} @String{pub-NORTON:adr = "New York, NY, USA"} @String{pub-ORA = "O'Reilly \& {Associates, Inc.}"} @String{pub-ORA:adr = "981 Chestnut Street, Newton, MA 02164, USA"} @String{pub-ORA-MEDIA = "O'Reilly Media, Inc."} @String{pub-ORA-MEDIA:adr = "1005 Gravenstein Highway North, Sebastopol, CA 95472, USA"} @String{pub-OSBORNE = "Osborne/McGraw-Hill"} @String{pub-OSBORNE:adr = "Berkeley, CA, USA"} @String{pub-PEACHPIT = "Peachpit Press, Inc."} @String{pub-PEACHPIT:adr = "1085 Keith Avenue, Berkeley, CA 94708, USA"} @String{pub-PH = "Pren{\-}tice-Hall"} @String{pub-PH:adr = "Englewood Cliffs, NJ 07632, USA"} @String{pub-PHPTR = "P T R Pren{\-}tice-Hall"} @String{pub-PHPTR:adr = "Englewood Cliffs, NJ 07632, USA"} @String{pub-POGUE-PRESS-OREILLY = "Pogue Press/O'Reilly"} @String{pub-POGUE-PRESS-OREILLY:adr = "Sebastopol, CA, USA; Beijing, China"} @String{pub-PRAGMATIC-BOOKSHELF = "Pragmatic Bookshelf"} @String{pub-PRAGMATIC-BOOKSHELF:adr = "Raleigh, NC, USA"} @String{pub-PRINCETON = "Princeton University Press"} @String{pub-PRINCETON:adr = "Princeton, NJ, USA"} @String{pub-QUE = "Que Corporation"} @String{pub-QUE:adr = "Indianapolis, IN, USA"} @String{pub-R-D-BOOKS = "R\&D Books"} @String{pub-R-D-BOOKS:adr = "Lawrence, KS, USA; Berkeley, CA, USA"} @String{pub-SAE = "Society of Automotive Engineers"} @String{pub-SAE:adr = "Warrendale, PA, USA"} @String{pub-SAMS = "Howard W. Sams"} @String{pub-SAMS:adr = "Indianapolis, IN 46268, USA"} @String{pub-SAS = "SAS Institute"} @String{pub-SAS:adr = "SAS Circle, Box 8000, Cary, NC 27512-8000, USA"} @String{pub-SCOTT-JONES = "Scott\slash Jones"} @String{pub-SCOTT-JONES:adr = "El Granada, CA, USA"} @String{pub-SITEPOINT = "SitePoint Pty. Ltd."} @String{pub-SITEPOINT:adr = "Collingwood, VIC, Australia"} @String{pub-SPIE = "SPIE Optical Engineering Press"} @String{pub-SPIE:adr = "Bellingham, WA, USA"} @String{pub-SUN-MICROSYSTEMS-PRESS = "Sun Microsystems Press"} @String{pub-SUN-MICROSYSTEMS-PRESS:adr = "Palo Alto, CA, USA"} @String{pub-SUNSOFT = "SunSoft Press"} @String{pub-SUNSOFT:adr = "2550 Garcia Avenue, Mountain View, CA 94043-1100, USA"} @String{pub-SV = "Spring{\-}er-Ver{\-}lag"} @String{pub-SV:adr = "Berlin, Germany~/ Heidelberg, Germany~/ London, UK~/ etc."} @String{pub-SYBEX = "Sybex, Inc."} @String{pub-SYBEX:adr = "2021 Challenger Driver, Suite 100, Alameda, CA 94501, USA"} @String{pub-UNICODE = "The Unicode Consortium"} @String{pub-UNICODE-CAMBRIDGE:adr = "Cambridge, MA, USA"} @String{pub-UNICODE-SAN-JOSE:adr = "P.O. Box 700519, San Jose, CA 95170-0519, USA, Phone: +1-408-777-5870, Fax: +1-408-777-5082, E-mail: \path=unicode-inc@unicode.org="} @String{pub-UNICODE:adr = "Mountain View, CA, USA"} @String{pub-USENIX = "USENIX Association"} @String{pub-USENIX:adr = "Berkeley, CA, USA"} @String{pub-WILEY = "John Wiley and Sons"} @String{pub-WILEY:adr = "New York, NY, USA; London, UK; Sydney, Australia"} @String{pub-WILEY-COMPUTER = "Wiley Computer Publishers"} @String{pub-WILEY-COMPUTER:adr = "New York, NY, USA"} @String{pub-WORLD-SCI = "World Scientific Publishing Co. Pte. Ltd."} @String{pub-WORLD-SCI:adr = "P. O. Box 128, Farrer Road, Singapore 9128"} @String{pub-WROX = "Wrox Press"} @String{pub-WROX:adr = "Chicago, IL, USA"} %%% ==================================================================== %%% Series abbreviations: @String{ser-LNCS = "Lecture Notes in Computer Science"} @String{ser-LNCSE = "Lecture Notes in Computational Science and Engineering"} %%% ==================================================================== %%% Bibliography entries, sorted by year, and then by citation key. @Book{Goodrich:1997:DSA, author = "Michael T. Goodrich and Roberto Tamassia", title = "Data Structures and Algorithms in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xviii + 738", year = "1997", ISBN = "0-471-19308-9 (paperback)", ISBN-13 = "978-0-471-19308-1 (paperback)", LCCN = "QA76.73.J38 G66 1997", bibdate = "Thu Mar 22 12:04:32 MDT 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0706/97039794-d.html; http://www.loc.gov/catdir/toc/onix01/97039794.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Data structures (Computer science); Computer algorithms", } @Book{Pedrick:1998:PVC, author = "Doug Pedrick and others", title = "Programming with {VisiBroker} ({CORBA} \& {JDBC})", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xvi + 435", month = feb, year = "1998", ISBN = "0-471-23901-1", ISBN-13 = "978-0-471-23901-7", LCCN = "QA76.73.J38 P79 1998", bibdate = "Wed Jun 17 22:05:06 MDT 1998", bibsource = "http://www.javaworld.com/javaworld/books/jw-books-alphabytitle.html; https://www.math.utah.edu/pub/tex/bib/java.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.wiley.com/", price = "US\$45", URL = "http://www.wiley.com/compbooks/catalog/23901-1.htm", acknowledgement = ack-nhfb, } @Book{Larman:1999:JPI, author = "Craig Larman and Rhett Guthrie", title = "{Java 2} Performance and Idiom Guide", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xvii + 299", year = "1999", ISBN = "0-13-014260-3", ISBN-13 = "978-0-13-014260-3", LCCN = "QA76.73.J38 L359 2000", bibdate = "Wed Feb 21 05:38:39 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.phptr.com/ptrbooks/ptr_0130142603.html", acknowledgement = ack-nhfb, } @Article{Abraham-Mumm:2000:POT, author = "Erika {\'A}brah{\'a}m-Mumm and Frank S. de Boer", title = "Proof-Outlines for Threads in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1877", pages = "229--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:54 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1877.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1877/18770229.htm; http://link.springer-ny.com/link/service/series/0558/papers/1877/18770229.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alexander:2000:CJP, author = "Roger T. Alexander and James M. Bieman and John Viega", title = "Coping with {Java} Programming Stress", journal = j-COMPUTER, volume = "33", number = "4", pages = "30--38", month = apr, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Apr 17 16:15:27 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r4030.pdf; http://www.computer.org/computer/co2000/r4030abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Alexander:2000:UAP, author = "W. P. Alexander and R. F. Berry and F. E. Levine and R. J. Urquhart", title = "A unifying approach to performance analysis in the {Java} environment", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "118--134", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/alexander.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Allison:2000:IJA, author = "Chuck Allison", title = "{\tt import java.*}: Arrays", journal = j-CCCUJ, volume = "18", number = "3", pages = "46--??", month = mar, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:25 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0003/0003toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java arrays are very much like those in C/C++, except where they're not.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Allison:2000:IJB, author = "Chuck Allison", title = "{\tt import java.*}: Basic Stream {I/O}", journal = j-CCCUJ, volume = "18", number = "11", pages = "58--??", month = nov, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:28 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0011/0011toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java supports input/output of streams with a gazillion combinations of options.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Allison:2000:IJC, author = "Chuck Allison", title = "{\tt import java.*}: Collections and Algorithms", journal = j-CCCUJ, volume = "18", number = "9", pages = "76--??", month = sep, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:28 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0009/0009toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java lacks both a standard and templates, but it nevertheless offers something resembling the C++ Standard Template Library.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Allison:2000:IJF, author = "Chuck Allison", title = "{\tt import java.*}: Formatted Text and Locales", journal = j-CCCUJ, volume = "18", number = "7", pages = "60--??", month = jul, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:27 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0007/0007toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java offers more formatting power than C, but not necessarily in a more convenient package.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Allison:2000:IJI, author = "Chuck Allison", title = "{\tt import java.*}: Interfaces and Inner Classes", journal = j-CCCUJ, volume = "18", number = "1", pages = "??--??", month = jan, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:24 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0001/0001toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "A Java interface is a weak substitute for multiple inheritance in C++, but it still manages to do a lot of what needs doing.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Allison:2000:IJS, author = "Chuck Allison", title = "{\tt import java.*}: Strings", journal = j-CCCUJ, volume = "18", number = "6", pages = "??--??", month = jun, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:26 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0006/0006toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Every language lets you manipulate text to some degree. Java is stronger in this regard than most.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Alpern:2000:JAV, author = "B. Alpern and C. R. Attanasio and J. J. Barton and M. G. Burke and P. Cheng and J.-D. Choi and A. Cocchi and S. J. Fink and D. Grove and M. Hind and S. F. Hummel and D. Lieber and V. Litvinov and M. F. Mergen and T. Ngo and J. R. Russell and V. Sarkar and M. J. Serrano and J. C. Shepherd and S. E. Smith and V. C. Sreedhar and H. Srinivasan and J. Whaley", title = "The {Jalape{\~n}o} virtual machine", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "211--238", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/alpern.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", keywords = "Java", } @Article{Amsterdam:2000:JR, author = "Jonathan Amsterdam", title = "{Java} References", journal = j-DDJ, volume = "25", number = "2", pages = "42, 44, 46, 48, 50, 52", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/jrefer.txt", abstract = "Java lets a program refer to objects without preventing those objects from being garbage collected. Jonathan explains how references work and presents useful abstractions that make working with them easier. Additional resources include jrefer.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Ancona:2000:JSE, author = "Davide Ancona and Giovanni Lagorio and Elena Zucca", title = "{Jam} --- {A} Smooth Extension of {Java} with Mixins", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "154--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500154.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500154.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Angell:2000:PSPa, author = "Kirby W. Angell", title = "{Python} Server Pages: Part 1", journal = j-DDJ, volume = "25", number = "1", pages = "44, 46--47, 50", month = jan, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_01/psp1.txt; http://www.ddj.com/ftp/2000/2000_01/psp100.zip", abstract = "Python Server Pages (PSP) is a server-side scripting engine designed along the lines of Microsoft's Active Server Pages (ASP) and Sun's Java Server Pages (JSP). Additional resources include psp1.txt (listings) and psp100.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Angell:2000:PSPb, author = "Kirby W. Angell", title = "{Python} Server Pages: {Part II}", journal = j-DDJ, volume = "25", number = "2", pages = "54, 57--61", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/psp2.txt", abstract = "Last month, Kirby introduced Python Server Pages and looked at how HTML pages with embedded scripts are translated into compilable JPython code. This month, he examines the Java Servlet side of PSP. Additional resources include psp2.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Annunziato:2000:STY, author = "Jose Annunziato and Stephanie Fesler Kaminaris", title = "{Sams} teach yourself {JavaServer Pages} in 24 hours", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xiii + 433", year = "2000", ISBN = "0-672-32023-1", ISBN-13 = "978-0-672-32023-1", LCCN = "TK5105.8885.J38 A56 2001", bibdate = "Sat Jul 17 07:23:57 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Edited by Rosemarie Graham.", acknowledgement = ack-nhfb, xxauthor = "James Goodwill", } @Article{Anonymous:2000:AJV, author = "Anonymous", title = "Announcement: {{\em Java Virtual Machine Research and Technology Symposium (JVM '01)}}", journal = j-LOGIN, volume = "25", number = "3", pages = "??--??", month = jun, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:42:33 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-6/index.html", URL = "http://www.usenix.org/events/jvm01", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Anonymous:2000:BRJa, author = "Anonymous", title = "Book Review: {{\booktitle{Java enterprise in a nutshell: a desktop quick reference}}: By David Flanagan, Jim Farlye, William Crawford and Kris Magnusson. O'Reilly, Sebastopol, CA. (1999). 604 pages. \$29.95}", journal = j-COMPUT-MATH-APPL, volume = "39", number = "3--4", pages = "263--263", month = feb, year = "2000", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Mar 1 21:49:06 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0898122100900373", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/08981221", } @Article{Anonymous:2000:BRJb, author = "Anonymous", title = "Book Review: {{\booktitle{JavaScript application cookbook}}: By Jerry Bradenbaugh. O'Reilly, Sebastopol, CA. (1999). 462 pages. \$34.95}", journal = j-COMPUT-MATH-APPL, volume = "39", number = "3--4", pages = "266--266", month = feb, year = "2000", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Mar 1 21:49:06 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0898122100900798", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/08981221", } @Article{Anonymous:2000:BRL, author = "Anonymous", title = "Book Reviews: {Linux Red Hat Certified Engineer Exam Cram by Andrew G. Feinberg; JavaScript Application Cookbook by Ralph Krause; Programming Pearls, Second Edition by Harvey Friedman}", journal = j-LINUX-J, volume = "73", pages = "??--??", month = may, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:12 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue73/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://noframes.linuxjournal.com/lj-issues/issue73/3831.html; http://noframes.linuxjournal.com/lj-issues/issue73/3833.html; http://noframes.linuxjournal.com/lj-issues/issue73/3846.html", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Book{Anonymous:2000:J, author = "Anonymous", title = "{Java 2}", publisher = "ENI Publishing", address = "????", pages = "????", year = "2000", ISBN = "2-7460-0559-X", ISBN-13 = "978-2-7460-0559-4", LCCN = "????", bibdate = "Tue Feb 20 18:48:50 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$25", acknowledgement = ack-nhfb, } @Article{Anonymous:2000:JAR, author = "Anonymous", title = "{Java} applets read protected resources", journal = j-NETWORK-SECURITY, volume = "2000", number = "9", pages = "3--3", day = "1", month = sep, year = "2000", CODEN = "NTSCF5", DOI = "https://doi.org/10.1016/S1353-4858(00)09005-X", ISSN = "1353-4858 (print), 1872-9371 (electronic)", ISSN-L = "1353-4858", bibdate = "Mon Dec 4 16:58:01 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/network-security.bib", URL = "http://www.sciencedirect.com/science/article/pii/S135348580009005X", acknowledgement = ack-nhfb, fjournal = "Network Security", journal-URL = "https://www.sciencedirect.com/journal/network-security", } @Article{Anonymous:2000:JBS, author = "Anonymous", title = "{Java}-based secure application environment created", journal = j-NETWORK-SECURITY, volume = "2000", number = "4", pages = "6--6", day = "1", month = apr, year = "2000", CODEN = "NTSCF5", DOI = "https://doi.org/10.1016/S1353-4858(00)88620-1", ISSN = "1353-4858 (print), 1872-9371 (electronic)", ISSN-L = "1353-4858", bibdate = "Mon Dec 4 16:57:53 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/network-security.bib", URL = "http://www.sciencedirect.com/science/article/pii/S1353485800886201", acknowledgement = ack-nhfb, fjournal = "Network Security", journal-URL = "https://www.sciencedirect.com/journal/network-security", } @Article{Anonymous:2000:NAS, author = "Anonymous", title = "News: Supercomputing, Teraflop performance, Embedded {Java}, Middleware", journal = j-IEEE-CONCURR, volume = "8", number = "1", pages = "5--??", month = jan # "\slash " # mar, year = "2000", CODEN = "IECMFX", ISSN = "1092-3063 (print), 1558-0849 (electronic)", ISSN-L = "1092-3063", bibdate = "Tue Apr 25 10:24:24 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/pd/books/pd2000/pdf/p1005.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Concurrency", } @Article{Anonymous:2000:NPH, author = "Anonymous", title = "New Products: {Heavy Gear II, Loki Entertainment Software; Compaq Power Management Software, Compaq Computer Corporation; Open Motif Everywhere, Integrated Computer Solutions; VXA RakPak, Ecrix Corporation; Embedix SDK, Lineo, Inc.; Gaussian on Linux NetworX, Linux NetworX, Inc.; HELIOS EtherShare 2.6, HELIOS Software GmbH; NUMA-Q E410 and Netfinity 3500 M20, Shop IBM; InstallShield Java Edition 3.5, InstallShield Software Corporation; NetMAX IA Software, Cybernet Systems Corporation; Teamware Office 5.3 for Linux, Teamware Group Oy; TimeSys Linux/RT 1.0, TimeSys Corporation; Linux 1-2-3 Fundamentals CD, OmniLinux}", journal = j-LINUX-J, volume = "77", pages = "??--??", month = sep, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:13 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue77/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Anonymous:2000:NPI, author = "Anonymous", title = "New Products: {IQ2 NetCONNECT, BASCOM Global Internet Services, Inc.; OpenLinux eServer 2.3, Caldera Systems, Inc.; CommuniGate Pro, Super-Symmetric Dynamic Cluster Version, Stalker Software, Inc.; Embedix Linux 1.0, Lineo, Inc.; white dwarf linux 1.0, EMJ Embedded Systems; Linux-based Internal G.lite Modem, SAS; IntraLinux, STS International, Inc.; Linux End-to-End Security Solution, JAWS Technologies; JetForm Central for Linux, JetForm Corporation; JWAVE version 3.0, Visual Numerics, Inc.; RTEL, Lantronix; Japanese WordMage v.5.7, Lava Software Pty. Ltd.; TotalView 4.0 Parallel Debugger, Etnus; iNUX Consumer Linux Personal Computer systems, iNUX Inc.}", journal = j-LINUX-J, volume = "73", pages = "??--??", month = may, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:12 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue73/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Anonymous:2000:NPL, author = "Anonymous", title = "New Products: {Linux Office Solutions, VistaSource Inc.; CodeWizard 3.1, ParaSoft; eEMU, Jarrix Systems Pty Ltd; RIA Server, Crystal Group Inc.; Exile III: Ruined World, Spiderweb Software; User Management in MandrakeSoft 7.1, MandrakeSoft, Inc.; HostML and ViewML, Century Software; Flipper Graph Control 2.0, ProWorks LLC; RTAI v1.3, RTAI; eServer.group, Technauts Inc.; VCOM on Linux, NetSys Software Group; RM1U-AXe and RM2U-AXi-C, Rave Computer Association, Inc.; TowerJ 3.5, Tower Technology Corporation; X-Win32 v5.0, StarNet Communications Corporation}", journal = j-LINUX-J, volume = "76", pages = "??--??", month = aug, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:13 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue76/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Anonymous:2000:NPP, author = "Anonymous", title = "New Products: {PerfectBACKUP+ 6.1, Merlin Software Technologies; Linux Driver for HIPPI 800, Essential Communication Corporation; Linux by Libranet, Libra Computer Systems Ltd.; Programming Development Kit, Macmillan Computer Publishing; Linux Anti-Virus Solution, DOLFIN.COM Inc.; OpenDesk.com version 1.0, HBE Software; UnForm v4.0, Synergetic Data Systems; Max for Linux, PlugSys International LLC; PizzaBox Linux Distribution, KYZO Ltd, Little Streams, The Abbotsbrook, Bourne End, Bucks; Appgen Linux Java Client and PowerWindows Applications, Appgen Business Software, Inc.; IVR Server, Open Source Telecom; Photogenics, Paul Nolan Ltd.}", journal = j-LINUX-J, volume = "70", pages = "??--??", month = feb, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 16:40:51 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue70/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Anonymous:2000:PBA, author = "Anonymous", title = "Products: {Broadcom} Adds {VoIP} and Home Networking to Cable Modem Chip; {CodeWarrior 6.0} for the {Mac}; {Inprise\slash Borland JBuilder 4}; {WinDK} Extension for {Bluetooth}; {System Mechanic Mobile Toolkit}; {ActiveState Perl Dev Kit 2.0} for {Perl 5.6}; {Pentium III} with {SpeedStep}; {Progress Software Apptivity} Version 3", journal = j-COMPUTER, volume = "33", number = "11", pages = "116--117", month = nov, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Tue Nov 7 15:11:30 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/ry116.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2000:POR, author = "Anonymous", title = "Products: {Oracle} Releases {XDK} Update; {Starbase}'s Code Editing System; {Arc Second}'s Palm {PC CAD} Viewer; {Minolta}'s Network Document Server for {Windows 2000}; {Borland}'s {Java} Development Tools for {Palm OS}; {Rational}'s Code Management Tools; {Blaxxun Interactive}'s {Web} Communications Platform Tools; {Informix Software}'s {Linux} Database Engine; {ActiveState} Updates Free {Python} Distribution; {KDE 2.0} Released", journal = j-COMPUTER, volume = "33", number = "12", pages = "144--146", month = dec, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Dec 6 18:12:09 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/rz144.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2000:TSJ, author = "Anonymous", title = "Tool Set for the {Java Card} Platform", journal = j-IEEE-MICRO, volume = "20", number = "3", pages = "87--87", month = may # "\slash " # jun, year = "2000", CODEN = "IEMIDZ", ISSN = "0272-1732 (print), 1937-4143 (electronic)", ISSN-L = "0272-1732", bibdate = "Thu Dec 14 06:08:58 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Science Citation Index database (1980--2000)", acknowledgement = ack-nhfb, fjournal = "IEEE Micro", journal-URL = "http://www.computer.org/csdl/mags/mi/index.html", } @Article{Antoniu:2000:IJC, author = "Gabriel Antoniu and Luc Boug{\'e} and Philip Hatcher and Mark MacBeth and Keith McGuigan and Raymond Namyst", title = "Implementing {Java} Consistency Using a Generic, Multithreaded {DSM} Runtime System", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "560--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000560.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000560.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Aridor:2000:TOS, author = "Yariv Aridor and Michael Factor and Avi Teperman and Tamar Eilam and Assaf Schuster", title = "Transparently Obtaining Scalability for {Java} Applications on a Cluster", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1159--1193", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1649", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1649; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1649/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1649/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Arnold:2000:AOJ, author = "Matthew Arnold and Stephen Fink and David Grove and Michael Hind and Peter F. Sweeney", title = "Adaptive optimization in the {Jalape{\~n}o} {JVM}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "47--65", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p47-arnold/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Arnold:2000:JPL, author = "Ken Arnold and James Gosling and David Holmes", title = "The {Java} Programming Language", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xxiv + 595", year = "2000", ISBN = "0-201-70433-1 (paperback)", ISBN-13 = "978-0-201-70433-4 (paperback)", LCCN = "QA76.73.J38 A76 2000", bibdate = "Sat Nov 24 17:48:00 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/master.bib", price = "US\$37.95", abstract = "This Third Edition of \booktitle{The Java Programming Language} is a valuable resource for both novice and advanced programmers. More than 100,000 developers who programmed with C, C++, Smalltalk, or other high-level languages have used this book to get a concise, intelligent, and deep understanding of the Java programming language. This book is what you need to understand the basic design goals of the language and the application of the language in real-world development. It provides unique insights into why and how the language was designed and intended to be used. The authors describe the latest version of the language, as defined in the Java Language Specification, Second Edition and implemented in version 1.3 of the Java 2 SDK, Standard Edition. This third edition has been structured to give more in-depth treatment of the newer language features, as well as informative examples on using some of the new APIs. New and/or revised in this edition: more details on language features, including an expanded section on nested classes; more comprehensive treatment of garbage collection and related programming issues; and coverage of new APIs, such as collections and internationalization. Thoroughly revised from start to finish, this edition fully covers the features of the current release of the Java programming language and class libraries. The book serves as a tutorial introduction to the language and essential libraries as well as a reference. Experienced programmers will find this new edition to be a valuable reference, and will gain new insights into the subtleties of the language. Novice and intermediate programmers will benefit from the valuable examples and clear explanations of language and library features. Make sure you understand the contents of this book before you begin any serious development for the Java platform.", acknowledgement = ack-nhfb, tableofcontents = "A Quick Tour / 1 \\ Getting Started / 1 \\ Variables / 3 \\ 1.2: Variables / 3 \\ 1.3: Comments in Code / 6 \\ 1.4: Named Constants / 6 \\ 1.5: Unicode Characters / 8 \\ 1.6: Flow of Control / 9 \\ 1.7: Classes and Objects / 11 \\ 1.7.1: Creating Objects / 12 \\ 1.7.2: Static or Class Fields / 13 \\ 1.7.3: Garbage Collector / 14 \\ 1.8: Methods and Parameters / 14 \\ 1.8.1: Invoking a Method / 15 \\ 1.8.2: This Reference / 16 \\ 1.8.3: Static or Class Methods / 17 \\ 1.9: Arrays / 17 \\ 1.10: String Objects / 20 \\ 1.11: Extending a Class / 22 \\ 1.11.1: Invoking Methods from the Superclass / 23 \\ 1.11.2: Object Class / 24 \\ 1.11.3: Type Casting / 25 \\ 1.12: Interfaces / 25 \\ 1.13: Exceptions / 27 \\ 1.14: Packages / 30 \\ 1.15: Java Platform / 32 \\ 1.16: Other Topics Briefly Noted / 33 \\ 2: Classes and Objects / 35 \\ 2.1: A Simple Class / 36 \\ 2.1.1: Class Members / 36 \\ 2.1.2: Class Modifiers / 37 \\ 2.2: Fields / 38 \\ 2.2.1: Field Initialization / 38 \\ 2.2.2: Static Fields / 39 \\ 2.2.3: final Fields / 40 \\ 2.3: Access Control / 41 \\ 2.4: Creating Objects / 42 \\ 2.5: Construction and Initialization / 43 \\ 2.5.1: Constructors / 44 \\ 2.5.2: Initialization Blocks / 48 \\ 2.5.3: Static Initialization / 49 \\ 2.6: Methods / 50 \\ 2.6.1: Static Methods / 51 \\ 2.6.2: Method Invocations / 51 \\ 2.6.3: Method Execution and Return / 53 \\ 2.6.4: Parameter Values / 54 \\ 2.6.5: Using Methods to Control Access / 57 \\ 2.7: this / 59 \\ 2.8: Overloading Methods / 61 \\ 2.9: Main Method / 62 \\ 2.10: Native Methods / 63 \\ 3: Extending Classes / 65 \\ 3.1: An Extended Class / 66 \\ 3.2: Constructors in Extended Classes / 69 \\ 3.2.1: Constructor Order Dependencies / 71 \\ 3.3: Inheriting and Redefining Members / 73 \\ 3.3.1: Overriding / 73 \\ 3.3.2: Hiding Fields / 74 \\ 3.3.3: Accessing Inherited Members / 75 \\ 3.3.4: Accessibility and Overriding / 77 \\ 3.3.5: Hiding Static Members / 77 \\ 3.3.6: Super Keyword / 78 \\ 3.4: Type Compatibility and Conversion / 79 \\ 3.4.1: Compatibility / 79 \\ 3.4.2: Explicit Type Casting / 80 \\ 3.4.3: Testing for Type / 80 \\ 3.5: What protected Really Means / 81 \\ 3.6: Marking Methods and Classes final / 84 \\ 3.7: Abstract Classes and Methods / 85 \\ 3.8: Object Class / 87 \\ 3.9: Cloning Objects / 89 \\ 3.9.1: Strategies for Cloning / 89 \\ 3.9.2: Correct Cloning / 91 \\ 3.9.3: Shallow versus Deep Cloning / 94 \\ 3.10: Extending Classes: How and When / 95 \\ 3.11: Designing a Class to Be Extended / 96 \\ 3.11.1: Designing an Extensible Framework / 97 \\ 3.12: Single Inheritance versus Multiple Inheritance / 102 \\ 4: Interfaces / 105 \\ 4.1: A Simple Interface Example / 106 \\ 4.2: Interface Declarations / 108 \\ 4.2.1: Interface Constants / 109 \\ 4.2.2: Interface Methods / 109 \\ 4.2.3: Interface Modifiers / 110 \\ 4.3: Extending Interfaces / 110 \\ 4.3.1: Inheriting and Hiding Constants / 111 \\ 4.3.2: Inheriting, Overriding, and Overloading Methods / 112 \\ 4.4: Working with Interfaces / 113 \\ 4.4.1: Implementing Interfaces / 114 \\ 4.4.2: Using an Implementation / 116 \\ 4.5: Marker Interfaces / 117 \\ 4.6: When to Use Interfaces / 118 \\ 5: Nested Classes and Interfaces / 121 \\ 5.1: Static Nested Types / 121 \\ 5.1.1: Static Nested Classes / 122 \\ 5.1.2: Nested Interfaces / 123 \\ 5.2: Inner Classes / 123 \\ 5.2.1: Accessing Enclosing Objects / 125 \\ 5.2.2: Extending Inner Classes / 126 \\ 5.2.3: Inheritance, Scoping, and Hiding / 127 \\ 5.3: Local Inner Classes / 129 \\ 5.4: Anonymous Inner Classes / 131 \\ 5.5: Inheriting Nested Types / 132 \\ 5.6: Nesting in Interfaces / 134 \\ 5.6.1: Modifiable Variables in Interfaces / 135 \\ 5.7: Implementation of Nested Types / 136 \\ 6: Tokens, Operators, and Expressions / 137 \\ 6.1: Lexical Elements / 137 \\ 6.1.1: Character Set / 138 \\ 6.1.3: Tokens / 139 \\ 6.1.4: Identifiers / 140 \\ 6.1.5: Keywords / 141 \\ 6.2: Types and Literals / 141 \\ 6.2.1: Reference Literals / 142 \\ 6.2.2: Boolean Literals / 142 \\ 6.2.3: Character Literals / 142 \\ 6.2.4: Integer Literals 143 \\ 6.2.5: Floating-Point Literals / 143 \\ 6.2.6: String Literals / 144 \\ 6.2.7: Class Literals / 144 \\ 6.3: Variables / 144 \\ 6.3.1: Field and Local Variable Declarations / 145 \\ 6.3.2: Parameter Variables / 146 \\ 6.3.3: final Variables / 146 \\ 6.4: Array Variables / 148 \\ 6.4.1: Array Modifiers / 149 \\ 6.4.2: Arrays of Arrays / 149 \\ 6.4.3: Array Initialization / 150 \\ 6.4.4: Arrays and Types / 151 \\ 6.5: Meanings of Names / 152 \\ 6.6: Arithmetic Operations / 156 \\ 6.6.1: Integer Arithmetic / 156 \\ 6.6.2: Floating-Point Arithmetic / 156 \\ 6.6.3: Strict and non-Strict Floating-Point Arithmetic / 158 \\ 6.7: General Operators / 159 \\ 6.7.1: Increment and Decrement Operators / 159 \\ 6.7.2: Relational and Equality Operators / 160 \\ 6.7.3: Logical Operators / 161 \\ 6.7.4: instanceof / 162 \\ 6.7.5: Bit Manipulation Operators / 163 \\ 6.7.6: Conditional Operator?: / 164 \\ 6.7.7: Assignment Operators / 165 \\ 6.7.8: String Concatenation Operator / 167 \\ 6.7.9: new / 167 \\ 6.8: Expressions / 168 \\ 6.8.1: Order of Evaluation / 168 \\ 6.8.2: Expression Type / 169 \\ 6.8.3: Implicit Type Conversions / 169 \\ 6.8.4: Explicit Type Casts / 171 \\ 6.8.5: String Conversions / 172 \\ 6.9: Member Access / 173 \\ 6.9.1: Finding the Right Method / 173 \\ 6.10: Operator Precedence and Associativity / 176 \\ 7: Control Flow / 179 \\ 7.1: Statements and Blocks / 179 \\ 7.2: if-else / 180 \\ 7.3: switch / 182 \\ 7.4: while and do-while / 185 \\ 7.5: for / 186 \\ 7.6: Labels / 189 \\ 7.7: break / 189 \\ 7.8: continue / 192 \\ 7.9: return / 193 \\ 7.10: What, No goto? / 193 \\ 8: Exceptions / 195 \\ 8.1: Creating Exception Types / 196 \\ 8.2: throw / 197 \\ 8.2.1: Transfer of Control / 198 \\ 8.2.2: Asynchronous Exceptions / 198 \\ 8.3: Throws Clause / 199 \\ 8.3.1: throws Clauses and Method Overriding / 200 \\ 8.3.2: throws Clauses and Native Methods / 201 \\ 8.4: try, catch, and finally / 202 \\ 8.4.1: finally / 204 \\ 8.5: When to Use Exceptions / 206 \\ 9: Strings / 209 \\ 9.1: Basic String Operations / 209 \\ 9.2: String Comparisons / 211 \\ 9.2.1: String Literal Equivalence / 214 \\ 9.3: Utility Methods / 215 \\ 9.4: Making Related Strings / 215 \\ 9.5: String Conversions / 217 \\ 9.6: Strings and char Arrays / 218 \\ 9.7: Strings and byte Arrays / 220 \\ 9.7.1: Character Encodings / 221 \\ 9.8: StringBuffer Class / 222 \\ 9.8.1: Modifying the Buffer / 223 \\ 9.8.2: Getting Data Out / 225 \\ 9.8.3: Capacity Management / 226 \\ 10: Threads / 227 \\ 10.1: Creating Threads / 229 \\ 10.2: Using Runnable / 231 \\ 10.3: Synchronization / 235 \\ 10.3.1: synchronized Methods / 235 \\ 10.3.2: Static Synchronized Methods / 238 \\ 10.3.3: synchronized Statements / 238 \\ 10.3.4: Synchronization Designs / 242 \\ 10.4: wait, notifyAll, and notify / 244 \\ 10.5: Details of Waiting and Notification / 246 \\ 10.6: Thread Scheduling / 248 \\ 10.6.1: Voluntary Rescheduling / 249 \\ 10.7: Deadlocks / 252 \\ 10.8: Ending Thread Execution / 254 \\ 10.8.1: Cancelling a Thread / 255 \\ 10.8.2: Waiting for a Thread to Complete / 257 \\ 10.9: Ending Application Execution / 259 \\ 10.10: volatile / 260 \\ 10.11: Thread Management, Security and ThreadGroup / 261 \\ 10.12: Threads and Exceptions / 266 \\ 10.12.1: Don't stop / 266 \\ 10.13: ThreadLocal Variables / 267 \\ 10.14: Debugging Threads / 269 \\ 11: Programming with Types / 271 \\ 11.1: Wrapper Classes / 272 \\ 11.1.1: Void / 274 \\ 11.1.2: Boolean / 274 \\ 11.1.3: Character / 275 \\ 11.1.4: Number / 279 \\ 11.1.5: Integer Wrappers / 279 \\ 11.1.6: Floating-Point Wrapper Classes / 281 \\ 11.2: Reflection / 282 \\ 11.2.1: Class class / 283 \\ 11.2.2: Naming Classes / 287 \\ 11.2.3: Examining Class Members / 288 \\ 11.2.4: Modifier Class / 292 \\ 11.2.5: Field Class / 292 \\ 11.2.6: Method Class / 294 \\ 11.2.7: Creating New Objects and the Constructor Class / 296 \\ 11.2.8: Access Checking and AccessibleObject / 299 \\ 11.2.9: Arrays / 299 \\ 11.2.10: Packages / 301 \\ 11.2.11: Proxy Classl / 301 \\ 11.3: Loading Classes / 304 \\ 11.3.1: ClassLoader Class / 307 \\ 11.3.2: Preparing a Class for use / 309 \\ 11.3.3: Loading Related Resources / 310 \\ 12: Garbage Collection and Memory / 313 \\ 12.1: Garbage Collection / 313 \\ 12.2: A Simple Model / 314 \\ 12.3: Finalization / 316 \\ 12.3.1: Resurrecting Objects during finalize / 318 \\ 12.4: Interacting with the Garbage Collector / 318 \\ 12.5: Reachability States and Reference Objects / 320 \\ 12.5.1: Reference Class / 321 \\ 12.5.2: Strengths of Reference and Reachability / 321 \\ 12.5.3: Reference Queues / 325 \\ 13: Packages / 329 \\ 13.1: Package Naming / 330 \\ 13.2: Type Imports / 331 \\ 13.3: Package Access / 332 \\ 13.3.1: Accessibility and Overriding Methods / 333 \\ 13.4: Package Contents / 336 \\ 13.5: Package Objects and Specifications / 337 \\ 14: Documentation Comments / 341 \\ 14.1: Anatomy of a Doc Comment / 342 \\ 14.2: Tags / 343 \\ 14.2.1: see / 343 \\ 14.2.2: link / 344 \\ 14.2.3: param / 345 \\ 14.2.4: return / 345 \\ 14.2.5: throws and exception / 345 \\ 14.2.6: deprecated / 345 \\ 14.2.7: author / 346 \\ 14.2.8: version / 346 \\ 14.2.9: since / 346 \\ 14.2.10: docRoot / 347 \\ 14.3: An Example / 347 \\ 14.4: External Conventions / 352 \\ 14.4.1: Overview and Package Documentation / 352 \\ 14.4.2: Doc-files Directory / 353 \\ 14.5: Notes on Usage / 353 \\ 15: I/O Package / 355 \\ 15.1: Byte Streams / 357 \\ 15.1.1: InputStream / 357 \\ 15.1.2: OutputStream / 360 \\ 15.2: Character Streams / 362 \\ 15.2.1: Reader / 363 \\ 15.2.2: Writer / 366 \\ 15.2.3: Character Streams and the Standard Streams / 367 \\ 15.3: InputStreamReader and OutputStreamWriter / 367 \\ 15.4: A Quick Tour of The Stream Classes / 369 \\ 15.4.1: Synchronization and Concurrency / 370 \\ 15.4.2: Filter Streams / 371 \\ 15.4.3: Buffered Streams / 374 \\ 15.4.4: Piped Streams / 375 \\ \ldots{} [section numbers unavailable] \\ Piped Streams / 375 \\ ByteArray Byte Streams / 377 \\ CharArray Character Streams / 378 \\ String Character Streams / 379 \\ Print Streams / 380 \\ LineNumberReader / 381 \\ SequenceInputStream / 383 \\ Pushback Streams / 384 \\ StreamTokenizer / 386 \\ The Data Byte Streams / 391 \\ DataInput and DataOutput / 392 \\ The Data Stream Classes / 393 \\ Working with Files / 395 \\ File Streams and FileDescriptor / 395 \\ RandomAccessFile / 396 \\ The File Class / 398 \\ FilenameFilter and FileFilter / 404 \\ Object Serialization / 405 \\ The Object Byte Streams / 405 \\ Making Your Classes Serializable / 406 \\ Serialization and Deserialization Order / 408 \\ Customized Serialization / 409 \\ Object Versioning / 413 \\ Serialized Fields / 414 \\ The Externalizable Interface / 416 \\ Documentation Comment Tags / 417 \\ The IOException Classes / 418 \\ Collections / 421 \\ Collections / 421 \\ Exception Conventions / 424 \\ Iteration / 425 \\ Ordering using Comparable and Comparator / 427 \\ The Collection Interface / 428 \\ Set and SortedSet / 430 \\ HashSet / 432 \\ TreeSet / 432 \\ List / 433 \\ ArrayList / 435 \\ LinkedList / 436 \\ Map and SortedMap / 437 \\ HashMap / 440 \\ TreeMap / 441 \\ WeakHashMap / 442 \\ Wrapped Collections and the Collections Class / 442 \\ The Synchronization Wrappers / 443 \\ The Unmodifiable Wrappers / 444 \\ The Collections Utilities / 445 \\ The Arrays Utility Class / 448 \\ Writing Iterator Implementations / 448 \\ Writing Collection Implementations / 451 \\ The Legacy Collection Types / 456 \\ Enumeration / 457 \\ Vector / 457 \\ Stack / 459 \\ Dictionary / 459 \\ Hashtable / 460 \\ Properties / 460 \\ Miscellaneous Utilities / 463 \\ BitSet / 464 \\ Observer/Observable / 466 \\ Random / 470 \\ StringTokenizer / 472 \\ Timer and TimerTask / 473 \\ Math and StrictMath / 477 \\ System Programming / 479 \\ The System Class / 480 \\ Standard I/O Streams / 480 \\ System Properties / 481 \\ Utility Methods / 483 \\ Creating Processes / 484 \\ The Process Class / 485 \\ Process Environments / 487 \\ Portability / 488 \\ Shutdown / 488 \\ Shutdown Hooks / 489 \\ The Shutdown Sequence / 490 \\ Shutdown Strategies / 491 \\ The Rest of the Runtime / 492 \\ Loading Native Code / 492 \\ Debugging / 493 \\ Security / 493 \\ The SecurityManager Class / 494 \\ Permissions / 496 \\ Security Policies / 497 \\ Access Controllers and Privileged Execution / 497 \\ Internationalization and Localization / 501 \\ Locale / 502 \\ Resource Bundles / 504 \\ ListResourceBundle / 507 \\ PropertyResourceBundle / 508 \\ Subclassing ResourceBundle / 509 \\ Time, Dates, and Calendars / 509 \\ Calendars / 510 \\ Time Zones / 514 \\ GregorianCalendar and SimpleTimeZone / 515 \\ Formatting and Parsing Dates and Times / 517 \\ Internationalization and Localization for Text / 520 \\ Collation / 520 \\ Formatting and Parsing / 522 \\ Text Boundaries / 524 \\ Standard Packages / 527 \\ java.awt --- The Abstract Window Toolkit / 529 \\ java.applet --- Applets / 532 \\ java.beans --- Components / 533 \\ java.math --- Mathematics / 534 \\ java.net --- The Network / 535 \\ java.rmi --- Remote Method Invocation / 538 \\ java.security --- Security Tools / 543 \\ java.sql --- Relational Database Access / 544 \\ Utility Subpackages / 544 \\ Archive Files --- java.util.jar / 544 \\ ZIP Files --- java.util.zip / 545 \\ javax.* --- Standard Extensions / 546 \\ javax.accessibility --- Accessibility for GUIs / 546 \\ javax.naming --- Directory and Naming Services / 547 \\ javax.sound --- Sound Manipulation / 548 \\ javax.swing --- Swing GUI Components / 549 \\ org.omg.CORBA --- CORBA APIs / 549 \\ Runtime Exceptions / 551 \\ RuntimeException Classes / 552 \\ Error Classes / 554 \\ Useful Tables / 557 \\ Keywords / 557 \\ Operator Precedence / 558 \\ Unicode Digits / 558 \\ Unicode Letters and Digits / 559 \\ Special Characters Using / 560 \\ Documentation Comment Tags / 560 \\ Unicode Character Blocks / 561 \\ Further Reading / 563 \\ Index / 569", } @Book{Arnow:2000:IPU, author = "David M. Arnow and Gerald Weiss", title = "Introduction to programming using {Java}: an object-oriented approach", publisher = pub-AW, address = pub-AW:adr, pages = "xxxv + 805", year = "2000", ISBN = "0-201-61272-0", ISBN-13 = "978-0-201-61272-1", LCCN = "QA76.73.J38 A77 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Java 2 update", acknowledgement = ack-nhfb, keywords = "Java (computer programming language); object-oriented program (computer science)", } @InProceedings{Arthur:2000:JES, author = "John K. Arthur", title = "{Java} as an Environment for Scientific Computing", crossref = "Langtangen:2000:AST", volume = "10", pages = "179--196", year = "2000", DOI = "https://doi.org/10.1007/978-3-642-57172-5_5", bibdate = "Sat Dec 22 08:36:29 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/lncse.bib", URL = "http://link.springer.com/chapter/10.1007/978-3-642-57172-5_5/", acknowledgement = ack-nhfb, book-DOI = "https://doi.org/10.1007/978-3-642-57172-5", book-URL = "http://www.springerlink.com/content/978-3-642-57172-5", } @Article{Artigas:2000:ALT, author = "P. V. Artigas and M. Gupta and S. P. Mikiff and J. E. Moreira", title = "Automatic Loop Transformations and Parallelization for {Java}", journal = j-PARALLEL-PROCESS-LETT, volume = "10", number = "2/3", pages = "153--??", month = sep, year = "2000", CODEN = "PPLTEE", ISSN = "0129-6264 (print), 1793-642X (electronic)", bibdate = "Wed Apr 18 07:29:37 2001", bibsource = "http://ejournals.wspc.com.sg/ppl/10/1002_03/S01296264001002_03.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ejournals.wspc.com.sg/ppl/10/1002_03/S0129626400000160.html", acknowledgement = ack-nhfb, fjournal = "Parallel Processing Letters", journal-URL = "http://www.worldscientific.com/loi/ppl", } @Book{Atkinson:2000:CPP, author = "Leon Atkinson", title = "Core {PHP} Programming: using {PHP} to build dynamic {Web} sites", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Second", pages = "xxv + 769", year = "2000", ISBN = "0-13-089398-6", ISBN-13 = "978-0-13-089398-7", LCCN = "QA76.73.P22 A85 2001", bibdate = "Wed Feb 21 05:41:47 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{Austin:2000:WAA, author = "Calvin Austin", title = "Writing advanced applications for the {Java 2} platform", publisher = pub-AW, address = pub-AW:adr, pages = "xvi + 381", year = "2000", ISBN = "0-201-71501-5", ISBN-13 = "978-0-201-71501-9", LCCN = "A76.76.A65 A95 2000", bibdate = "Thu Jan 18 05:54:47 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", acknowledgement = ack-nhfb, xxtitle = "Advanced Programming for the {Java 2} Platform", } @Article{Azevedo:2000:AAJ, author = "Ana Azevedo and Alex Nicolau and Joe Hummel", title = "An annotation-aware {Java} virtual machine implementation", journal = j-CPE, volume = "12", number = "6", pages = "423--444", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<423::AID-CPE483>3.0.CO;2-L", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515731/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515731&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @InProceedings{Back:2000:PKI, author = "Godmar Back and Wilson H. Hsieh and Jay Lepreau", title = "Processes in {KaffeOS}: Isolation, Resource Management, and Sharing in {Java}", crossref = "USENIX:2000:PFSb", pages = "??--??", year = "2000", bibdate = "Wed Oct 16 05:17:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/osdi2000/back.html", acknowledgement = ack-nhfb, } @InProceedings{Back:2000:TDJ, author = "Godmar Back and Patrick Tullmann and Leigh Stoller and Wilson C. Hsieh and Jay Lepreau", title = "Techniques for the Design of {Java} Operating Systems", crossref = "USENIX:2000:UAT", pages = "197--210", year = "2000", bibdate = "Tue Oct 15 09:53:32 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/events/usenix2000/general/back.html", acknowledgement = ack-nhfb, } @Article{Bacon:2000:GDJ, author = "David F. Bacon and Robert E. Strom and Ashis Tarafdar", title = "{Guava}: a dialect of {Java} without data races", journal = j-SIGPLAN, volume = "35", number = "10", pages = "382--400", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p382-bacon/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Badros:2000:JML, author = "Greg J. Badros", title = "{JavaML}: a markup language for {Java} source code", journal = j-COMP-NET-AMSTERDAM, volume = "33", number = "1--6", pages = "159--177", month = jun, year = "2000", CODEN = "????", ISSN = "1389-1286 (print), 1872-7069 (electronic)", ISSN-L = "1389-1286", bibdate = "Sat Oct 21 17:37:23 MDT 2000", bibsource = "http://www.elsevier.com/locate/issn/13891286; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/15/22/48/25/37/abstract.html; http://www.elsevier.nl/gej-ng/10/15/22/48/25/37/article.pdf; http://www9.org/w9cdrom/342/342.html", acknowledgement = ack-nhfb, fjournal = "Computer Networks (Amsterdam, Netherlands: 1999)", journal-URL = "http://www.sciencedirect.com/science/journal/13891286", } @Book{Bailey:2000:JEP, author = "Duane A. Bailey", title = "{Java} elements: principles of programming in {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xiv + 333", year = "2000", ISBN = "0-07-228357-2", ISBN-13 = "978-0-07-228357-0", LCCN = "QA76.73.J38 B33 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Baker:2000:MPJ, author = "Mark Baker and Bryan Carpenter", title = "{MPJ}: a Proposed {Java} Message Passing {API} and Environment for High Performance Computing", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "552--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000552.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000552.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Baker:2000:SIM, author = "Mark Baker", title = "Special Issue: {Message} passing interface-based parallel programming with {Java}", journal = j-CPE, volume = "12", number = "11", pages = "1017--1018", month = sep, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200009)12:11<1017::AID-CPE537>3.0.CO;2-N", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:10 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76000190/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76000190&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Baran:2000:NVN, author = "Nicholas Baran", title = "News and Views: Neural Net Crowned King; Smart Shirts Monitor Vital Signs; {McMaster} Team Wins College Design Contest; {Java} Applet Tracks Space Station; {Sandia Red Team} Batting 1000; New Digital Geometry Compression Algorithm", journal = j-DDJ, volume = "25", number = "10", pages = "18--18", month = oct, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Barnes:2000:OOP, author = "David Barnes", title = "Object-Oriented Programming with {Java}: an Introduction", publisher = pub-PH, address = pub-PH:adr, pages = "xxvii + 1028", year = "2000", ISBN = "0-13-086900-7", ISBN-13 = "978-0-13-086900-5", LCCN = "QA76.64 .B38 2000", bibdate = "Wed Feb 21 05:44:40 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$56", acknowledgement = ack-nhfb, xxtitle = "Object-Oriented Programming with {Java}: a First Programming Text", } @Book{Barrilleaux:2000:UIJ, author = "Jon Barrilleaux", title = "{$3$D} User Interfaces With {Java $3$D}", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxvi + 499", year = "2000", ISBN = "1-884777-90-2", ISBN-13 = "978-1-884777-90-5", LCCN = "QA76.9.U83 B363 2001", bibdate = "Tue Feb 20 19:05:27 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$45", acknowledgement = ack-nhfb, } @Article{Baylor:2000:JSB, author = "S. J. Baylor and M. Devarakonda and S. Fink and E. Gluzberg and M. Kalantar and P. Muttineni and E. Barsness and R. Arora and R. Dimpsey and S. J. Munroe", title = "{Java} server benchmarks", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "57--81", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/baylor.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Becker:2000:JSCa, author = "Pete Becker", title = "The Journeyman's Shop: Common Design Mistakes, Part 1", journal = j-CCCUJ, volume = "18", number = "1", pages = "??--??", month = jan, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:24 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0001/0001toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Pete provides several cautionary tales from the volatile world of Java libraries. Rapid development is not always compatible with good design.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Becker:2000:JSCb, author = "Pete Becker", title = "The Journeyman's Shop: Common Design Mistakes, Part 2", journal = j-CCCUJ, volume = "18", number = "2", pages = "77--??", month = feb, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:25 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0002/0002toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Pete offers more examples of how not to rush code to market, from the wonderful world of Java Standard Libraries.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @TechReport{Beebe:2000:BPAa, author = "Nelson H. F. Beebe", title = "A Bibliography of Publications about the {{\em Java Programming Language\/}}: 2000--date", institution = inst-CSC, address = inst-CSC:adr, pages = "13", day = "11", month = mar, year = "2000", bibdate = "Tue Nov 14 06:14:41 2000", bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/b/beebe-nelson-h-f.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "This report is updated frequently.", URL = "https://www.math.utah.edu/pub/tex/bib/index-table-j.html#java2000", } @Article{Benson:2000:JR, author = "Brent W. {Benson, Jr.}", title = "{Java} reflections", journal = j-SIGPLAN, volume = "35", number = "12", pages = "14--18", month = dec, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Benson:2000:JRJ, author = "Brent W. {Benson, Jr.}", title = "{Java} Reflections: {Java} Server Pages: Servlets, Inside Out", journal = j-SIGPLAN, volume = "35", number = "12", pages = "14--18", month = dec, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jan 03 19:00:52 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Benson:2000:JRS, author = "Brent W. {Benson, Jr.}", title = "{Java} Reflections: Servlets: {Web}-Based Applications You Can Live With", journal = j-SIGPLAN, volume = "35", number = "3", pages = "21--24", month = mar, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Berg:2000:AJD, author = "Clifford J. Berg", title = "Advanced {Java 2} Development for Enterprise Applications", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xxiv + 785", year = "2000", ISBN = "0-13-084875-1", ISBN-13 = "978-0-13-084875-8", LCCN = "QA76.73.J38B478 2000", bibdate = "Fri Apr 11 15:03:43 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun Microsystems Press Java series", URL = "http://www.sun.com/books/catalog/berg/", acknowledgement = ack-nhfb, } @Article{Bertelsen:2000:DSJ, author = "Peter Bertelsen", title = "Dynamic semantics of {Java} bytecode", journal = j-FUT-GEN-COMP-SYS, volume = "16", number = "7", pages = "841--850", month = may, year = "2000", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:20 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/41/30/32/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Book{Bishop:2000:JGE, author = "J. M. (Judith Mary) Bishop and Nigel Bishop", title = "{Java} gently for engineers and scientists", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 436", year = "2000", ISBN = "0-201-34304-5", ISBN-13 = "978-0-201-34304-5", LCCN = "QA76.76.J38 B57 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "International computer science series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Bishop:2000:OOJ, author = "Judith Bishop and Nigel Bishop", title = "Object-orientation in {Java} for scientific programmers", journal = j-SIGCSE, volume = "32", number = "1", pages = "357--361", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331885", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Scientific programmers have traditionally programmed in entirely sequential languages such as Fortran, C or Pascal and it could be argued that object-orientation is not a concept that they would need. Yet computer science departments that give courses to scientists and engineers would like to consider teaching them in Java, rather than in one of the older languages. This paper addresses the dual issues of how Java can best supply everything that the older languages do, and then what it can meaningfully give in added value, especially in the networking and parallel area. Experience with developing solutions in Java to some fifty typical numerical problems has led to a coherent object-oriented approach and a couple of essential support classes for teaching and production work.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bogda:2000:DRO, author = "Jeff Bogda", title = "Detecting Read-Only Methods in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1915", pages = "143--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:51 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1915.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1915/19150143.htm; http://link.springer-ny.com/link/service/series/0558/papers/1915/19150143.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Bollella:2000:RTS, author = "Gregory Bollella", title = "The real-time specification for {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxiii + 195", year = "2000", ISBN = "0-201-70323-8 (paperback)", ISBN-13 = "978-0-201-70323-8 (paperback)", LCCN = "QA76.73.J38 R42 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); real-time control", } @Book{Boone:2000:JCE, author = "Barry Boone and Willam R. Stanek", title = "{Java 2} certification exam guide for programmers and developers", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xii + 687", year = "2000", ISBN = "0-07-913740-7", ISBN-13 = "978-0-07-913740-1", LCCN = "QA76.3 .B658 2000", bibdate = "Wed Feb 21 06:51:08 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, subject = "Electronic data processing personnel; Certification; Programming languages (Electronic computers); Examinations; Study guides; Java (Computer program language); Java 2; Zusatzqualifikation", tableofcontents = "Part I : Studying for the Programmer's Exam / 13 \\ Chapter 1 : Taking the Programmer Exam / 15 \\ What Is the Programmer Exam Like? / 16 \\ How Does the Text Map to the Programmer's Exam Objectives? / 20 \\ How the Test Is Administered / 21 \\ How to Sign Up and Take the Exams / 21 \\ Test-Taking Tips for the Programmer Exam / 23 \\ Sun's Take on Certification / 28 \\ Where Certification Is Heading / 30 \\ Chapter 2 : Java Programming Essentials / 31 \\ Object-Oriented Relationships Using ``Is a'' and ``Has a'' / 33 \\ Review: Classes, Variables, and Methods / 36 \\ Creating a Package / 42 \\ Class Keywords / 46 \\ Ordering of a Java Source File / 50 \\ Variable and Method Keywords / 51 \\ Access Control Keywords / 53 \\ Casting Classes / 59 \\ Interfaces / 61 \\ Static Initializers / 65 \\ Chapter 3 : Keywords and Constructors / 79 \\ Organizing Classes / 82 \\ Keywords for Classes and Members / 83 \\ Simple Data Types / 85 \\ Values and Variables / 85 \\ Exception Handling / 86 \\ Instance Creation and Testing / 87 \\ Control Flow / 88 \\ The Default Constructor / 91 \\ Defining, Overloading, and Overriding a Constructor / 92 \\ Invoking Another Constructor / 94 \\ Chapter 4 : Memory and Garbage Collection / 103 \\ Garbage Collection / 105 \\ Finalization / 107 \\ Passing Parameters to a Method / 110 \\ What's Not on the Test \\ Forcing Garbage Collection / 115 \\ Chapter 5 : Data Types and Values / 123 \\ Data Types / 124 \\ Arrays / 130 \\ Initializing an Array When It is Allocated / 131 \\ Chapter 6 : Operators / 139 \\ Operators / 141 \\ Bitwise Operators / 145 \\ Testing for an Objects Class Type / 151 \\ Equals() and == / 152 \\ Operator Precedence and Evaluation Order / 154 \\ Chapter 7 : Control Flow / 163 \\ Objectives for This Chapter / 164 \\ Nested loops / 164 \\ Labels / 166 \\ Nested if and else Statements / 168 \\ Legal Values for if Statements / 169 \\ Switch and Case Statements / 170 \\ While and Do-While Statements / 172 \\ Using and and and / 172 \\ Chapter 8 : Exceptions / 179 \\ Rethrowing an Exception / 187 \\ Which Exceptions a Method Can Throw / 189 \\ Exceptions in an Overriding Method in a Subclass / 190 \\ Creating and Throwing an Exception / 192 \\ Chapter 9 : Methods / 205 \\ Defining a Method / 206 \\ Overloading a Method / 207 \\ Overriding a Method / 209 \\ Object References to Base and Derived Classes / 213 \\ Declaring Native Methods / 215 \\ Chapter 10 : Essential java.lang and java.util / 221 \\ Wrapper Classes / 222 \\ Working with the Math Class / 227 \\ The String and StringBuffer Classes / 231 \\ Collections / 239 \\ Chapter 11 : Input/Output / 253 \\ Objectives for This Chapter / 254 \\ The java.io Package / 255 \\ The File Class / 262 \\ RandomAccessFiles / 268 \\ File Descriptors / 270 \\ Chapter 12 : Passing Arguments to Programs / 277 \\ The main() Method / 278 \\ Command-Line Arguments / 280 \\ When main() Ends / 282 \\ Embedding an Applet in an HTML Page / 282 \\ Passing Parameters to an Applet / 284 \\ Retrieving Parameters / 285 \\ Customizing an Applet / 287 \\ Chapter 13 : Threads / 297 \\ An Overview of Threads / 298 \\ Creating Threads with java.lang. / 303 \\ Monitors and Synchronization / 308 \\ Why a Thread Might Not Execute / 320 \\ Other Useful Thread Methods / 321 \\ Chapter 14 : Graphics, Components, and Layout / 329 \\ The Abstract Windowing Toolkit (AWT) / 331 \\ Drawing Using a Graphics Object / 336 \\ The Image Class / 344 \\ How Java Arranges Components within Containers / 345 \\ The Component Class, Subclasses and Methods / 346 \\ Key Component Methods / 352 \\ Using Layout Managers / 356 \\ Default Layout Managers / 367 \\ Chapter 15 : Events / 373 \\ Event Classes / 374 \\ Listening for Events / 376 \\ The Listener Interfaces / 379 \\ Implementing a Listener Interface / 383 \\ Semantic and Low-Level Events / 384 \\ AWTEvent Subclasses / 386 \\ Extending Adapter Classes / 390 \\ Chapter 16 : Inner Classes / 397 \\ Inner Classes / 398 \\ Anonymous Classes / 402 \\ Static Inner Classes / 402 \\ Part II : Studying for the Developer's Exam / 409 \\ Chapter 17 : The Developer Exam Roadmap / 411 \\ Concepts You Should Know Before Getting Started / 413 \\ The Programming Assignment / 414 \\ The Essay Exam / 417 \\ How to Sign Up for and Take the Exams / 418 \\ How to Acquire the Programming Assignment for the Developer Test / 420 \\ Strategies for Approaching the Developer Assignment / 421 \\ Chapter 18 : Developing With Java / 423 \\ Styles and Conventions / 425 \\ Error Handling / 426 \\ Java's Documentation Problem / 428 \\ javadoc Tags / 432 \\ Rules for Using javadoc Comments and Tags / 437 \\ Examples of javadoc Comments and Tags / 438 \\ Abstract Classes / 440 \\ Interfaces / 442 \\ Packages / 443 \\ Defining Access Methods / 446 \\ Chapter 19 : Accessing and Managing Databases / 455 \\ Create Your Own Databases / 457 \\ Accessing Databases from Multiple Clients / 460 \\ Two-Tiered and Three-Tiered Architectures / 461 \\ Using Java APIs / 462 \\ Remote Method Invocation (RMI) / 462 \\ Defining a Remote Interface / 463 \\ Defining a Remote Class / 464 \\ Invoking Remote Objects / 469 \\ Java Database Connectivity (JDBC) / 473 \\ An Example of Using ODBC with Microsoft Access / 477 \\ Chapter 20 : Network Programming and Communication / 485 \\ A TCP/IP Primer / 486 \\ Ports and Sockets / 489 \\ Streams / 490 \\ Designing Servers and Clients / 491 \\ Handling Multiple Clients / 492 \\ Client Issues / 494 \\ The Networking Package / 495 \\ Internet Streams / 499 \\ Client-Server Examples / 500 \\ Writing a Single-Client Server in Java / 501 \\ Writing a Multi-Client Server in Java / 510 \\ Uniform Resource Locator (URL) / 521 \\ Chapter 21 : Designing Application Interfaces / 533 \\ Mix and Match / 535 \\ Changing Your Look / 543 \\ Working with Frames / 546 \\ Part III : Practice Exam / 555 \\ Chapter 22 : Sun Certified Programmer Practice Exam / 557 \\ Chapter 24 : Sun Certified Developer Practice Exam / 613 \\ Chapter 25 : The Sun-Certified Developer Practice Essay Exam / 651", } @Article{Boone:2000:UJX, author = "Keith W. Boone", title = "Using {Java} for {XML} Processing", journal = j-MARKUP-LANG, volume = "2", number = "3", pages = "321--330", month = "Summer", year = "2000", CODEN = "MLTPFG", ISSN = "1099-6621", ISSN-L = "1099-6621", bibdate = "Wed Feb 20 11:44:32 MST 2002", bibsource = "http://mitpress.mit.edu/journal-home.tcl?issn=10996621; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://mitpress.mit.edu/catalog/item/default.asp?sid=3108FA5E-91BB-480F-9930-C1C27725EAB8&ttype=6&tid=7574", acknowledgement = ack-nhfb, fjournal = "Markup languages: theory \& practice", } @Article{Borger:2000:IPJ, author = "Egon B{\"o}rger and Wolfram Schulte", title = "Initialization problems for {Java}", journal = j-SOFTW-CONCEPTS-TOOLS, volume = "19", number = "4", pages = "175--178", month = oct, year = "2000", CODEN = "SCOTE5", DOI = "https://doi.org/10.1007/s003789900003", ISSN = "0945-8115 (print), 1432-2188 (electronic)", ISSN-L = "0945-8115", bibdate = "Sat Jul 23 06:08:38 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/structprogram.bib", URL = "https://link.springer.com/article/10.1007/s003789900003", acknowledgement = ack-nhfb, fjournal = "Software --- Concepts and Tools", } @Article{Borger:2000:PMS, author = "E. Borger and W. Schulte", title = "A practical method for specification and analysis of exception handling --- a {Java\slash JVM} case study", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "26", number = "9", pages = "872--887", month = sep, year = "2000", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/32.877847", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=877847", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Boussinot:2000:JTS, author = "Fr{\'e}d{\'e}ric Boussinot and Jean-Ferdy Susini", title = "{Java} threads and {SugarCubes}", journal = j-SPE, volume = "30", number = "5", pages = "545--566", day = "25", month = apr, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/(SICI)1097-024X(20000425)30:5<545::AID-SPE308>3.0.CO;2-Q", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:45:44 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/71004433/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=71004433&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Breg:2000:PEJ, author = "Fabian Breg and Mike Lew and Harry A. G. Wijshoff", title = "Performance Evaluation of a {Java} Based Chat System", journal = j-LECT-NOTES-COMP-SCI, volume = "1940", pages = "276--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:17:15 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1940.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1940/19400276.htm; http://link.springer-ny.com/link/service/series/0558/papers/1940/19400276.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Brookshier:2000:JSC, author = "Daniel Brookshier", title = "{Java} Standards for Corporate Development", publisher = pub-R-D-BOOKS, address = pub-R-D-BOOKS:adr, pages = "????", year = "2000", ISBN = "1-929629-00-1", ISBN-13 = "978-1-929629-00-8", LCCN = "????", bibdate = "Tue Feb 20 18:57:30 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$40", acknowledgement = ack-nhfb, } @Article{Bruns:2000:ASD, author = "Glenn R. Bruns and Alan E. Frey and Peter A. Mataga and Susan J. Tripp", title = "Automated software development with {XML} and the {Java} language", journal = j-BELL-LABS-TECH-J, volume = "5", number = "2", pages = "32--43", month = "Summer", year = "2000", CODEN = "BLTJFD", DOI = "https://doi.org/10.1002/bltj.2220", ISSN = "1089-7089 (print), 1538-7305 (electronic)", ISSN-L = "1089-7089", bibdate = "Fri Nov 26 17:31:28 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Bell Labs Technical Journal", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1538-7305/issues/", onlinedate = "28 Aug 2002", } @Article{Bubak:2000:CJN, author = "M. Bubak and D. Kurzyniec and P. Luszczek and V. Sunderam", title = "Creating {Java} to Native Code Interfaces with {Janet}", journal = j-SCI-PROG, volume = "9", number = "1", publisher = "IOS Press, Nieuwe Hemweg 6B, 1013 BG Amsterdam, The Netherlands", pages = "39--50", year = "2000", CODEN = "SCIPEV", ISSN = "1058-9244 (print), 1875-919X (electronic)", ISSN-L = "1058-9244", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Scientific Programming", journal-URL = "http://iospress.metapress.com/content/1058-9244", pagecount = "12", } @Book{Budd:2000:UOO, author = "Timothy Budd", title = "Understanding object-oriented programming with {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxi + 420", year = "2000", ISBN = "0-201-61273-9", ISBN-13 = "978-0-201-61273-8", LCCN = "QA76.64 .B835 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "object-oriented programming (computer science)", } @Book{Bulka:2000:JPS, author = "Dov Bulka", title = "{Java} Performance and Scalability, Volume 1: Server-Side Programming Techniques", publisher = pub-AW, address = pub-AW:adr, pages = "272 (est.)", year = "2000", ISBN = "0-201-70429-3", ISBN-13 = "978-0-201-70429-7", LCCN = "QA76.73.J38 B84 2000", bibdate = "Thu Jan 18 05:59:31 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$34.95", acknowledgement = ack-nhfb, } @Article{Bull:2000:BSH, author = "J. M. Bull and L. A. Smith and M. D. Westhead and D. S. Henty and R. A. Davey", title = "A benchmark suite for high performance {Java}", journal = j-CPE, volume = "12", number = "6", pages = "375--388", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<375::AID-CPE480>3.0.CO;2-M", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515724/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515724&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @InProceedings{Bull:2000:JOL, author = "J. M. Bull and M. E. Kambites", editor = "????", booktitle = "{Proceedings of the ACM 2000 conference on Java Grande}", title = "{JOMP}: an {OpenMP}-like interface for {Java}", publisher = pub-ACM, address = pub-ACM:adr, pages = "44--53", year = "2000", bibdate = "Mon Oct 07 09:19:42 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pvm.bib", acknowledgement = ack-nhfb, } @InProceedings{Bull:2000:PPJ, author = "J. Mark Bull and Mark E. Kambites and Jan Obdrzalek", title = "Parallel Programming in {Java} with {OpenMP}-like Directives", crossref = "ACM:2000:SHP", pages = "150--150", year = "2000", bibdate = "Sat Feb 10 14:28:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Busi:2000:PCC, author = "Nadia Busi and Roberto Gorrieri and Gianluigi Zavattaro", title = "Process Calculi for Coordination: From {Linda} to {JavaSpaces}", journal = j-LECT-NOTES-COMP-SCI, volume = "1816", pages = "198--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:32 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1816.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1816/18160198.htm; http://link.springer-ny.com/link/service/series/0558/papers/1816/18160198.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Butkevich:2000:CTS, author = "Sergey Butkevich and Marco Renedo and Gerald Baumgartner and Michal Young", title = "Compiler and tool support for debugging object protocols", journal = j-SIGSOFT, volume = "25", number = "6", pages = "50--59", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355052", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We describe an extension to the Java programming language that supports static conformance checking and dynamic debugging of object ``protocols,'' i.e., sequencing constraints on the order in which methods may be called. Our Java protocols have a statically checkable subset embedded in richer descriptions that can be checked at run time. The statically checkable subtype conformance relation is based on Nierstrasz' proposal for regular (finite-state) process types, and is also very close to the conformance relation for architectural connectors in the Wright architectural description language by Allen and Garlan. Richer sequencing properties, which cannot be expressed by regular types alone, can be specified and checked at run time by associating predicates with object states. We describe the language extensions and their rationale, and the design of tool support for static and dynamic checking and debugging.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @MastersThesis{Caamano:2000:PJS, author = "Paul Caamano", title = "Porting a {JAVA\TM{} Virtual Machine} to an embedded system", type = "Thesis ({M.S.})", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2000", LCCN = "QA76.73.J38 C33 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "embedded computer systems; Java (computer program language); masters theses -- University of California, Santa Cruz -- computer science; virtual computer systems", } @Article{Calarco:2000:BRB, author = "Pascal V. Calarco", title = "Book Review: {{\booktitle{Developer's guide to the Java Web server: Building effective and scalable server-side applications}}, by Dan Woods, Larne Pekowsky, and Tom Snee}", journal = j-J-AM-SOC-INF-SCI, volume = "51", number = "10", pages = "965--966", month = "????", year = "2000", CODEN = "AISJB6", DOI = "https://doi.org/10.1002/1097-4571(2000)51:10<965::AID-ASI120>3.0.CO%3B2-U", ISSN = "0002-8231 (print), 1097-4571 (electronic)", ISSN-L = "0002-8231", bibdate = "Fri Sep 11 09:04:35 MDT 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/jasis.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Journal of the American Society for Information Science", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2330-1643", onlinedate = "16 Jun 2000", } @Article{Calsavara:2000:JQH, author = "Alexandre Pereira Calsavara", title = "{Java Q\&A}: How Can {I} Extend {Java}'s Search Capabilities?", journal = j-DDJ, volume = "25", number = "12", pages = "141--142, 144, 146", month = dec, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:25 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_12/jqa0012.zip", abstract = "String searching is a basic operation for just about any application. Alexandre presents a small class that uses regular expressions to add powerful string search capabilities to Java. Additional resources include jqa0012.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Caprotti:2000:JPC, author = "Olga Caprotti and Arjeh M. Cohen and Manfred Riem", title = "{JAVA} Phrasebooks for Computer Algebra and Automated Deduction", journal = j-SIGSAM, volume = "34", number = "2", pages = "33--37", month = jun, year = "2000", CODEN = "SIGSBZ", ISSN = "0163-5824 (print), 1557-9492 (electronic)", ISSN-L = "0163-5824", bibdate = "Fri Feb 8 18:27:07 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGSAM Bulletin", issue = "132", } @Article{Caromel:2000:WJP, author = "Denis Caromel and Serge Chaumette and Geoffrey Fox and Peter Graham", title = "Workshop on {Java} for Parallel and Distributed Computing", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "526--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000526.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000526.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Carpenter:2000:MML, author = "Bryan Carpenter and Vladimir Getov and Glenn Judd and Anthony Skjellum and Geoffrey Fox", title = "{MPJ}: {MPI}-like message passing for {Java}", journal = j-CPE, volume = "12", number = "11", pages = "1019--1038", month = sep, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200009)12:11<1019::AID-CPE518>3.0.CO;2-G", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:10 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76000188/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76000188&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Carpenter:2000:OSM, author = "Bryan Carpenter and Geoffrey Fox and Sung Hoon Ko and Sang Lim", title = "Object serialization for marshaling data in a {Java} interface to {MPI}", journal = j-CPE, volume = "12", number = "7", pages = "539--553", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<539::AID-CPE498>3.0.CO;2-H", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516217/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516217&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Chalk:2000:CCC, author = "Peter Chalk", title = "Conference Corner: Conference Report: {JICC4: Java in the Computing Curricula}", journal = j-SIGPLAN, volume = "35", number = "3", pages = "18--19", month = mar, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chalk:2000:JJC, author = "Peter Chalk", title = "{JICC4}: {Java} in the computing curricula", journal = j-SIGPLAN, volume = "35", number = "3", pages = "18--19", month = mar, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:14 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chang:2000:JJI, author = "Chi-Chao Chang and Thorsten von Eicken", title = "{Javia}: {A Java} interface to the virtual interface architecture", journal = j-CPE, volume = "12", number = "7", pages = "573--593", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<573::AID-CPE500>3.0.CO;2-O", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516214/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516214&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Chapman:2000:JES, author = "Stephen J. Chapman", title = "{Java} for Engineers and Scientists", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xix + 572", year = "2000", ISBN = "0-13-919523-8", ISBN-13 = "978-0-13-919523-5", LCCN = "QA76.73.J38C477 1999", bibdate = "Mon May 06 06:32:32 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$45.00", URL = "http://www.phptr.com/ptrbooks/esm_0139195238.html", acknowledgement = ack-nhfb, } @Article{Chelius:2000:ING, author = "Guillaume Chelius and {\'E}ric Fleury", title = "An {IP} Next Generation Compliant {Java\TM} Virtual Machine", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "528--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000528.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000528.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Chen:2000:JCT, author = "Zhiqun Chen", title = "{Java Card} technology for {Smart Cards}: architecture and programmer's guide", publisher = pub-AW, address = pub-AW:adr, pages = "xxii + 368", year = "2000", ISBN = "0-201-70329-7", ISBN-13 = "978-0-201-70329-0", LCCN = "QA76.73.J38 C478 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); smart cards", } @Article{Chiba:2000:LTS, author = "Shigeru Chiba", title = "Load-Time Structural Reflection in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "313--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500313.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500313.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Christ:2000:SFP, author = "R. Christ and S. L. Halter and K. Lynne and S. Meizer and S. J. Munroe and M. Pasch", title = "{San Francisco} performance: a case study in performance for large-scale {Java} applications", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "4--20", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/christ.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Christian:2000:JPI, author = "Wolfgang Christian", title = "{Java} programming and {Internet} technologies for undergraduate education", journal = j-COMP-PHYS-COMM, volume = "127", number = "1", pages = "16--22", day = "1", month = may, year = "2000", CODEN = "CPHCBZ", DOI = "https://doi.org/10.1016/S0010-4655(00)00018-7", ISSN = "0010-4655 (print), 1879-2944 (electronic)", ISSN-L = "0010-4655", bibdate = "Mon Feb 13 23:40:39 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/compphyscomm1970.bib; https://www.math.utah.edu/pub/tex/bib/compphyscomm2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0010465500000187", acknowledgement = ack-nhfb, fjournal = "Computer Physics Communications", journal-URL = "http://www.sciencedirect.com/science/journal/00104655", } @Book{Christopher:2000:HPJ, author = "Thomas Christopher and George Thiruvathukal", title = "High Performance {Java} Platform Computing: Multithreaded and Networked Programming", publisher = pub-PH, address = pub-PH:adr, pages = "xxii + 409", year = "2000", ISBN = "0-13-016164-0", ISBN-13 = "978-0-13-016164-2", LCCN = "QA76.73.J38 C488 2000", bibdate = "Sat Jul 17 07:22:51 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.sun.com/books/catalog/christopher/", acknowledgement = ack-nhfb, } @Article{Chung:2000:ECM, author = "C.-M. Chung and P.-S. Shin and S.-D. Kim", title = "An Effective Configuration Method for {Java--Internet} Computing Environment", journal = j-PARALLEL-PROCESS-LETT, volume = "10", number = "1", pages = "73--??", month = mar, year = "2000", CODEN = "PPLTEE", ISSN = "0129-6264 (print), 1793-642X (electronic)", bibdate = "Wed Apr 18 07:29:37 2001", bibsource = "http://ejournals.wspc.com.sg/ppl/10/1001/S01296264001001.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ejournals.wspc.com.sg/ppl/10/1001/S0129626400000093.html", acknowledgement = ack-nhfb, fjournal = "Parallel Processing Letters", journal-URL = "http://www.worldscientific.com/loi/ppl", } @Article{Ciancarini:2000:MCD, author = "Paolo Ciancarini and Andrea Giovannini and Davide Rossi", title = "Mobility and Coordination for Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "1752", pages = "402--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:07 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1752.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1752/17520402.htm; http://link.springer-ny.com/link/service/series/0558/papers/1752/17520402.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Cierniak:2000:PJJ, author = "Micha{\l} Cierniak and Guei-Yuan Lueh and James M. Stichnoth", title = "Practicing {JUDO}: {Java} under dynamic optimizations", journal = j-SIGPLAN, volume = "35", number = "5", pages = "13--26", month = may, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/pldi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/pldi/349299/p13-cierniak/p13-cierniak.pdf; http://www.acm.org/pubs/citations/proceedings/pldi/349299/p13-cierniak/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Clark:2000:NBG, author = "David Clark and Keri Schreiner and Jennifer Ferrero and Dale Strok", title = "News: {Blue Gene} and the race toward petaflops capacity; Embedded {Java} development moves ahead; Putting teraflops to the test; {Corba 3.0} on the way", journal = j-IEEE-CONCURR, volume = "8", number = "1", pages = "5--10", month = jan # "\slash " # mar, year = "2000", CODEN = "IECMFX", ISSN = "1092-3063 (print), 1558-0849 (electronic)", ISSN-L = "1092-3063", bibdate = "Tue Apr 25 10:24:24 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/pd/books/pd2000/pdf/p1005.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Concurrency", } @Article{Clausen:2000:JBC, author = "Lars R{\ae}der Clausen and Ulrik Pagh Schultz and Charles Consel and Gilles Muller", title = "{Java} bytecode compression for low-end embedded systems", journal = j-TOPLAS, volume = "22", number = "3", pages = "471--489", year = "2000", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Apr 17 10:05:24 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/toplas/2000-22-3/p471-clausen/p471-clausen.pdf; http://www.acm.org/pubs/citations/journals/toplas/2000-22-3/p471-clausen/", abstract = "A program executing on a low-end embedded system, such as a smart-card, faces scarce memory resources and fixed execution time constraints. We demonstrate that factorization of common instruction sequences in Java bytecode allows the memory footprint to be reduced, on average, to 85\% of its original size, with a minimal execution time penalty. While preserving Java compatibility, our solution requires only a few modifications which are straightforward to implement in any JVM used in a low-end embedded system.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", generalterms = "Design; Experimentation", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "code compression; embedded systems; Java bytecode", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Optimization}; Software --- Programming Languages --- Processors (D.3.4): {\bf Interpreters}; Software --- Programming Languages --- Processors (D.3.4): {\bf Run-time environments}", } @Article{Clifton:2000:MMO, author = "Curtis Clifton and Gary T. Leavens and Craig Chambers and Todd Millstein", title = "{MultiJava}: modular open classes and symmetric multiple dispatch for {Java}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "130--145", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p130-clifton/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Colby:2000:CCJ, author = "Christopher Colby and Peter Lee and George C. Necula and Fred Blau and Mark Plesko and Kenneth Cline", title = "A certifying compiler for {Java}", journal = j-SIGPLAN, volume = "35", number = "5", pages = "95--107", month = may, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/pldi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/pldi/349299/p95-colby/p95-colby.pdf; http://www.acm.org/pubs/citations/proceedings/pldi/349299/p95-colby/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Cooper:2000:JDP, author = "James W. Cooper", title = "{Java} Design Patterns: a Tutorial", publisher = pub-AW, address = pub-AW:adr, pages = "xvii + 329", year = "2000", ISBN = "0-201-48539-7", ISBN-13 = "978-0-201-48539-4", LCCN = "QA76.73.J38 C658 2000", bibdate = "Mon May 06 06:33:03 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, contents = "Section 1: What are design patterns? Introduction -- UML diagrams -- Section 2: Creational patterns. The factory pattern -- The factory method -- The abstract factory pattern -- The singleton pattern -- The builder pattern -- The prototype pattern -- Section 3: Structural patterns. The adapter pattern -- The bridge pattern -- The composite pattern -- The decorator pattern -- The facade pattern -- The flyweight pattern -- The proxy pattern -- Section 4: Behavioral patterns. Chain of responsibility pattern -- The command pattern -- The interpreter pattern -- The iterator pattern -- The mediator pattern -- The memento pattern -- The observer pattern -- The state pattern -- The strategy pattern -- The template pattern -- The visitor pattern -- Section 5: Design patterns and the Java foundation classes. The JFC, or swing -- Writing a simple JFC program -- Radio buttons and toolbars -- Menus and actions -- The JList class -- The JTable class -- The JTree class -- Case studies. Sandy and the mediator -- Herb's text processing tangle -- Mary's dilemma", keywords = "Java (computer program language)", } @Article{Corbett:2000:USA, author = "James C. Corbett", title = "Using shape analysis to reduce finite-state models of concurrent {Java} programs", journal = j-TOSEM, volume = "9", number = "1", pages = "51--93", month = jan, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-1/p51-corbett/p51-corbett.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-1/p51-corbett/", abstract = "Finite-state verification (e.g., model checking) provides a powerful means to detect concurrency errors, which are often subtle and difficult to reproduce. Nevertheless, widespread use of this technology by developers is unlikely until tools provide automated support for extracting the required finite-state models directly from program source. Unfortunately, the dynamic features of modern languages such as Java complicate the construction of compact finite-state models for verification. In this article, we show how shape analysis, which has traditionally been used for computing alias information in optimizers, can be used to greatly reduce the size of finite-state models of concurrent Java programs by determining which heap-allocated variables are accessible only by a single thread, and which shared variables are protected by locks. We also provide several other state-space reductions based on the semantics of Java monitors. A prototype of the reductions demonstrates their effectiveness.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "concurrent systems; finite-state verification; Java; model extraction; modeling; shape analysis; state-space reductions", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4)", } @Article{Csopaki:2000:CPI, author = "Gyula Csopaki and G{\'a}bor Andr{\'a}s Horv{\'a}th and G{\'a}bor Kov{\'a}cs", title = "Communication Protocol Implementation in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1905", pages = "254--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:46 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1905.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1905/19050254.htm; http://link.springer-ny.com/link/service/series/0558/papers/1905/19050254.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Culwin:2000:LWB, author = "Fintan Culwin", title = "{Lecturelets}: {web} based {Java} enabled lectures", journal = j-SIGCSE, volume = "32", number = "3", pages = "5--8", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343053", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The traditional lecture has, for a long time, been subject to significant criticisms regarding its learning effectiveness. Despite this it remains popular and several attempts have been made to transport aspects of its format to the Web. Many of these projects appear to have been ill informed and, like many pedagogic uses of the Web, under evaluated. This paper describes the design, implementation and deployment of lecturelets, small low-cost Web hosted lecture like presentations. One design intention was to include effective support for their evaluation and the mechanisms and intentions for this are described.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Czajkowski:2000:AIJ, author = "Grzegorz Czajkowski", title = "Application isolation in the {Java$^{TM}$} {Virtual} {Machine}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "354--366", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p354-czajkowski/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Daconta:2000:JPT, author = "Michael C. Daconta and others", title = "{Java} pitfalls: time-saving solutions and workarounds to improve programs", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xiv + 322", year = "2000", ISBN = "0-471-36174-7 (paperback)", ISBN-13 = "978-0-471-36174-9 (paperback)", LCCN = "QA76.73.J38 P3785 2000", bibdate = "Wed Feb 21 05:48:57 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Daconta:2000:XDJ, author = "Michael C. Daconta and Al Saganich", title = "{XML} development with {Java 2}", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "ix + 429", year = "2000", ISBN = "0-672-31653-6", ISBN-13 = "978-0-672-31653-1", LCCN = "QA76.76.H94 D32 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "XML (document markup language)", } @Article{Dekel:2000:SIJ, author = "Eliezer Dekel", title = "Special Issue on {Java} on Clusters", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1155--1158", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1648", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1648; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1648/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1648/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Denney:2000:CJC, author = "Ewen Denney and Thomas Jensen", title = "Correctness of {Java} Card Method Lookup via Logical Relations", journal = j-LECT-NOTES-COMP-SCI, volume = "1782", pages = "104--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:14 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1782.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1782/17820104.htm; http://link.springer-ny.com/link/service/series/0558/papers/1782/17820104.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{DePauw:2000:VRP, author = "Wim {De Pauw} and Gary Sevitsky", title = "Visualizing reference patterns for solving memory leaks in {Java}", journal = j-CPE, volume = "12", number = "14", pages = "1431--1454", day = "10", month = dec, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(20001210)12:14<1431::AID-CPE542>3.0.CO;2-2", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:11 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76500722/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76500722&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Deugo:2000:MJG, editor = "Dwight Deugo", title = "More {Java} Gems", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, pages = "xix + 484", year = "2000", ISBN = "0-521-77477-2", ISBN-13 = "978-0-521-77477-2", LCCN = "QA76 .73 J38 M657 2000", bibdate = "Wed Feb 21 05:40:18 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$40", acknowledgement = ack-nhfb, } @Book{Dicken:2000:DLO, author = "Hans Dicken and Gunther Hipper and Peter M{\"u}{\ss}ig-Trapp", title = "{Datenbanken unter Linux: Oracle 8i, MySQL, Adabas, Informix, Sybase, DB2, PostgreSQL, MiniSQL, Empress; [Tipps zur optimalen Installation und Konfiguration; Backup, Recovery, Ausfallsicherheit; mit PHP und Java ins Web]}", publisher = "MITP-Verlag", address = "Bonn, Germany", pages = "516 (est.)", year = "2000", ISBN = "3-8266-0555-1", ISBN-13 = "978-3-8266-0555-0", LCCN = "????", bibdate = "Sat Mar 09 16:01:08 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, language = "German", } @MastersThesis{Dieckmann:2000:SOD, author = "Sylvia Dieckmann", title = "A study of the object demographics of large {Java} applications", type = "Thesis ({M.S.})", school = "University of California, Santa Barbara", address = "Santa Barbara, CA, USA", year = "2000", LCCN = "QA76.27.C2 S25 DIES 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "dissertations, academic -- UCSB -- computer science", } @Article{Dill:2000:MCJ, author = "David Dill", title = "Model checking {Java} programs (abstract only)", journal = j-SIGSOFT, volume = "25", number = "5", pages = "179", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349113", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/multithreading.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automatic state exploration tools (model checkers) have had some success when applied to protocols and hardware designs, but there are fewer success stories about software. This is unfortunate, since the software problem is worsening even faster than the hardware and protocol problems. Model checking of concurrent programs is especially interesting, because they are notoriously difficult to test, analyze, and debug by other methods. This talk will be a description of our initial efforts to check Java programs using a model checker. The model checker supports dynamic allocation, thread creation, and recursive procedures (features that are not necessary for hardware verification), and has some special optimizations and checks tailored to multi-threaded Java program. I will also discuss some of the challenges for future efforts in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dillenberger:2000:BJV, author = "D. Dillenberger and R. Bordawekar and C. W. Clark and D. Durand and D. Emmes and O. Gohda and S. Howard and M. F. Oliver and F. Samuel and R. W. {St. John}", title = "Building a {Java} virtual machine for server applications: The {JVM} on {OS/390}", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "194--210", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/dillenberger.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Dimpsey:2000:JSP, author = "R. Dimpsey and R. Arora and K. Kuiper", title = "{Java} server performance: a case study of building efficient, scalable {Jvms}", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "151--174", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/dimpsey.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{DiStefano:2000:JKE, author = "Antonella {Di Stefano} and Corrado Santoro", title = "A {Java} Kernel for Embedded Systems in Distributed Process Control", journal = j-IEEE-CONCURR, volume = "8", number = "4", pages = "55--63", month = oct # "\slash " # dec, year = "2000", CODEN = "IECMFX", DOI = "https://doi.org/10.1109/4434.895107", ISSN = "1092-3063 (print), 1558-0849 (electronic)", ISSN-L = "1092-3063", bibdate = "Tue Jan 16 12:15:42 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/pd/books/pd2000/pdf/p4055.pdf; http://www.computer.org/concurrency/pd2000/p4055abs.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Concurrency", } @Book{Doherty:2000:JU, author = "Donald Doherty and Rick Leinecker", title = "{JavaBeans} Unleashed", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xv + 676", year = "2000", ISBN = "0-672-31424-X", ISBN-13 = "978-0-672-31424-7", LCCN = "A76.73.J38 D627 2000", bibdate = "Wed Feb 21 05:50:01 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Domani:2000:GFG, author = "Tamar Domani and Elliot K. Kolodner and Erez Petrank", title = "A generational on-the-fly garbage collector for {Java}", journal = j-SIGPLAN, volume = "35", number = "5", pages = "274--284", month = may, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/pldi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/pldi/349299/p274-domani/p274-domani.pdf; http://www.acm.org/pubs/citations/proceedings/pldi/349299/p274-domani/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @InProceedings{Dray:2000:NPA, author = "Jim Dray", title = "{NIST} Performance Analysis of the Final Round {Java AES} Candidates", crossref = "NIST:2000:TAE", pages = "149--160", year = "2000", bibdate = "Wed Feb 07 19:03:41 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Duarte:2000:BJA, author = "Carlos H. C. Duarte and Martin Fogarty and Robert C. Larrabee", title = "Bookshelf: Java Application Frameworks Use Case Driven Object: Modeling with {UML}: a Practical Approach: Chaos and Complexity in Software, Challenging the Industry and the New Science", journal = j-IEEE-SOFTWARE, volume = "17", number = "5", pages = "120--123", month = sep # "\slash " # oct, year = "2000", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2000.10045", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Wed Nov 1 17:47:36 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/so/books/so2000/pdf/s5120.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Dwelly:2000:JXL, author = "Andrew Dwelly", title = "{Java}, {XML}, and Literate Programming", journal = j-DDJ, volume = "25", number = "2", pages = "62, 64--66, 68", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/litjava.txt; http://www.ddj.com/ftp/2000/2000_02/litjava.zip", abstract = "Marius, the system Andrew presents here, implements some of Donald Knuth's ideas about literate programs, but uses Java as its programming language, with HTML as the output. In the process, Marius leverages the power of XML. Additional resources include litjava.txt (listings) and litjava.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Dwelly:2000:XRP, author = "Andrew Dwelly", title = "{XML}, Reflective Pattern Matching, and {Java}", journal = j-DDJ, volume = "25", number = "6", pages = "46, 49--52, 54", month = jun, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:15 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_06/marius05.zip; http://www.ddj.com/ftp/2000/2000_06/xmljava.txt", abstract = "Although the pattern matching available in Hex, the program Andrew presents here, is relatively simple, it is still powerful enough to perform sophisticated XML document processing. Additional resources include xmljava.txt (listings) and marius05.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Dwyer:2000:APL, author = "Matthew B. Dwyer and John Hatcliff", title = "Adapting programming languages technologies for finite-state verification", journal = j-SIGSOFT, volume = "25", number = "1", pages = "46--49", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340885", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program verification and program transformation are two research areas that have different goals. Program verification aims to increase confidence in software through the use of formal methods and systematic testing. Program transformation rearranges the structure of programs to increase their efficiency or to make them more amenable to some other form of processing. Despite being funded under different NSF awards from the Software Engineering and Languages program on the two different areas above the authors are collaborating to apply results from both awards to develop a set of tools, called Bandera, for transforming Java programs into a form that is amenable to verification using existing model checking tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Eckel:2000:TJ, author = "Bruce Eckel", title = "Thinking in {Java}", publisher = pub-PH, address = pub-PH:adr, pages = "1127", year = "2000", ISBN = "0-13-027363-5", ISBN-13 = "978-0-13-027363-5", LCCN = "QA76.73.J38 E25 2000", bibdate = "Fri Apr 13 15:37:06 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.99", URL = "http://www.jowsey.com/books-music/javabooks.html; http://www.phptr.com/ptrbooks/ptr_0130273635.html", acknowledgement = ack-nhfb, } @Book{Edwards:2000:CJC, author = "W. Keith Edwards", title = "Core {JINI} --- The Complete Video Course", publisher = pub-PH, address = pub-PH:adr, pages = "????", year = "2000", ISBN = "0-13-086386-6", ISBN-13 = "978-0-13-086386-7", LCCN = "????", bibdate = "Wed Apr 26 17:16:45 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$129.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130863866.html; http://www.sun.com/books/catalog/edwards2/", acknowledgement = ack-nhfb, } @Book{Efford:2000:DIP, author = "Nick Efford", title = "Digital image processing: a practical introduction using {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxiii + 340 + 4", year = "2000", ISBN = "0-201-59623-7", ISBN-13 = "978-0-201-59623-6", LCCN = "TA1637 .E35 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, contents = "Ch. 1. Introduction -- Ch. 2. Image Acquisition -- Ch. 3. Digital images -- Ch. 4. Images in Java -- Ch. 5. Basic image manipulation -- Ch. 6. Grey level and colour enhancement -- Ch. 7. Neighbourhood operations -- Ch. 8. The frequency domain -- Ch. 9. Geometric operations -- Ch. 10. Segmentation -- Ch. 11. Morphological image processing -- Ch. 12. Image compression -- App. A. Glossary of Image Processing Terms.", keywords = "image processing -- digital techniques", } @Article{Ellis:2000:TMD, author = "Ainslie Ellis", title = "Toolbook multimedia demonstrations for {Java} programming", journal = j-SIGCSE, volume = "32", number = "3", pages = "181--181", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343174", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes a set of multimedia demonstrations built to facilitate the learning of introductory Java programming. They provide demonstrations of complex processes and concepts that are difficult, if not impossible, to present using more traditional media used in lectures.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{English:2000:MNCa, author = "Marie English", title = "Micro News: New benchmark for {Unigraphics V15}; Wireless applications grow; Tool set for the {Java Card} platform; Biomechanical discovery affects mobile applications, robots; Hard to navigate {Web}", journal = j-IEEE-MICRO, volume = "20", number = "3", pages = "3--3, 86--87", month = may # "\slash " # jun, year = "2000", CODEN = "IEMIDZ", ISSN = "0272-1732 (print), 1937-4143 (electronic)", ISSN-L = "0272-1732", bibdate = "Thu Dec 14 06:08:58 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Science Citation Index database (1980--2000)", URL = "http://dlib.computer.org/mi/books/mi2000/pdf/m3003.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Micro", journal-URL = "http://www.computer.org/csdl/mags/mi/index.html", } @Article{Epstein:2000:JQ, author = "David Epstein and Joseph Kiniry and John Motil", title = "{Java Q\&A}: What is ``{JJ}''?", journal = j-DDJ, volume = "25", number = "4", pages = "101--106", month = apr, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:14 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_04/jqa400.txt", abstract = "JJ is a Java implementation originally designed as an educational programming language and environment. Although it's a subset of Java, JJ includes advanced programming features such as support for Design by Contract. Additional resources include jqa400.txt (listings).", acknowledgement = ack-nhfb, annote = "JJ is a subset of Java, designed for learning Java.", fjournal = "Dr. Dobb's Journal of Software Tools", } @Manual{Falco:2000:JBX, author = "Joe Falco", title = "{Java}-based {XML} utility for the {NIST} machine tool data repository", number = "6581", publisher = "U.S. Dept. of Commerce, Technology Administration, National Institute of Standards and Technology", address = "????", pages = "13", month = nov, year = "2000", LCCN = "DOC C 13.58:6581 mf11", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Shipping list number 2001-0146-M.", series = "NISTIR", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Manual{Falco:2000:JXU, author = "Joe Falco", title = "{Java}-based {XML} utility for the {NIST} machine tool data repository", number = "6581", publisher = pub-NIST, address = pub-NIST:adr, pages = "13", month = nov, year = "2000", LCCN = "DOC C 13.58:6581", bibdate = "Wed Mar 27 20:47:26 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Shipping list no.: 2001-0146-M.", series = "NISTIR", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Article{Farkas:2000:QEC, author = "Keith I. Farkas and Jason Flinn and Godmar Back and Dirk Grunwald and Jennifer M. Anderson", title = "Quantifying the energy consumption of a pocket computer and a {Java Virtual Machine}", journal = j-SIGMETRICS, volume = "28", number = "1", pages = "252--263", month = jun, year = "2000", CODEN = "????", DOI = "https://doi.org/10.1145/345063.339421", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:31:11 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In this paper, we examine the energy consumption of a state-of-the-art pocket computer. Using a data acquisition system, we measure the energy consumption of the Itsy Pocket Computer, developed by Compaq Computer Corporation's Palo Alto Research Labs. We begin by showing that the energy usage characteristics of the Itsy differ markedly from that of a notebook computer. Then, since we expect that flexible software environments will become increasingly prevalent on pocket computers, we consider applications running in a Java environment. In particular, we explain some of the Java design tradeoffs applicable to pocket computers, and quantify their energy costs. For the design options we considered and the three workloads we studied, we find a maximum change in energy use of 25\%.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Book{Fields:2000:WDJ, author = "Duane K. Fields and Mark A. Kolb", title = "{Web} Development with {JavaServer} Pages", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxvi + 554", year = "2000", ISBN = "1-884777-99-6", ISBN-13 = "978-1-884777-99-8", LCCN = "TK5105.8885.J38 F54 2000", bibdate = "Wed Feb 21 05:51:23 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$44.95", URL = "http://www.manning.com/fields; http://www.manning.com/Fields/index.html", acknowledgement = ack-nhfb, } @PhdThesis{FigueroadelCid:2000:RFF, author = "Samuel {Figueroa del Cid}", title = "A Rigorous Framework for Fully Supporting the {IEEE Standard} for Floating-Point Arithmetic in High-Level Programming Languages", type = "{Ph.D.} Thesis", school = "Department of Computer Science, New York University", address = "New York, NY, USA", pages = "345", month = jan, year = "2000", ISBN = "0-599-59894-8", ISBN-13 = "978-0-599-59894-2", bibdate = "Fri Oct 25 17:16:24 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.cs.nyu.edu/csweb/Research/theses.html; http://www.cs.nyu.edu/csweb/Research/Theses/figueroa_sam.html; http://www.cs.nyu.edu/csweb/Research/Theses/figueroa_sam.pdf; http://www.cs.nyu.edu/csweb/Research/Theses/figueroa_sam.ps.gz; http://wwwlib.umi.com/dissertations/fullcit/9956669; http://wwwlib.umi.com/dissertations/preview/9956669", abstract = "Processors conforming to the IEEE Standard for Floating-Point Arithmetic have been commonplace for some years, and now several programming languages seem to support or conform to this standard, from hereon referred to as ``the IEEE Standard.'' For example, The Java Language Specification by Gosling, Joy, and Steele, which defines the Java language, frequently mentions the IEEE Standard. Indeed, Java, as do other languages, supports some of the features of the IEEE Standard, including a couple floating-point data formats, and even requires (in section 4.2.4 ``Floating-Point Operations'' of the aforementioned book) that ``operators on floating-point numbers behave exactly as specified by IEEE 754.'' Arguing that the support current languages offer is not enough, this thesis establishes clear criteria for what it means to fully support the IEEE Standard in a programming language. Each aspect of the IEEE Standard is examined in detail from the point of view of how various arithmetic engines implement that aspect of the IEEE Standard, how different languages (and implementations thereof) support it, and what the range of options are in supporting that aspect. Practical recommendations are then offered (particularly, but not exclusively, for Ada and Java), taking, for example, programmer convenience and impact on performance into consideration. A detailed model specification following these recommendations is provided for the Ada language. In addition, a variety of issues related to the floating-point aspects of programming languages are discussed, so as to serve as a more complete guide to language designers. One such issue is floating-point expression evaluation schemes, and, more specifically, whether bit-for-bit identical results are actually achievable on a variety of platforms that conform to the IEEE Standard, as the Java language promises. Closely tied to this issue is that of double rounding, which occurs when a (possibly intermediate) result is rounded more than once before subsequent use or before being delivered to its final destination. So this thesis discusses when double rounding makes a difference, how it can be avoided, and what the performance impact is in avoiding it.", acknowledgement = ack-nhfb, keywords = "double rounding", } @Article{Fitzgerald:2000:MOC, author = "Robert Fitzgerald and Todd B. Knoblock and Erik Ruf and Bjarne Steensgaard and David Tarditi", title = "{Marmot}: an optimizing compiler for {Java}", journal = j-SPE, volume = "30", number = "3", pages = "199--232", month = mar, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/(SICI)1097-024X(200003)30:3<199::AID-SPE296>3.0.CO;2-2", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:45:15 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/71001774/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=71001774&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Book{Flanagan:2000:JEC, author = "David Flanagan and Richard Monson-Haefel and Jason Hunter and Scott Oaks and Jim Farley", title = "The {Java} enterprise {CD} bookshelf", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 604", year = "2000", ISBN = "1-56592-850-4 (set), 1-56592-483-5 (book)", ISBN-13 = "978-1-56592-850-3 (set), 978-1-56592-483-3 (book)", LCCN = "QA76.73.J38 J366 1999", bibdate = "Thu Oct 31 17:53:51 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Title from disc label Bonus book has title: Java Enterprise in a nutshell : a desktop quick reference / David Flanagan \ldots{} [et al.]. 1999 Contents: Java enterprise in a nutshell -- Java in a nutshell, 3rd ed. -- Java foundation classes in a nutshell -- Enterprise JavaBeans, 2nd ed. -- Java servlet programming -- Java security -- Java distributed computing", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Flanagan:2000:JEN, author = "David Flanagan", title = "{Java} examples in a nutshell: a tutorial companion to {Java} in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvi + 566", year = "2000", ISBN = "0-596-00039-1", ISBN-13 = "978-0-596-00039-4", LCCN = "QA76.73.J38 F5518 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "es", series = "Nutshell handbook", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Flanagan:2000:JPL, author = "David Flanagan and Jim Farley and William Crawford and Kris Magnusson", title = "{Java} Professional Library", publisher = pub-ORA, address = pub-ORA:adr, month = nov, year = "2000", ISBN = "0-596-00107-X", ISBN-13 = "978-0-596-00107-0", LCCN = "????", bibdate = "Mon Jul 30 06:50:24 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/", URL = "http://www.oreilly.com/catalog/9780596001070; http://www.oreilly.com/catalog/javaprolib", acknowledgement = ack-nhfb, } @Article{Flanagan:2000:TBR, author = "Cormac Flanagan and Stephen N. Freund", title = "Type-based race detection for {Java}", journal = j-SIGPLAN, volume = "35", number = "5", pages = "219--232", month = may, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/pldi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/pldi/349299/p219-flanagan/p219-flanagan.pdf; http://www.acm.org/pubs/citations/proceedings/pldi/349299/p219-flanagan/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Fleury:2000:PJS, author = "Ann E. Fleury", title = "Programming in {Java}: student-constructed rules", journal = j-SIGCSE, volume = "32", number = "1", pages = "197--201", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331854", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Java is becoming a popular first programming language for university students. One reason for its popularity is its power as an object-oriented language. This study examined beginning students' understanding of the construction and use of objects in Java. During tape-recorded interviews, students were asked to predict which programs from a collection of similar programs would work according to specification and which would not. This paper will discuss those interviews, including the most common false assumptions or ``student-constructed rules'' invoked by the students and the implications of the interviews for instruction.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Fong:2000:PLM, author = "Philip W. L. Fong and Robert D. Cameron", title = "Proof linking: modular verification of mobile programs in the presence of lazy, dynamic linking", journal = j-TOSEM, volume = "9", number = "4", pages = "379--409", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p379-fong/p379-fong.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p379-fong/", abstract = "Although mobile code systems typically employ link-time code verifiers to protect host computers from potentially malicious code, implementation flaws in the verifiers may still leave the host system vulnerable to attack. Compounding the inherent complexity of the verification algorithms themselves, the need to support lazy, dynamic linking in mobile code systems typically leads to architectures that exhibit strong interdependencies between the loader, the verifier, and the linker. To simplify verifier construction and provide improved assurances of verifier integrity, we propose a modular architecture based on the concept of proof linking. This architecture encapsulates the verification process and removes dependencies between the loader, the verifier, and the linker. We also formally model the process of proof linking and establish properties to which correct implementations must conform. As an example, we instantiate our architecture for the problem of Java bytecode verification and assess the correctness of this instantiation. Finally, we briefly discuss alternative mobile code verification architectures enabled by the proof-linking concept.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Security; Verification", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "correctness conditions; dynamic linking; Java; mobile code; modularity; proof linking; safety; verification protocol; virtual machine architecture", subject = "Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Correctness proofs}; Software --- Software Engineering --- Software/Program Verification (D.2.4): {\bf Formal methods}; Software --- Software Engineering --- Requirements/Specifications (D.2.1); Software --- Programming Languages --- Processors (D.3.4): {\bf Run-time environments}", } @Article{Forax:2000:RTP, author = "R{\'e}mi Forax and Gilles Roussel", title = "Recursive Types and Pattern-Matching in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1799", pages = "147--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1799.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1799/17990147.htm; http://link.springer-ny.com/link/service/series/0558/papers/1799/17990147.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fox:2000:CAJ, author = "Joshua Fox", title = "Collaborative Applications and the {Java Shared Data Toolkit}", journal = j-DDJ, volume = "25", number = "2", pages = "32, 34--40", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/jsdt.txt; http://www.ddj.com/ftp/2000/2000_02/jsdt.zip", abstract = "The Java Shared Data Toolkit is designed to help you write distributed collaborative applications so that groups of users can work simultaneously on a common task. Additional resources include jsdt.txt (listings) and jsdt.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Fox:2000:ESIa, author = "Geoffrey Fox", title = "Editorial: Special Issue: {ACM 1999 Java Grande Conference}", journal = j-CPE, volume = "12", number = "6", pages = "341--342", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<341::AID-CPE509>3.0.CO;2-F", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515722/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515722&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Fox:2000:ESIb, author = "Geoffrey Fox", title = "Editorial: Special Issue: {ACM 1999 Java Grande Conference}", journal = j-CPE, volume = "12", number = "7", pages = "493--494", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<493::AID-CPE1509>3.0.CO;2-W", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516216/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516216&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Fox:2000:ESIc, author = "Geoffrey Fox", title = "Editorial: Special Issue: {ACM 1999 Java Grande Conference}", journal = j-CPE, volume = "12", number = "8", pages = "611--612", month = jul, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200007)12:8<611::AID-CPE2509>3.0.CO;2-B", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516225/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516225&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Fox:2000:JQW, author = "Joshua Fox", title = "{Java Q\&A}: So What is {{\tt SO\_KEEPALIVE}}?", journal = j-DDJ, volume = "25", number = "9", pages = "123--126, 128, 130", month = sep, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_09/jqa0900.txt; http://www.ddj.com/ftp/2000/2000_09/jqa0900.zip", abstract = "So what is SO\_KEEPALIVE? It's a socket option that's responsible for killing the socket when the remote side is not available. Joshua presents Keep-Alive strategies and implementations for Java. Additional resources include jqa0900.txt (listings) and jqa0900.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Fuentes:2000:TOM, author = "Lidia Fuentes and Jos{\'e}e M. Troya", title = "Towards an open multimedia service framework", journal = j-COMP-SURV, volume = "32", number = "1es", month = mar, year = "2000", CODEN = "CMSVAN", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jul 26 06:52:17 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Article No. 24", URL = "http://www.acm.org/pubs/citations/journals/surveys/2000-32-1/p24-fuentes/", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "compositional frameworks; distributed systems; Java/Web; multimedia services", subject = "Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Frameworks}; Information Systems --- Information Interfaces and Presentation --- Multimedia Information Systems (H.5.1); Information Systems --- Information Interfaces and Presentation --- Group and Organization Interfaces (H.5.3): {\bf Web-based interaction}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Java}", } @Article{Gamess:2000:PTE, author = "Eric Gamess", title = "{plapackJava}: {Towards} an efficient {Java} interface for high performance parallel linear algebra", journal = j-INFO-PROC-LETT, volume = "75", number = "5", pages = "191--197", day = "31", month = oct, year = "2000", CODEN = "IFPLAT", ISSN = "0020-0190 (print), 1872-6119 (electronic)", ISSN-L = "0020-0190", bibdate = "Thu Oct 12 06:44:40 MDT 2000", bibsource = "http://www.elsevier.com:80/inca/publications/store/5/0/5/6/1/2/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/23/20/64/30/26/abstract.html; http://www.elsevier.nl/gej-ng/10/23/20/64/30/26/article.pdf", acknowledgement = ack-nhfb, fjournal = "Information Processing Letters", journal-URL = "http://www.sciencedirect.com/science/journal/00200190", } @Article{Gaona:2000:RDC, author = "Amparo L{\'o}pez Gaona", title = "The relevance of design in {CS1}", journal = j-SIGCSE, volume = "32", number = "2", pages = "53--55", month = jun, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/355354.355374", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:42 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Most of the papers on the experiences in teaching the first object-oriented programming course are biased towards the selection of the best programming language. Sometimes we argue the pros and cons of particular languages (C, C++, Java). My point is that teaching a programming methodology is the most important element for such a course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Garber:2000:NBC, author = "Lee Garber", title = "News Briefs: Companies Power Up Networking; Magnetic {RAM} Research Reaching Critical Stage; {Micro Java} Is a Platform Under Construction; {Lotus} Offers On-the-Fly Translation", journal = j-COMPUTER, volume = "33", number = "8", pages = "26--28", month = aug, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Oct 30 17:20:20 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r8026.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Garti:2000:OMP, author = "Dror Garti and Shem-Tov Cohen and Amnon Barak and Arie Keren and Ricardo Szmit", title = "Object Mobility for Performance Improvements of Parallel {Java} Applications", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1311--1324", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1655", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1655; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1655/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1655/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Gasperoni:2000:MPJ, author = "Franco Gasperoni and Gary Dismukes", title = "Multilanguage Programming on the {JVM}: The {Ada 95} Benefits", journal = j-SIGADA-LETTERS, volume = "20", number = "4", pages = "3--28", month = dec, year = "2000", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Special Issue: Presentations from SIGAda 2000.", URL = "http://www.acm.org/sigada/ada_letters/dec2000/ada-on-jvm.pdf", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Java Virtual Machine (JVM)", } @Book{Geary:2000:GJV, author = "David Geary", title = "Graphic {Java} 2, Volume 4, {2D API}", publisher = pub-PH, address = pub-PH:adr, edition = "Third", pages = "????", year = "2000", ISBN = "0-13-079668-9", ISBN-13 = "978-0-13-079668-4", LCCN = "????", bibdate = "Tue Feb 20 18:44:33 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Gelderblom:2000:OCS, author = "J. Helene Gelderblom", title = "{OOPtutor}: a {CBL} system for introductory object-oriented programming", journal = j-SIGCSE, volume = "32", number = "2", pages = "35--38", month = jun, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/355354.355368", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:42 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The author developed OOPtutor, a prototype of a system that teaches entry level object-oriented programming in Java. It uses a simple world of dogs to introduce the important object-oriented concepts like objects, classes, methods and inheritance. The prototype was implemented as a set of object-oriented classes that perform general CBL authoring functions. This article gives a brief description of the OOPtutor prototype and its implementation.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gengler:2000:JBM, author = "Barbara Gengler", title = "{JavaScript} ban may happen", journal = j-NETWORK-SECURITY, volume = "2000", number = "1", pages = "4--4", month = jan, year = "2000", CODEN = "NTSCF5", DOI = "https://doi.org/10.1016/S1353-4858(00)86648-9", ISSN = "1353-4858 (print), 1872-9371 (electronic)", ISSN-L = "1353-4858", bibdate = "Mon Dec 4 16:57:49 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/network-security.bib", URL = "http://www.sciencedirect.com/science/article/pii/S1353485800866489", acknowledgement = ack-nhfb, fjournal = "Network Security", journal-URL = "https://www.sciencedirect.com/journal/network-security", } @Article{Gentleman:2000:JD, author = "Robert Gentleman and Ross Ihaka", title = "{Java} and {Dylan}", journal = j-J-COMPUT-GRAPH-STAT, volume = "9", number = "3", pages = "452--??", month = sep, year = "2000", CODEN = "", ISSN = "1061-8600 (print), 1537-2715 (electronic)", ISSN-L = "1061-8600", bibdate = "Wed Apr 18 10:23:03 MDT 2001", bibsource = "http://www.amstat.org/publications/jcgs/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.amstat.org/publications/jcgs/abstracts00/Gentleman.htm", acknowledgement = ack-nhfb, fjournal = "Journal of Computational and Graphical Statistics", journal-URL = "http://www.tandfonline.com/loi/ucgs20", } @Article{Geppert:2000:T, author = "L. Geppert and W. Sweet", title = "Technology 2000", journal = j-IEEE-SPECTRUM, volume = "37", number = "1", pages = "26--31", month = jan, year = "2000", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2000.815435", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Cryptography; Hardware; Home appliances; Internet; Java; NIST; Open source software; Operating systems; Protection", } @Book{Giguere:2000:JME, author = "Eric Giguere", title = "{Java 2} micro edition: professional developer's guide", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxiii + 295", year = "2000", ISBN = "0-471-39065-8 (paperback)", ISBN-13 = "978-0-471-39065-7 (paperback)", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Also available via the World Wide Web (Restricted to NetLibrary subscribers)", series = "Professional developer's guide series", acknowledgement = ack-nhfb, keywords = "embedded computer systems -- programming; Java (computer program language)", } @Book{Gill:2000:JVJ, author = "Dudley W. Gill", title = "{Java} with {Visual J++}", publisher = pub-CRC, address = pub-CRC:adr, pages = "462", year = "2000", ISBN = "0-8493-2048-8", ISBN-13 = "978-0-8493-2048-4", LCCN = "QA76.73.J38 G56 2000", bibdate = "Thu Jan 18 06:38:52 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$69.95", URL = "http://www.crcpress.com/", acknowledgement = ack-nhfb, } @Book{Gilorien:2000:DJ, author = "Gilorien", title = "{DHTML} and {JavaScript}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xx + 1142", year = "2000", ISBN = "0-13-086334-3", ISBN-13 = "978-0-13-086334-8", LCCN = "QA76.76.H94 G55 2000", bibdate = "Wed May 8 07:40:44 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "DHTML (document markup language)", } @Article{Gilreath:2000:BRJ, author = "William F. Gilreath and Benjamin R. Seyfarth", title = "Book Reviews: {{\em Java Distributed Computing}} is solid but not flawless; {{\em Elements of Network Protocol Design}}: Network protocol textbook is an asset", journal = j-IEEE-CONCURR, volume = "8", number = "2", pages = "86--87", month = apr # "\slash " # jun, year = "2000", CODEN = "IECMFX", DOI = "https://doi.org/10.1109/MCC.2000.846199", ISSN = "1092-3063 (print), 1558-0849 (electronic)", ISSN-L = "1092-3063", bibdate = "Tue Jan 16 11:57:08 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/pd/books/pd2000/pdf/p2086.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Concurrency", } @Article{Gilreath:2000:RDP, author = "William Gilreath", title = "Review: {Distributed Programming with Java}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "1", number = "1", year = "2000", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:39:35 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/archives/ds100/ds1bookprint.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Book{Gittleman:2000:OCJ, author = "Art Gittleman", title = "Objects to components with the {Java} platform", publisher = pub-SCOTT-JONES, address = pub-SCOTT-JONES:adr, pages = "xv + 589", year = "2000", ISBN = "1-57676-035-9", ISBN-13 = "978-1-57676-035-2", LCCN = "QA76.73.J38 G583 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Book{Goldstein:2000:HJC, author = "Mitch Goldstein", title = "Hardcore {JFC}: Conquering the {Swing} Architecture", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, pages = "356", year = "2000", ISBN = "0-521-66489-6", ISBN-13 = "978-0-521-66489-9", LCCN = "QA76.73.J38 G59 2001", bibdate = "Sat Apr 20 11:07:50 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$42.95", acknowledgement = ack-nhfb, } @Article{Gontmakher:2000:JCN, author = "Alex Gontmakher and Assaf Schuster", title = "{Java} consistency: nonoperational characterizations for {Java} memory behavior", journal = j-TOCS, volume = "18", number = "4", pages = "333--386", year = "2000", CODEN = "ACSYEC", ISSN = "0734-2071 (print), 1557-7333 (electronic)", ISSN-L = "0734-2071", bibdate = "Wed Jul 18 10:18:45 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tocs/2000-18-4/p333-gontmakher/p333-gontmakher.pdf; http://www.acm.org/pubs/citations/journals/tocs/2000-18-4/p333-gontmakher/", abstract = "The Java Language Specification (JLS) [Gosling et al. 1996] provides an operational definition for the consistency of shared variables. The definition remains unchanged in the JLS 2nd edition, currently under peer review, which relies on a specific abstract machine as its underlying model, is very complicated. Several subsequent works have tried to simplify and formalize it. However, these revised definitions are also operational, and thus have failed to highlight the intuition behind the original specification. In this work we provide a complete nonoperational specification for Java and for the JVM, excluding synchronized operations. We provide a simpler definition, in which we clearly distinguish the consistency model that is promised to the programmer from that which should be implemented in the JVM. This distinction, which was implicit in the original definition, is crucial for building the JVM. We find that the programmer model is strictly weaker than that of the JVM, and precisely define their discrepancy. Moreover, our definition is independent of any specific (or even abstract) machine, and can thus be used to verify JVM implementations and compiler optimizations on any platform. Finally, we show the precise range of consistency relaxations obtainable for the Java memory model when a certain compiler optimization-- called {\em prescient stores\/} in JLS--is applicable.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Computer Systems", generalterms = "Verification", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J774", keywords = "Java memory models; multithreading; nonoperational specification", subject = "Hardware --- Memory Structures --- Performance Analysis and Design Aids** (B.3.3): {\bf Formal models**}", } @Book{Goodwill:2000:PJJ, author = "James Goodwill", title = "Pure {JSP}, {Java} Server pages", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "vii + 320", year = "2000", ISBN = "0-672-31902-0", ISBN-13 = "978-0-672-31902-0", LCCN = "QA76.73.J38 G664 2000", bibdate = "Thu Jan 18 06:03:48 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Edited by Steve Anglin and Tim Ryan.", URL = "http://www.mcp.com/detail.cfm?item=0672319020", acknowledgement = ack-nhfb, } @Misc{Gosling:2000:JLR, author = "James Gosling", title = "{JAVA}: a Language for the Real World", year = "2000", bibdate = "Wed Oct 16 05:17:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Unpublished invited talk at First Workshop on Industrial Experiences with Systems Software (WIESS 2000), October 22, 2000, Paradise Point Resort, San Diego, California, USA", URL = "http://www.usenix.org/publications/library/proceedings/osdi2000/wiess2000/invitedtalks/gosling_html", acknowledgement = ack-nhfb, } @Book{Gosling:2000:JLS, author = "James Gosling and Bill Joy and Guy L. Steele and Gilad Bracha", title = "The {Java} Language Specification", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxv + 505", year = "2000", ISBN = "0-201-31008-2", ISBN-13 = "978-0-201-31008-5", LCCN = "QA76.73.J38 G68 2000", bibdate = "Tue Feb 20 18:39:03 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/unicode.bib", series = "Java series", URL = "http://java.sun.com/people/jag/", abstract = "The book provides complete, accurate, and detailed coverage of the syntax and semantics of the Java programming language. It describes all aspects of the language, including the semantics of all types, statements, and expressions, as well as threads and binary compatibility.", acknowledgement = ack-nhfb, keywords = "java (computer program language)", tableofcontents = "1: Introduction \\ 2: Grammars \\ 3: Lexical Structure \\ 4: Types, Values, and Variables \\ 5: Conversions and Promotions \\ 6: Names \\ 7: Packages \\ 8: Classes \\ 9: Interfaces \\ 10: Arrays \\ 11: Exceptions \\ 12: Execution \\ 13: Binary Compatibility \\ 14: Blocks and Statements \\ 15: Expressions \\ 16: Definite Assignment \\ 17: Threads and Locks \\ 18: Syntax", } @Book{Gosselin:2000:JC, author = "Don Gosselin", title = "{JavaScript}: comprehensive", publisher = pub-COURSE-TECHNOLOGY, address = pub-COURSE-TECHNOLOGY:adr, pages = "xvi + 710 + 46", year = "2000", ISBN = "0-619-01555-1", ISBN-13 = "978-0-619-01555-8", LCCN = "QA76.73.J39 G682 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Web warrior series", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Book{Gottleber:2000:MEH, author = "Timothy T. Gottleber and Timothy N. Trainor", title = "More excellent {HTML} with an introduction to {JavaScript}", publisher = pub-IRWIN-MCGRAW-HILL, address = pub-IRWIN-MCGRAW-HILL:adr, pages = "xxiii + 550", year = "2000", ISBN = "0-07-233745-1, 0-07-233839-3", ISBN-13 = "978-0-07-233745-7, 978-0-07-233839-3", LCCN = "QA76.76.H94G69 2000", bibdate = "Wed May 08 09:01:50 2002", bibsource = "ftp://www.math.utah.edu/pub/tex/bib/sgml.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "Built to HTML 4.0 specifications. Accompanying CD-ROM includes most of the HTML examples and JavaScripts from the text as well as demo versions of different HTML editors and design tools and other useful ancillary tools.", annote2 = "Disc contents: JavaScripts and HTML examples discussed in the book -- Image collections: Arrows -- Backgrounds -- Bullets -- Icons -- Lines -- Hot links to collections of graphical elements on the Web -- Software sampler: HomeSite (HTML editor) -- Cold Fusion (Web application server) -- HotDog Professional Suite 5.5 (HTML editing environment) -- MapEdit (imagemap editor) -- Paint Shop Pro (painting and image editor) -- ScriptBuilder (JavaScript development environment) -- CSE HTML Validator (offline HTML validation program) -- Netscape Communicator 4.6 and Internet Explorer 5.0 (Internet browsers) --lynx (a non-graphical browser) -- WinZip (file compressor) -- CuteFTP (FTP program)", keywords = "HTML (Document markup language); JavaScript (Computer program language)", } @Article{Gourley:2000:BWB, author = "Don Gourley and Wei Wu", title = "Building a {Web}-based {Java} Application Server with {Apache JServ}", journal = j-SYS-ADMIN, volume = "9", number = "2", pages = "59--65", month = feb, year = "2000", CODEN = "SYADE7", ISSN = "1061-2688", bibdate = "Sat Mar 11 17:41:34 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.samag.com/", abstract = "The authors describe how to install and configure JServ to provide system developers in your organization with a full-featured, reliable, and scalable platform for developing Web-based server-side applications.", acknowledgement = ack-nhfb, fjournal = "Sys admin: the journal for UNIX system administrators", } @InProceedings{Govindaraju:2000:RER, author = "Madhusudhan Govindaraju and Aleksander Slominski and Venkatesh Choppella and Randall Bramley and Dennis Gannon", title = "Requirements for and Evaluation of {RMI} Protocols for Scientific Computing", crossref = "ACM:2000:SHP", pages = "76--76", year = "2000", bibdate = "Mon Feb 12 11:57:46 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc2000.org/proceedings/techpapr/papers/pap261.pdf", acknowledgement = ack-nhfb, keywords = "Java Remote Method Invocation (RMI)", } @Article{Green:2000:JC, author = "Marcus Green and David Hecksel", title = "{Java} Certification", journal = j-DDJ, volume = "25", number = "10", pages = "??--??", month = oct, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InCollection{Griesemer:2000:CJH, author = "Robert Griesemer and Srdjan Mitrovic", title = "A Compiler for the {Java HotSpot} Virtual Machine", crossref = "Boszormenyi:2000:SNW", pages = "??--??", year = "2000", bibdate = "Fri Jan 19 06:02:04 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Grissom:2000:PFI, author = "Scott Grissom", title = "A pedagogical framework for introducing {Java I/O} in {CS1}", journal = j-SIGCSE, volume = "32", number = "4", pages = "57--59", month = dec, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/369295.369326", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:45 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The role of Java for teaching CS1 has received considerable attention. A common concern of many educators is that the Java I/O paradigm is too challenging for novice programmers and that significant time must be devoted to the subject. This additional time may take away from the traditional CS1 content. Four strategies for teaching Java I/O in CS1 are reviewed herein. Text-based versus GUI-based applications represent the two extremes. Advantages and disadvantages are provided for each approach. A description of preliminary work to develop a Java package that makes implementing GUI applications simple is given, with the objective of preparing students for the eventual transition to the Java AWT.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Gschwind:2000:BTA, author = "Michael Gschwind and Kemal Ebcio{\u{g}}lu and Erik Altman and Sumedh Sathaye", booktitle = "Conference proceedings of the 2000 International Conference on Supercomputing: Santa Fe, New Mexico, May 8--11, 2000 [ICS '00]", title = "Binary translation and architecture convergence issues for {IBM System\slash 390}", publisher = pub-ACM, address = pub-ACM:adr, bookpages = "xi + 509", pages = "336--347", year = "2000", DOI = "https://doi.org/10.1145.335264", ISBN = "1-58113-270-0", ISBN-13 = "978-1-58113-270-0", LCCN = "????", bibdate = "Fri Jul 27 05:22:06 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/supercomputing/335231/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://delivery.acm.org/10.1145/340000/335264/p336-gschwind.pdf", acknowledgement = ack-nhfb, keywords = "AS/400; ESA/390; IA-64; Java Virtual Machine (JVM); RS/6000", } @Article{Gsoedl:2000:JQC, author = "Jacob Gsoedl", title = "{Java Q\&A}: Can You Implement {COM} Components Using {Java}?", journal = j-DDJ, volume = "25", number = "6", pages = "119--120, 122, 124, 126", month = jun, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:15 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_06/jqa600.txt", abstract = "Can you implement COM components using Java? Yes, and Jacob shows you how. Additional resources include jqa600.txt (listings)", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Gu:2000:EHP, author = "W. Gu and N. A. Burns and M. T. Collins and W. Y. P. Wong", title = "The evolution of a high-performing {Java} virtual machine", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "135--150", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/gu.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Gupta:2000:OJP, author = "Manish Gupta and Jong-Deok Choi and Michael Hind", title = "Optimizing {Java} Programs in the Presence of Exceptions", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "422--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500422.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500422.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Gupta:2000:TSH, author = "Manish Gupta and Samuel P. Midkiff and Jose E. Moreira", title = "Tutorial {S4}: High Performance Numerical Computing in {Java}: Compiler, Language, and Application Solutions", crossref = "ACM:2000:SHP", pages = "13--13", year = "2000", bibdate = "Sat Feb 10 14:28:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Gurevich:2000:IJC, author = "Yuri Gurevich and Wolfram Schulte and Charles Wallace", title = "Investigating {Java} Concurrency Using Abstract State Machines", journal = j-LECT-NOTES-COMP-SCI, volume = "1912", pages = "151--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:48 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1912.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1912/19120151.htm; http://link.springer-ny.com/link/service/series/0558/papers/1912/19120151.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Gutz:2000:SSU, author = "Steven Gutz", title = "Up to Speed with Swing: User Interfaces with {Java} Foundation Classes", publisher = pub-MANNING, address = pub-MANNING:adr, edition = "Second", pages = "xxxvi + 536", year = "2000", ISBN = "1-884777-75-9", ISBN-13 = "978-1-884777-75-2", LCCN = "QA76.9.U83 G88 2000", bibdate = "Mon Dec 06 18:27:06 1999", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.manning.com/gutz2", acknowledgement = ack-nhfb, } @Article{Hadharan:2000:EEP, author = "R. Hadharan and W. K. Ehrlich and D. Cura and P. K. Reeser", title = "End to End Performance Modeling of {Web} Server Architectures", journal = j-SIGMETRICS, volume = "28", number = "2", pages = "57--63", month = sep, year = "2000", CODEN = "????", DOI = "https://doi.org/10.1145/362883.581258", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:33:31 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Web server performance in a distributed Object-Oriented (OO) environment is a complex interplay between a variety of factors (e.g., hardware platform, threading model, object scope model, server operating system, network bandwidth, disk file size, caching). In this paper, we present a model-based approach to Web Server performance evaluation in terms of an end-to-end queueing model implemented in a simulation tool. We have applied this model to Active Server Page (ASP) and Common Object Model (COM) technology in Microsoft's Internet Information Server and to the Java Server Page (JSP) and JavaBean technology in both IIS and Netscape Enterprise Server (NES). Our results indicate that for the ASP Script Engine, performance predictions from the simulation model matched the performance observed in a test environment. However, for the JSP Script Engine, the model predicted higher throughput than laboratory test results at high load. This result suggests that Web Server performance can be severely limited by a software bottleneck that causes requests to be serialized. This may cause a request to wait for some resource (i.e., a lock) as opposed to consuming CPU or memory. Implications of these results for Web Server performance in general are discussed", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Article{Hagan:2000:UBT, author = "Dianne Hagan", title = "Using {BlueJ} to teach {Java} (poster session)", journal = j-SIGCSE, volume = "32", number = "3", pages = "188--189", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343216", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Haggar:2000:PJP, author = "Peter Haggar", title = "Practical {Java}: programming language guide", publisher = pub-AW, address = pub-AW:adr, pages = "xxx + 279", year = "2000", ISBN = "0-201-61646-7", ISBN-13 = "978-0-201-61646-0", LCCN = "QA76.73.J38 H34 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Addison-Wesley professional computing series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Hall:2000:CSJ, author = "Marty Hall", title = "Core Servlets and {JavaServer} Pages", publisher = pub-PH, address = pub-PH:adr, pages = "xxvii + 575", year = "2000", ISBN = "0-13-089340-4", ISBN-13 = "978-0-13-089340-6", LCCN = "QA76.73.J38 H345 2000", bibdate = "Thu Jan 18 06:04:22 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$42.99", URL = "http://www.coreservlets.com/; http://www.phptr.com/ptrbooks/ptr_0130893404.html", acknowledgement = ack-nhfb, } @Book{Halter:2000:EJP, author = "Steven L. Halter and Steven J. Munroe", title = "Enterprise {Java} Performance", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxvii + 402", year = "2000", ISBN = "0-13-017296-0", ISBN-13 = "978-0-13-017296-9", LCCN = "QA76.73.J38 H347 2001", bibdate = "Fri Apr 13 15:33:58 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.java-zone.com/free/bookrevview.asp?content_id=482; http://www.phptr.com/ptrbooks/ptr_0130172960.html; http://www.sun.com/books/catalog/halter/", acknowledgement = ack-nhfb, } @Book{Hancock:2000:SCP, editor = "Gareth Hancock and {Syngress Media, Inc.}", title = "{Sun} Certification Programmer for {Java 2} Study Guide, Exam 310-025", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xliv + 625", year = "2000", ISBN = "0-07-212370-2, 0-07-212372-9 (set)", ISBN-13 = "978-0-07-212370-8, 978-0-07-212372-2 (set)", LCCN = "QA76.3 .S86 2000", bibdate = "Wed Feb 21 05:53:36 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44", acknowledgement = ack-nhfb, } @Book{Hansen:2000:KTL, author = "Ole Kristian Hansen and Fredrik Johnsen and Inger Helene Lund", title = "Klient\ldots{} tjener l{\o}sning p{\aa} web, basert p{\aa} {Apache} og {MySQL} ved hjelp av {Java} server programmering: Support system", volume = "222", publisher = "HHE", address = "Rena, Norway", pages = "94--??", year = "2000", LCCN = "????", bibdate = "Wed Jun 25 17:33:07 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", series = "Prosjektarbeid / H{\o}gskolen i Hedmark", acknowledgement = ack-nhfb, } @Article{Hardin:2000:RTS, author = "David Hardin", title = "The Real-Time Specification for {Java}", journal = j-DDJ, volume = "25", number = "2", pages = "78, 80--82, 84", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/rtjava.txt", abstract = "The Real-Time Specification for Java promises to bring the benefits of Java to real-time developers. David examines the requirements and design decisions that led to the Real-Time Specification for Java, and provides practical examples of its use. Additional resources include rtjava.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Hardy:2000:JAG, author = "Vincent J. Hardy", title = "{Java 2D API} graphics", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xli + 509", year = "2000", ISBN = "0-13-014266-2", ISBN-13 = "978-0-13-014266-5", LCCN = "T385 .H334 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", series = "Sun Microsystems Press Java series", URL = "http://www.sun.com/books/catalog/hardy/", acknowledgement = ack-nhfb, keywords = "computer graphics; Java (computer program language)", } @Article{HarEl:2000:JCB, author = "Zvi Har'El and Zvi Rosberg", title = "{Java} Class Broker --- {A} Seamless Bridge from Local to Distributed Programming", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1223--1237", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1651", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1651; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1651/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1651/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Book{Harold:2000:JNP, author = "Elliotte Rusty Harold", title = "{Java} network programming", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxvi + 731", year = "2000", ISBN = "1-56592-870-9", ISBN-13 = "978-1-56592-870-1", LCCN = "QA76.625 .H367 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "computer networks; Java (computer program language)", } @Article{Harris:2000:LOO, author = "Jacob Harris and Vivek Sarkar", title = "Lightweight Object-Oriented Shared Variables for Cluster Computing in {Java}", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1238--1259", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1652", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1652; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1652/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1652/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Book{Harrison:2000:DWP, author = "Graham (Graham Paul) Harrison", title = "Dynamic {Web} programming: using {Java}, {JavaScript}, and {Informix}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xviii + 995", year = "2000", ISBN = "0-13-086184-7", ISBN-13 = "978-0-13-086184-9", LCCN = "QA76.625.H37 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Informix dynamic server; Internet programming; Java (computer program language); JavaScript (computer program language)", } @Article{Harrison:2000:MUD, author = "William Harrison and Charles Barton and Mukund Raghavachari", title = "Mapping {UML} designs to {Java}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "178--187", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p178-harrison/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Hartley:2000:AYM, author = "Stephen J. Hartley", title = "``{Alfonse}, you have a message!''", journal = j-SIGCSE, volume = "32", number = "1", pages = "60--64", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331813", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Synchronization of multiple threads in a Java program using the built-in features of the language has serious pitfalls for the programmer, particularly if a thread is interrupted while waiting inside a monitor. These concerns have lead to a movement to avoid Java monitors altogether and use message passing instead. This paper visits the field of concurrent programming to show that replacing all Java monitors with message passing is an overreaction to these problems.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hartman:2000:EBC, author = "John Hartman and Larry Peterson and Andy Bavier and Peter Bigot and Patrick Bridges and Brady Montz and Rob Piltz and Todd Proebsting and Oliver Spatscheck", title = "Experiences building a communication-oriented {JavaOS}", journal = j-SPE, volume = "30", number = "10", pages = "1107--1126", month = aug, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/1097-024X(200008)30:10<1107::AID-SPE331>3.0.CO;2-0", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:46:07 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72510350/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72510350&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Hassler:2000:OFA, author = "Vesna Hassler and Oliver Fodor", title = "{OpenCard Framework} Application Development", journal = j-DDJ, volume = "25", number = "2", pages = "70, 72, 74--76", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/ocfjava.txt; http://www.ddj.com/ftp/2000/2000_02/ocfjava.zip", abstract = "The Personal Computer/Smart Card Interface (PC/SC) and OpenCard Framework emphasize the interoperability of smartcards and card terminals, and the integration of those card terminals into Microsoft Windows. Additional resources include ocfjava.txt (listings) and ocfjava.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Havelund:2000:MCJ, author = "Klaus Havelund and Thomas Pressburger", title = "Model checking {JAVA} programs using {JAVA PathFinder}", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "2", number = "4", pages = "366--381", month = mar, year = "2000", CODEN = "????", DOI = "https://doi.org/10.1007/s100090050043", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Nov 23 15:01:40 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Article{Hendrix:2000:DVI, author = "T. Dean Hendrix and James H. {Cross II} and Saeed Maghsoodloo and Matthew L. McKinney", title = "Do visualizations improve program comprehensibility? experiments with control structure diagrams for {Java}", journal = j-SIGCSE, volume = "32", number = "1", pages = "382--386", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331890", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Recently, the first in a series of planned comprehension experiments was performed to measure the effect of the control structure diagram (CSD) on program comprehensibility. Upper-division computer science students were asked to respond to questions regarding the structure and execution of a source code module written in Java. Statistical analysis of the data collected from this experiment revealed that the CSD was highly significant in enhancing the subjects' performance in this program comprehension task. The results of this initial experiment along with the planned follow-on experiments promise to shed light on fundamental questions regarding the effect of software visualizations on program comprehensibility.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hennen:2000:OJL, author = "Dennis S. Hennen and Suresh Ramachandran and Sandra A. Mamrak", title = "The {Object-JavaScript} language", journal = j-SPE, volume = "30", number = "14", pages = "1571--1585", day = "25", month = nov, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/1097-024X(20001125)30:14<1571::AID-SPE351>3.0.CO;2-N", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:46:12 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/73001731/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=73001731&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Henry:2000:JQH, author = "Ethan Henry and Ed Lycklama", title = "{Java Q\&A}: How Do You Plug {Java} Memory Leaks?", journal = j-DDJ, volume = "25", number = "2", pages = "115--119, 121", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/jqa220.txt", abstract = "Our authors show what you can do when Java exhibits classic memory leak behavior -- unbounded memory growth leading to poor performance and eventually crashing. Additional resources include jqa220.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Herlihy:2000:TTD, author = "Maurice Herlihy and Michael P. Warres", title = "A tale of two directories: implementing distributed shared objects in {Java}", journal = j-CPE, volume = "12", number = "7", pages = "555--572", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<555::AID-CPE499>3.0.CO;2-O", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516215/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516215&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Heydon:2000:PLJ, author = "Allan Heydon and Marc Najork", title = "Performance limitations of the {Java} core libraries", journal = j-CPE, volume = "12", number = "6", pages = "363--373", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<363::AID-CPE479>3.0.CO;2-3", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515723/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515723&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Hirsch:2000:CJI, author = "Michael Hirsch", title = "Comparing {Java} Implementations for {Linux}", journal = j-LINUX-J, volume = "76", pages = "??--??", month = aug, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:13 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue76/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Book{Holub:2000:CDJ, author = "Allen I. Holub", title = "Compiler Design in {Java}", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "????", year = "2000", ISBN = "1-55860-560-6", ISBN-13 = "978-1-55860-560-2", LCCN = "????", bibdate = "Tue Feb 20 18:26:27 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$40", acknowledgement = ack-nhfb, } @Book{Holub:2000:TJT, author = "Allen Holub", title = "Taming {Java} Threads", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "x + 300", year = "2000", ISBN = "1-893115-10-0", ISBN-13 = "978-1-893115-10-1", LCCN = "QA76.73.J38 H635 2000", bibdate = "Thu Jan 18 06:04:44 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www1.fatbrain.com/asp/bookinfo/bookinfo.asp?theisbn=1893115100&from=NCN454", price = "US\$34.95", acknowledgement = ack-nhfb, keywords = "Java (computer program language); threads (computer programs)", } @Book{Holzner:2000:JBB, author = "Steve Holzner", title = "{Java} Black Book", publisher = pub-CORIOLIS, address = pub-CORIOLIS:adr, pages = "xxxi + 1143", year = "2000", ISBN = "1-57610-531-8", ISBN-13 = "978-1-57610-531-3", LCCN = "QA76.73.J38 H644 2000", bibdate = "Wed Feb 21 05:59:34 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Horstmann:2000:CCV, author = "Cay S. Horstmann", title = "Counterpoint: {Cobol} versus {Java}", journal = j-IEEE-SOFTWARE, volume = "17", number = "2", pages = "23, 25", month = mar # "\slash " # apr, year = "2000", CODEN = "IESOEG", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Tue Apr 25 08:50:56 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/so/books/so2000/pdf/s2022.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Book{Horstmann:2000:CJV, author = "Cay Horstmann and Gary Cornell", title = "Core {Java} 2, Volume {I}: Fundamentals", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Fifth", pages = "750 (est.)", year = "2000", ISBN = "0-13-089468-0", ISBN-13 = "978-0-13-089468-7", LCCN = "QA76.73.J38 H6753 2001", bibdate = "Thu Dec 14 13:48:13 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130894680.html", acknowledgement = ack-nhfb, } @Article{Horstmann:2000:PCD, author = "Cay S. Horstmann", title = "Counterpoint: {Cobol} versus {Java}", journal = j-IEEE-SOFTWARE, volume = "17", number = "2", pages = "23, 25", month = mar # "\slash " # apr, year = "2000", CODEN = "IESOEG", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Tue Apr 25 08:50:56 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/so/books/so2000/pdf/s2022.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Horwitz:2000:DRT, author = "Susan Horwitz", title = "Debugging via run-time type checking", journal = j-SIGSOFT, volume = "25", number = "1", pages = "58", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340960", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Java programmers have the security of knowing that errors like out-of-bounds array indexes or attempts to dereference a null pointer will be detected and reported at run time. C and C++ programmers count on tools like Purify to achieve a similar level of confidence. The run-time checks provided by Purify have proved to be extremely useful to programmers in debugging their programs. Java also provides security via its strong type system. For example: * There are no union types in Java, so it is not possible for a program to write into a field of one type and then access that value via a field of a different type. * Only very restricted kinds of casting are allowed; for example, it is not possible to treat a pointer as if it were an integer or vice versa. * When an object is down-cast to a subtype, a run-time check will be performed to ensure that the actual type of the object is consistent with the cast. However, tools like Purify do not provide similar checks for C/C++ programs. This research involves the design and implementation of a tool to provide new kinds of run-time checks based on type information. That is, the goal of the tool is to help C/C++ programmers find errors in their programs that manifest themselves as bad run-time types, in the same way that Purify helps programmers find errors in their programs that manifest themselves as bad run-time memory accesses. The basic idea is to associate a run-time type with every piece of data. Whenever data is used by some operation, a check is performed to ensure that its run-time type is consistent with the type expected by the operation. For example, when a pointer is dereferenced, its run-time type must be ``pointer'' (not ``int'', ``float'', ``uninitialized'', etc). When an integer multiplication is performed, the operands' run-time types must be ``int'' (not ``pointer'', ``float'', ``uninitialized'', etc).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hosny:2000:IJB, author = "H. Hosny and O. Khaled and M. E. Fathalla", title = "{ILE}: a {Java}-based environment for {CS} courses", journal = j-SIGCSE, volume = "32", number = "3", pages = "152--155", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343152", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper provides an overview of the Interactive Lab Environment (ILE) project and a report on its current status and future directions. ILE is the framework of a customized interactive lab environment for computing concepts and courseware that we developed for our department using Java. In essence ILE is a well-managed, networked set of resources that offers its users a collection of tools. The most significant of these tools are the flexible routes through an interactive learning environment combining the presentation of course information and notes, executable examples of learning materials, visual tools for presenting new concepts that are otherwise hard to visualize, and a quick means of communication within the academic unit. In addition to the ILE framework itself and a few course material demos, two interactive components were developed and implemented thus far, both of which are visual tools but with differing degrees of abstraction and disclosure.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Houlding:2000:PSC, author = "David Houlding", title = "Publish and Subscribe With {CORBA Web} Events", journal = j-DDJ, volume = "25", number = "7", pages = "88, 90--93", month = jul, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:16 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_07/pscorba.txt; http://www.ddj.com/ftp/2000/2000_07/pscorba.zip", abstract = "David examines one approach to delivering publish/subscribe capabilities for web-enabled distributed object systems based on JavaScript clients and CORBA servers. Additional resources include pscorba.txt (listings) and pscorba.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Huisman:2000:JPV, author = "Marieke Huisman and Bart Jacobs", title = "{Java} Program Verification via a {Hoare} Logic with Abrupt Termination", journal = j-LECT-NOTES-COMP-SCI, volume = "1783", pages = "284--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:14 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1783.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1783/17830284.htm; http://link.springer-ny.com/link/service/series/0558/papers/1783/17830284.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Hunt:2000:UPP, author = "John Hunt", title = "The unified process for practitioners: object-oriented design, {UML} and {Java}", publisher = pub-SV, address = pub-SV:adr, pages = "xiii + 280", year = "2000", ISBN = "1-85233-275-1", ISBN-13 = "978-1-85233-275-4", LCCN = "QA76.9.O35 H86 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Practitioner series. ISSN: 1439-9245", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented methods (computer science); UML (computer science)", } @Book{Hyde:2000:JTP, author = "Paul Hyde", title = "{Java} thread programming", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "iv + 510", year = "2000", ISBN = "0-672-31585-8", ISBN-13 = "978-0-672-31585-5", LCCN = "QA76.73.J38 H93 1999", bibdate = "Wed Feb 21 06:02:14 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Ishizaki:2000:DIE, author = "Kazuaki Ishizaki and Motohiro Kawahito and Toshiaki Yasue and Mikio Takeuchi and Takeshi Ogasawara and Toshio Suganuma and Tamiya Onodera and Hideaki Komatsu and Toshio Nakatani", title = "Design, implementation, and evaluation of optimizations in a {Java$^{TM}$ Just-In-Time} compiler", journal = j-CPE, volume = "12", number = "6", pages = "457--475", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<457::AID-CPE485>3.0.CO;2-0", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515728/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515728&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Ishizaki:2000:SDT, author = "Kazuaki Ishizaki and Motohiro Kawahito and Toshiaki Yasue and Hideaki Komatsu and Toshio Nakatani", title = "A study of devirtualization techniques for a {Java$^{TM}$} {Just-In-Time} compiler", journal = j-SIGPLAN, volume = "35", number = "10", pages = "294--310", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p294-ishizaki/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Izatt:2000:ATE, author = "Matthew Izatt and Patrick Chan and Tim Brecht", title = "Ajents: towards an environment for parallel, distributed and mobile {Java} applications", journal = j-CPE, volume = "12", number = "8", pages = "667--685", month = jul, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200007)12:8<667::AID-CPE504>3.0.CO;2-U", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516221/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516221&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Jacobs:2000:MBJ, author = "Bart Jacobs and Erik Poll", title = "A Monad for Basic {Java} Semantics", journal = j-LECT-NOTES-COMP-SCI, volume = "1816", pages = "150--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:32 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1816.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1816/18160150.htm; http://link.springer-ny.com/link/service/series/0558/papers/1816/18160150.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jaen-Martinez:2000:JME, author = "Javier Jaen-Martinez", title = "The {Java Management Extensions} ({JMX}): Is Your Cluster Ready for Evolution?", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1341--1353", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1657", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1657; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1657/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1657/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Jarc:2000:ABI, author = "Duane J. Jarc and Michael B. Feldman and Rachelle S. Heller", title = "Assessing the benefits of interactive prediction using {Web}-based algorithm animation courseware", journal = j-SIGCSE, volume = "32", number = "1", pages = "377--381", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331889", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This study used educational software-courseware-that contained algorithm animations and data structure visualizations that were implemented with the programming language Java, and were embedded in a collection of World Wide Web pages. The objective of this study was to determine whether the interactive prediction facility provided by this courseware produced a significant learning advantage. Two experiments were conducted. The results indicated that the students who used the interactive version of the courseware spent significantly more time using it than those who used the noninteractive version. Students who used the interactive version scored better on several of the questions that tested the more difficult lessons, but performed more poorly overall. None of the differences were statistically significant.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Jaworski:2000:JSH, author = "Jamie Jaworski and Paul J. Perrone and Venkata S. R. R. Chaganti", title = "{Java} security handbook", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xiv + 534", year = "2000", ISBN = "0-672-31602-1", ISBN-13 = "978-0-672-31602-9", LCCN = "QA76.9.A25 J395 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Also available via the Internet", acknowledgement = ack-nhfb, keywords = "computer security; Java (computer program language)", } @Article{Jennings:2000:JQC, author = "Mike Jennings", title = "{Java Q\&A}: Can You Write {NT} Services in {Java}?", journal = j-DDJ, volume = "25", number = "3", pages = "113--116, 118", month = mar, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:14 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_03/jqa300.txt; http://www.ddj.com/ftp/2000/2000_03/jqa300.zip", abstract = "A service in Windows NT (or ``daemon'' in UNIX parlance) is a program that runs in the background to do a specific task. Can you write NT services in Java? Sure, and Mike shows you how. Additional resources include jqa300.txt (listings) and jqa300.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Jennings:2000:JQH, author = "Mike Jennings", title = "{Java Q\&A}: How Do {I} Establish a Net Connection?", journal = j-DDJ, volume = "25", number = "11", pages = "141--142, 144--147", month = nov, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:25 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_11/jqa0011.txt; http://www.ddj.com/ftp/2000/2000_11/jqa0011.zip", abstract = "How can you establish a network connection using Java? Mike shows how. Additional resources include jqa0011.txt (listings) and jqa0011.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Jia:2000:OOS, author = "Xiaoping Jia", title = "Object-oriented software development using {Java}: principles, patterns, and frameworks", publisher = pub-AW, address = pub-AW:adr, pages = "xvi + 507", year = "2000", ISBN = "0-201-35084-X", ISBN-13 = "978-0-201-35084-5", LCCN = "QA76.64.J53 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language); object-oriented programming (computer science)", } @Article{Johnson:2000:DSC, author = "Steve Johnson", title = "A Dynamic Select Component for {JavaScript}", journal = j-DDJ, volume = "25", number = "1", pages = "36, 38--42", month = jan, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_01/dselect.txt; http://www.ddj.com/ftp/2000/2000_01/dselect.zip", abstract = "Designing a GUI component in JavaScript is different than developing a custom widget in more traditional object-oriented environments. Steve shows you how to do it. Additional resources include dselect.txt (listings) and dselect.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Johnson:2000:SFP, author = "Verlyn Johnson", title = "The {San} {Francisco} project: business process components and infrastructure", journal = j-COMP-SURV, volume = "32", number = "1es", month = mar, year = "2000", CODEN = "CMSVAN", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jul 26 06:52:17 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Article No. 25", URL = "http://www.acm.org/pubs/citations/journals/surveys/2000-32-1/p25-johnson/", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "application domain; business process components; design patterns; distributed object infrastructure; frameworks; Java; object oriented application development", subject = "Software --- Software Engineering (D.2); Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Frameworks}; Software --- Software Engineering --- Reusable Software (D.2.13); Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Java}", } @Article{Jones:2000:AJC, author = "Joel Jones and Samuel Kamin", title = "Annotating {Java} class files with virtual registers for performance", journal = j-CPE, volume = "12", number = "6", pages = "389--406", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<389::AID-CPE481>3.0.CO;2-6", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515727/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515727&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Jubin:2000:EJE, author = "Henri Jubin and J{\"u}rgen Friedrichs and {the Jalape{\~n}o Team}", title = "Enterprise {JavaBeans} by Example", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xvii + 223", year = "2000", ISBN = "0-13-022475-8", ISBN-13 = "978-0-13-022475-0", LCCN = "QA76.73.J38 J82 2000", bibdate = "Wed Feb 21 06:07:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130224758.html", acknowledgement = ack-nhfb, } @Article{Juric:2000:JDO, author = "Matjaz B. Juric and Ivan Rozman and Simon Nash", title = "{Java 2} Distributed Object Middleware Performance Analysis and Optimization", journal = j-SIGPLAN, volume = "35", number = "8", pages = "31--40", month = aug, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:19 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Kafura:2000:OOS, author = "Dennis Kafura", title = "Object-Oriented Software Design and Construction with {Java}", publisher = pub-PH, address = pub-PH:adr, pages = "xv + 656", year = "2000", ISBN = "0-13-011264-X", ISBN-13 = "978-0-13-011264-4", LCCN = "QA76.64. K35 2000", bibdate = "Wed Apr 26 17:18:44 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.00", URL = "http://www.phptr.com/ptrbooks/esm_013011264X.html", acknowledgement = ack-nhfb, } @Book{Kassem:2000:DEA, author = "Nicholas Kassem and {The Enterprise Team}", title = "Designing Enterprise applications with the {Java 2} Platform", publisher = pub-AW, address = pub-AW:adr, pages = "xxi + 341", year = "2000", ISBN = "0-201-70277-0", ISBN-13 = "978-0-201-70277-4", LCCN = "QA76.76.A65 K37 2000", bibdate = "Wed Dec 06 07:11:02 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$35.95", acknowledgement = ack-nhfb, xxtitle = "Designing Enterprise Applications with the {Java 2 Enterprise Edition}", } @Article{Kautz:2000:LLI, author = "Frederick Kautz and Dimitrios Souflis and Robert Carbonari and DDJ and Al Gettier and Tina Femia and Andrew D. Todd and Anonymous and Alan Horn and Anonymous and Brad Clawsie and Samuel Pearlman", title = "Letters: The {S} Language; {IP} Security; {Pnuts} Pointer; Flyby; Worker Shortage?; Design by Interface", journal = j-DDJ, volume = "25", number = "4", pages = "10, 12", month = apr, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:14 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See \cite{Stevens:2000:CPP}.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Kawahito:2000:ENP, author = "Motohiro Kawahito and Hideaki Komatsu and Toshio Nakatani", title = "Effective Null Pointer Check Elimination Utilizing Hardware Trap", journal = j-SIGPLAN, volume = "35", number = "11", pages = "139--149", month = nov, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:19 MST 2003", bibsource = "http://foothill.lcs.mit.edu/asplos2k/program.html; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "IBM Java Virtual Machine (JVM)", } @Article{Kazi:2000:JCS, author = "I. H. Kazi and D. P. Jose and B. Ben-Hamida and C. J. Hescott and C. Kwok and J. A. Konstan and D. J. Lilja and P.-C Yew", title = "{JaViz}: a client\slash server {Java} profiling tool", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "96--117", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/kazi.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Kazi:2000:TOH, author = "Iffat H. Kazi and Howard H. Chen and Berdenia Stanley and David J. Lilja", title = "Techniques for obtaining high performance in {Java} programs", journal = j-COMP-SURV, volume = "32", number = "3", pages = "213--240", year = "2000", CODEN = "CMSVAN", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jul 26 06:52:17 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/surveys/2000-32-3/p213-kazi/p213-kazi.pdf; http://www.acm.org/pubs/citations/journals/surveys/2000-32-3/p213-kazi/", abstract = "This survey describes research directions in techniques to improve the performance of programs written in the Java programming language. The standard technique for Java execution is interpretation, which provides for extensive portability of programs. A Java interpreter dynamically executes Java bytecodes, which comprise the instruction set of the Java Virtual Machine (JVM). Execution time performance of Java programs can be improved through compilation, possibly at the expense of portability. Various types of Java compilers have been proposed, including Just-In-Time (JIT) compilers that compile bytecode into native processor instructions on the fly; direct compilers that directly translate the Java source code into the target processor's native language; and bytecode-to-source translators that generate either native code or an intermediate language, such as C, from the bytecodes. Additional techniques, including bytecode optimization, dynamic compilation, and executing Java programs in parallel, attempt to improve Java run-time performance while maintaining Java's portability. Another alternative for executing Java programs is a Java processor that implements the JVM directly in hardware. In this survey, we discuss the basis features, and the advantages and disadvantages, of the various Java execution techniques. We also discuss the various Java benchmarks that are being used by the Java community for performance evaluation of the different techniques. Finally, we conclude with a comparison of the performance of the alternative Java execution techniques based on reported results.", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", generalterms = "Languages; Performance", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "bytecode-to-source translators; direct compilers; dynamic compilation; interpreters; Java; Java virtual machine; just-in-time compilers", subject = "General Literature --- Introductory and Survey (A.1); Computer Systems Organization --- Performance of Systems (C.4); Software --- Programming Languages (D.3)", } @Article{Kim:2000:JBO, author = "Austin Kim and Morris Chang", title = "{Java} Bytecode Optimization with Advanced Instruction Folding Mechanism", journal = j-LECT-NOTES-COMP-SCI, volume = "1940", pages = "268--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:17:15 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1940.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1940/19400268.htm; http://link.springer-ny.com/link/service/series/0558/papers/1940/19400268.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Kim:2000:MSB, author = "Jin-Soo Kim and Yarsun Hsu", title = "Memory system behavior of {Java} programs: methodology and analysis", crossref = "ACM:2000:PAS", year = "2000", DOI = "https://doi.org/10.1145/339331.339422", ISSN = "0163-5999 (print), 1557-9484 (electronic)", bibdate = "Tue Oct 24 09:57:49 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper studies the memory system behavior of Java programs by analyzing memory reference traces of several SPECjvm98 applications running with a Just-In-Time (JIT) compiler. Trace information is collected by an exception-based tracing tool called JTRACE, without any instrumentation to the Java programs or the JIT compiler.First, we find that the overall cache miss ratio is increased due to garbage collection, which suffers from higher cache misses compared to the application. We also note that going beyond 2-way cache associativity improves the cache miss ratio marginally. Second, we observe that Java programs generate a substantial amount of short-lived objects. However, the size of frequently-referenced long-lived objects is more important to the cache performance, because it tends to determine the application's working set size. Finally, we note that the default heap configuration which starts from a small initial heap size is very inefficient since it invokes a garbage collector frequently. Although the direct costs of garbage collection decrease as we increase the available heap size, there exists an optimal heap size which minimizes the total execution time due to the interaction with the virtual memory performance.", acknowledgement = ack-nhfb, } @Book{King:2000:JP, author = "K. N. (Kim N.) King", title = "{Java} Programming", publisher = pub-NORTON, address = pub-NORTON:adr, pages = "xxiii + 788", year = "2000", ISBN = "0-393-97437-5", ISBN-13 = "978-0-393-97437-9", LCCN = "QA76.73.J38 K56 2000", bibdate = "Wed Feb 21 06:11:16 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$40", acknowledgement = ack-nhfb, } @Article{Kistler:2000:ADM, author = "Thomas Kistler and Michael Franz", title = "Automated data-member layout of heap objects to improve memory-hierarchy performance", journal = j-TOPLAS, volume = "22", number = "3", pages = "490--505", year = "2000", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Apr 17 10:05:24 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/toplas/2000-22-3/p490-kistler/p490-kistler.pdf; http://www.acm.org/pubs/citations/journals/toplas/2000-22-3/p490-kistler/", abstract = "We present and evaluate a simple, yet efficient optimization technique that improves memory-hierarchy performance for pointer-centric applications by up to 24\% and reduces cache misses by up to 35\%. This is achieved by selecting an improved ordering for the data members of pointer-based data structures. Our optimization is applicable to all type-safe programming languages that completely abstract from physical storage layout; examples of such languages are Java and Oberon. Our technique does not involve programmers in the optimization process, but runs fully automatically, guided by dynamic profiling information that captures which paths through the program are taken with that frequency. The algorithm first strives to cluster data members that are accessed closely after one another onto the same cache line, increasing spatial locality. Then, the data members that have been mapped to a particular cache line are ordered to minimize load latency in case of a cache miss.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", generalterms = "Algorithms; Languages; Performance", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "dynamic data structures; dynamic optimization; memory-hierarchy optimization", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Optimization}; Software --- Programming Languages --- Processors (D.3.4): {\bf Run-time environments}", } @Article{Koch:2000:AFG, author = "Michael Koch and J{\"u}rgen Koch", title = "Application of frameworks in groupware --- the {Iris} group editor environment", journal = j-COMP-SURV, volume = "32", number = "1es", month = mar, year = "2000", CODEN = "CMSVAN", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jul 26 06:52:17 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/journals/surveys/2000-32-1/p28-koch/", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", generalterms = "Design; Human Factors; Languages", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "group editors; Iris; Java", subject = "Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Frameworks}; Information Systems --- Information Systems Applications --- Office Automation (H.4.1): {\bf Groupware}; Software --- Software Engineering --- Design Tools and Techniques (D.2.2): {\bf IRIS}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Java}", } @Article{Kolling:2000:OFJ, author = "Michael K{\"o}lling and John Rosenberg", title = "Objects first with {Java} and {BlueJ} (seminar session)", journal = j-SIGCSE, volume = "32", number = "1", pages = "429", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331912", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Object-oriented languages have been taught for some time at universities. The most common approach has been to teach those constructs required for imperative programming first and to introduce the notion of classes and objects somewhat later in the course. More recently, many educators have been promoting the notion of teaching about classes and objects first. This helps students to adopt the object-oriented paradigm at an early stage and encourages them to focus on the application structure before beginning coding. Most new textbooks have followed such an approach. While this method has clear advantages, it is not easy to realise in practice. This is partly a result of the languages used for teaching. However, we would argue that the major difficulty comes from the lack of program development environments and tools which themselves fully embrace the object-oriented paradigm. The use of Java as the language for teaching addresses some of the problems. Java with its clean support for the object-oriented paradigm is now widely regarded as a suitable choice for introductory teaching. The choice of environment, however, remains an issue. The view of the development environment as a major difficulty in Java courses is further supported by numerous reports of educators relating their experiences with teaching introductory Java courses. While Java was consistently described as an excellent language for teaching the object-oriented paradigm, the environments available are regularly identified as a significant source of problems. These may be divided into two areas: The environments are designed for professional programmers. They are too complex and have a steep learning curve. Thus valuable teaching time is spent teaching the students how to use the environment and this detracts from the principles of programming. Most of the existing environments fail to fully adopt the object-oriented paradigm. Users of the environment must deal with files, lines of code and directory hierarchies rather than classes, objects and relationships. In this seminar we will argue the case that the requirements for teaching the object-oriented paradigm and Java can only be satisfied by the provision of a program development environment specifically designed for teaching. We will introduce BlueJ, a relatively new development environment which addresses all of these issues. We will show how the unique features of this environment can be used to create an introductory Java course that fully embraces the ``object first'' approach and supports the presentation of a cleaner picture of the paradigm than previously possible. BlueJ is based heavily on earlier work by us on a language and environment called Blue. BlueJ is a complete Java development environment, written entirely in Java. It provides graphical support for object-oriented design, abstracts over files and the operating system and provides fully integrated support for a design, edit, compile and test cycle. In addition, BlueJ supports interactive creation of objects and interactive calling of methods of objects. This provides support for incremental development, one of the major advantages of object-orientation. It includes an easy-to-use debugger and support for applications and applets. One of the main differences between BlueJ and other environments is its distinct focus on a teaching context. It combines powerful tools with an easy-to-use interface, avoiding the complexity that creates so many problems when using existing environments in a classroom. BlueJ has been used very successfully for two semesters as Monash University. The presentation will provide the context in which the BlueJ project has been developed. We will discuss the design principles for BlueJ, the major aims of the project and our experiences with using it in class. A demonstration of the current version of BlueJ will be given. We will also demonstrate a set of examples and problems which can be used in a first Java course and show how the course structure can be improved and support teaching ``objects first'' with the availability of an environment that fully supports the paradigm. BlueJ is available free of charge and can be used by any interested institution. Details of how to obtain a copy of BlueJ will be provided at the seminar.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kroeker:2000:PCL, author = "Kirk L. Kroeker", title = "Products: Controlling the Look and Feel of {Windows}; Sophisticated Project Estimation for \$99; {Web} Applications for the {Internet}-challenged; Network-based Digital Asset Manager; {Linux} Middleware Framework; {XML}-based Information Portal; {Java} Development for Small Computing Devices; Build Installations for {Windows 2000}", journal = j-COMPUTER, volume = "33", number = "3", pages = "105--107", month = mar, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Oct 30 19:18:20 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r3105.pdf; http://www.stardock.net/", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", keywords = "Stardock WindowBlinds", } @Article{Kroeker:2000:PEN, author = "Kirk L. Kroeker", title = "Products: {Enterasys Networks}' {E}-commerce Access Platforms; {Tascom Software}'s {ASP} Editor; {Vital}'s Text Editor for Program Development; {RapidStream}'s Security Appliance; {Kemma Software}'s Help Desk Software; {Telelogic}'s Real-Time {UML} Profiling Software; {ParaSoft} Extends Product Support to {Windows 2000}; {Spyglass}' Interactive {TV} Software; {Metrowerks} Releases {CodeWarrior} with {PersonalJava} Support", journal = j-COMPUTER, volume = "33", number = "6", pages = "96--98", month = jun, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Oct 30 17:20:19 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r6096.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Kumar:2000:SAM, author = "Bharath M. Kumar and R. Lakshminarayanan and Y. N. Srikant", title = "A study of automatic migration of programs across the {Java} event models", journal = j-SIGSOFT, volume = "25", number = "3", pages = "24--29", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505870", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Evolution of a framework forces a change in the design of an application, which is based on the framework. The same is the case when the Java event model changed from the Inheritance model to the Event Delegation model. We summarize our experiences when attempting an automatic and elegant migration across the event models. Further, we also necessitate the need for extra documentation in patterns that will help programs evolve better.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Lambert:2000:JCC, author = "Kenneth (Kenneth A.) Lambert and Martin Osborne", title = "{Java}: complete course in programming and problem solving", publisher = "South-Western Educational Publishers", address = "Cincinnati, OH, USA", pages = "x + 468", year = "2000", ISBN = "0-538-68707-X (hardbound), 0-538-68711-8 (softcover)", ISBN-13 = "978-0-538-68707-2 (hardbound), 978-0-538-68711-9 (softcover)", LCCN = "QA76.73.J38 L355 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Lambert:2000:JFP, author = "Kenneth Alfred Lambert and Martin Osborne", title = "{Java}: a framework for program design and data structures", publisher = pub-BROOKS-COLE, address = pub-BROOKS-COLE:adr, pages = "xxii + 677", year = "2000", ISBN = "0-534-36691-0", ISBN-13 = "978-0-534-36691-9", LCCN = "QA76.73.J38 L25 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Langr:2000:EJS, author = "Jeff Langr", title = "Essential {Java} style: patterns for implementation", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxi + 277", year = "2000", ISBN = "0-13-085086-1", ISBN-13 = "978-0-13-085086-7", LCCN = "QA76.13.J38 L357 2000", bibdate = "Tue Mar 12 08:04:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{Larman:2000:JPI, author = "Craig Larman and Rhett Guthrie", title = "{Java 2} Performance and Idiom Guide", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xvii + 299", year = "2000", ISBN = "0-13-014260-3", ISBN-13 = "978-0-13-014260-3", LCCN = "QA76.73.J38 L359 2000", bibdate = "Sat Mar 11 15:57:07 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.phptr.com/ptrbooks/ptr_0130142603.html", acknowledgement = ack-nhfb, } @Article{Laufer:2000:SSC, author = "Konstantin L{\"a}ufer and Gerald Baumgartner and Vincent F. Russo", title = "Safe Structural Conformance for {Java}", journal = j-COMP-J, volume = "43", number = "6", pages = "469--481", month = "????", year = "2000", CODEN = "CMPJA6", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Tue Mar 6 08:20:58 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_06/", URL = "http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_06/430469.sgm.abs.html; http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_06/pdf/430469.pdf", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Book{Lea:2000:CPJ, author = "Douglas Lea", title = "Concurrent programming in {Java} design principles and patterns", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "ix + 411", year = "2000", ISBN = "0-201-31009-0", ISBN-13 = "978-0-201-31009-2", LCCN = "QA76.73.J38 L4 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); parallel programming (computer science)", } @Article{Lear:2000:NBY, author = "Anne C. Lear", title = "News Briefs: {Y2K} Rollover: Few Problems, Many Questions; {Sun} Withdraws {Java} from Standards Process; Wireless Net has More Potential than Substance", journal = j-COMPUTER, volume = "33", number = "2", pages = "22--24", month = feb, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Sat Mar 11 09:52:58 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r2022.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Book{Lee:2000:JAT, author = "Rosanna Lee and Scott Seligman", title = "{JNDI API} tutorial and reference: building directory-enabled {Java} applications", publisher = pub-AW, address = pub-AW:adr, pages = "xxiii + 821", year = "2000", ISBN = "0-201-70502-8", ISBN-13 = "978-0-201-70502-7", LCCN = "QA76.76.A63 L44 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "application program interfaces (computer software); directory services (computer network technology); Java (computer program language); JNDI", } @Article{Lee:2000:RVC, author = "Junpyo Lee and Byung-Sun Yang and Suhyun Kim and Kemal Ebcio{\u{g}}lu and Erik Altman and Seungil Lee and Yoo C. Chung and Heungbok Lee and Je Hyung Lee and Soo-Mook Moon", title = "Reducing virtual call overheads in a {Java VM} just-in-time compiler", journal = j-COMP-ARCH-NEWS, volume = "28", number = "1", pages = "21--33", month = mar, year = "2000", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:40:36 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @TechReport{Lewis:2000:APH, author = "Brian T. Lewis and Bernd Mathiske and Neal M. Gafter", title = "Architecture of the {PEVM}: a high-performance orthogonally persistent {Java Virtual Machine}", number = "2000-93", institution = "Sun Microsystems", address = "Palo Alto, CA, USA", pages = "19", month = oct, year = "2000", LCCN = "QA76.8.S86.S65", bibdate = "Mon Apr 10 10:43:19 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; library.mit.edu:9909/mit01", series = "SMLI TR", abstract = "This paper describes the design and implementation of the PEVM, a new scalable, high-performance implementation of orthogonal persistence for the Java platform (OPJ). The PEVM is based on the Sun Microsystems Laboratories Virtual Machine for Research (ResearchVM), which features an optimizing Just-In-Time compiler, exact generational garbage collection, and fast thread synchronization. It also uses a new, scalable persistent object store designed to manage more than 80GB of objects. The PEVM is approximately ten times faster than previous OPJ implementations and can run significantly larger programs. It is faster than or comparable in performance to several commercial persistence solutions for the Java platform. Despite the PEVM's speed and scalability, its implementation is simpler than our previous OPJ implementation (e.g., just 43\% of the VM source patches needed by our previous OPJ implementation). Its speed and simplicity are largely due to our pointer swizzling strategy, the ResearchVM's exact memory management, and a few simple but effective mechanisms. For example, we implement some key data structures in the Java programming language since this automatically makes them persistent.", acknowledgement = ack-nhfb, subject = "Operating systems (Computers); Java (Computer program language); Computer architecture", } @Book{Lewis:2000:CEJ, author = "Kevin Lewis", title = "Creating Effective {JavaHelp}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 171", year = "2000", ISBN = "1-56592-719-2", ISBN-13 = "978-1-56592-719-3", LCCN = "QA76.73.J38 L495 2000", bibdate = "Wed Feb 21 06:12:28 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$30", acknowledgement = ack-nhfb, } @Book{Lewis:2000:JSS, author = "John Lewis and William Loftus", title = "{Java} software solutions: foundations of program design", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxviii + 780", year = "2000", ISBN = "0-201-61271-2", ISBN-13 = "978-0-201-61271-4", LCCN = "QA76.73.J38 L49 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Book{Lewis:2000:MPJ, author = "Bil Lewis and Daniel J. Berg", title = "Multithreaded Programming with {Java} Technology", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xxv + 461", year = "2000", ISBN = "0-13-017007-0", ISBN-13 = "978-0-13-017007-1", LCCN = "QA76.73.J38 L488 2000", bibdate = "Fri Apr 11 15:58:52 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", series = "Sun BluePrints Program", URL = "http://www.sun.com/books/catalog/lewis3/index.html", acknowledgement = ack-nhfb, } @InProceedings{Li:2000:UCS, author = "Tao Li and Lizy Kurian John and Vijaykrishnan Narayanan and Anand Sivasubramaniam and Jyotsna Sabarinathan and Anupama Murthy", title = "Using complete system simulation to characterize {SPECjvm98} benchmarks", crossref = "ACM:2000:CPI", pages = "22--33", year = "2000", DOI = "https://doi.org/10.1145/335231.335234", bibdate = "Tue Oct 24 10:02:36 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Complete system simulation to understand the influence of architecture and operating systems on application execution has been identified to be crucial for systems design. While there have been previous attempts at understanding the architectural impact of Java programs, there has been no prior work investigating the operating system (kernel) activity during their executions. This problem is particularly interesting in the context of Java since it is not only the application that can invoke kernel services, but so does the underlying Java Virtual Machine (JVM) implementation which runs these programs. Further, the JVM style (JIT compiler or interpreter) and the manner in which the different JVM components (such as the garbage collector and class loader) are exercised, can have a significant impact on the kernel activities.To investigate these issues, this research uses complete system simulation of the SPECjvm98 benchmarks on the SimOS simulation platform. The execution of these benchmarks on both JIT compilers and interpreters is profiled in detail, to identify and quantify where time is spent in each component. The kernel activity of SPECjvm98 applications constitutes up to 17\% of the execution time in the large dataset and up to 31\% in the small dataset. The average kernel activity in the large dataset is approximately 10\%, in comparison to around 2\% in four SPECInt benchmarks studied. Of the kernel services, TLB miss handling is the most dominant in all applications. The TLB miss rates in the JIT compiler, dynamic class loader and garbage collector portions of the JVM are individually analyzed. In addition to such execution profiles, the ILP in the user and kernel mode are also quantified. The Java code is seen to limit exploitable parallelism and aggressive instruction issue is seen to be less efficient for SPECjvm98 benchmarks in comparison to SPEC95 programs. Also, the kernel mode of execution does not exhibit as much ILP as the user mode.", acknowledgement = ack-nhfb, } @InProceedings{Li:2000:WGW, author = "M. Li and O. F. Rana and M. S. Shields and D. W. Walker", title = "A Wrapper Generator for Wrapping High Performance Legacy Codes as {Java\slash CORBA} Components", crossref = "ACM:2000:SHP", pages = "51--51", year = "2000", bibdate = "Mon Feb 12 11:57:42 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc2000.org/proceedings/techpapr/papers/pap135.pdf", acknowledgement = ack-nhfb, } @Book{Liang:2000:IJPa, author = "Y. Daniel Liang", title = "Introduction to {Java} Programming with {JBuilder 3}", publisher = pub-PH, address = pub-PH:adr, pages = "xxvi + 771", year = "2000", ISBN = "0-13-086911-2", ISBN-13 = "978-0-13-086911-1", LCCN = "A76.73.J38 L53 2000", bibdate = "Wed Feb 21 06:13:05 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$65.00", URL = "http://www.phptr.com/ptrbooks/esm_0130869112.html", acknowledgement = ack-nhfb, } @Book{Liang:2000:IJPb, author = "Y. Daniel Liang", title = "Introduction to {Java} Programming with {Microsoft Visual J++ 6.0}", publisher = pub-PH, address = pub-PH:adr, pages = "xxviii + 752", year = "2000", ISBN = "0-13-086912-0", ISBN-13 = "978-0-13-086912-8", LCCN = "QA76.73.J38 L532 2000", bibdate = "Thu Jan 18 06:05:18 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$65.00", acknowledgement = ack-nhfb, } @Book{Liang:2000:RJA, author = "Y. Daniel Liang", title = "Rapid {Java} Application Development Using {JBuilder 3}", publisher = pub-PH, address = pub-PH:adr, pages = "xxii + 727", year = "2000", ISBN = "0-13-026161-0", ISBN-13 = "978-0-13-026161-8", LCCN = "A76.73.J38 L534 2000", bibdate = "Wed Feb 21 06:14:29 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$53", acknowledgement = ack-nhfb, } @Book{Lindley:2000:DAJ, author = "Craig A. Lindley", title = "Digital audio with {Java}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xl + 380", year = "2000", ISBN = "0-13-087676-3", ISBN-13 = "978-0-13-087676-8", LCCN = "TK7881.4 .L5415 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM with two complete audio applications, complete library of JavaBeans user interface controls, and twelve audio processing effects.", acknowledgement = ack-nhfb, keywords = "Java (computer program language); real-time data processing; sound -- recording and reproducing -- digital techniques", } @Book{Liskov:2000:PDJ, author = "B. Liskov and John Guttag", title = "Program development in {Java}: abstraction, specification, and object-oriented design", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 443", year = "2000", ISBN = "0-201-65768-6", ISBN-13 = "978-0-201-65768-5", LCCN = "QA76.73.J38 L58 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Book{Litwak:2000:PJ, author = "Kenneth Litwak", title = "Pure {Java 2}", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xxii + 790", year = "2000", ISBN = "0-672-31654-4", ISBN-13 = "978-0-672-31654-8", LCCN = "QA76.73.J38 L59 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Lujan:2000:OOO, author = "Mikel Luj{\'a}n and T. L. Freeman and John R. Gurd", title = "{OoLALA}: an object oriented analysis and design of numerical linear algebra", journal = j-SIGPLAN, volume = "35", number = "10", pages = "229--252", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p229-lujan/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Fortran BLAS; Java", } @Article{Lutz:2000:NBM, author = "Michael J. Lutz", title = "New Books: Masters of Technology or Slaves to the {E}-Grind?; Managing Apples and Oranges; Descrambling Data on the Web; Designing System Networks; Fixing Things Before Things Fall Apart; {Java 2} Guidelines", journal = j-COMPUTER, volume = "33", number = "2", pages = "119--119", month = feb, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Sat Mar 11 09:52:58 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes short review of \cite{Larman:1999:JPI}.", URL = "http://dlib.computer.org/co/books/co2000/pdf/r2119.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Lyon:2000:LWS, author = "Douglas Lyon and Roger T. Alexander and James M. Bieman and John Viega and Bruce D. Wilner and Roger T. Alexander and James M. Bieman and John Viega and Derek B. Eckert and Ted Lewis and Howard C. Anderson and Thomas M. English and Timothy C. Lethbridge", title = "Letters: We Shape Our Tools and Our Tools Shape Us; {Java} Design Flaws Create Programming Stress; Funny Money's Role in the Government's Favorite Hobby; Rigorous Training Teaches Students How to Think", journal = j-COMPUTER, volume = "33", number = "7", pages = "4--7", month = jul, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Oct 30 17:20:19 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r7004.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Ma:2000:JJE, author = "Matchy J. M. Ma and Cho-Li Wang and Francis C. M. Lau", title = "{JESSICA}: {Java}-Enabled Single-System-Image Computing Architecture", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1194--1222", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1650", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1650; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1650/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1650/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Machover:2000:NPH, author = "Carl Machover and John Dill", title = "New Products: Hardware: Modeling System for Office Environment; Smart Fabric Control Surface Support; Head Tracker Enables {VR}; Programmable {$3$D\slash $2$D} Input Device; Digital Projectors; Portable {$3$D} Scene Digitizer; Slim-Line Panel {PC}. Software: Visual Effects Upgrade; Mobile {CAD}; {$3$D} Development Tool; Visual Interpretation of Financial Data; Software Development for {Linux}; Feature Recognition Program; {Altia Java} Connection", journal = j-IEEE-CGA, volume = "20", number = "6", pages = "110--112", month = nov # "\slash " # dec, year = "2000", CODEN = "ICGADZ", ISSN = "0272-1716 (print), 1558-1756 (electronic)", ISSN-L = "0272-1716", bibdate = "Tue Nov 7 18:37:54 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/cg/books/cg2000/pdf/g6110.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Computer Graphics and Applications", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/cga", } @Article{Maessen:2000:IJM, author = "Jan-Willem Maessen and Xiaowei Shen", title = "Improving the {Java} memory model using {CRF}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "1--12", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p1-maessen/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Malabarba:2000:RST, author = "Scott Malabarba and Raju Pandey and Jeff Gragg and Earl Barr and J. Fritz Barnes", title = "Runtime Support for Type-Safe Dynamic {Java} Classes", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "337--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500337.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500337.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Malkhi:2000:SEJ, author = "D. Malkhi and M. K. Reiter", title = "Secure execution of {Java} applets using a remote playground", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "26", number = "12", pages = "1197--1209", month = dec, year = "2000", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/32.888632", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=888632", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Book{Malks:2000:PJ, author = "Dan Malks and others", title = "Professional {JSP}", publisher = pub-WROX, address = pub-WROX:adr, pages = "xxv + 897", year = "2000", ISBN = "1-86100-362-5", ISBN-13 = "978-1-86100-362-1", LCCN = "TK5105.8885.J38 P76 2000", bibdate = "Thu Oct 05 07:16:36 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$59.99", URL = "http://www.wrox.com/Consumer/Store/Download.asp?ISBN=1861003625", acknowledgement = ack-nhfb, xxauthor = "Karl Avedal and others", } @Book{Margulies:2000:UJT, author = "Edwin Margulies", title = "Understanding {Java} Telephony", publisher = pub-ORA, address = pub-ORA:adr, pages = "????", year = "2000", ISBN = "1-199-00626-2", ISBN-13 = "978-1-199-00626-4", LCCN = "????", bibdate = "Tue Feb 20 19:06:25 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, xxnote = "Also Web listed as ISBN 1-57820-003-2, from Telecom Books and/or McGraw-Hill, 1997 or 1998", } @Article{Marquez:2000:FPO, author = "Alonso Marquez and John N. Zigman and Stephen M. Blackburn", title = "Fast portable orthogonally persistent {Java$^{TM}$}", journal = j-SPE, volume = "30", number = "4", pages = "449--479", day = "10", month = apr, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/(SICI)1097-024X(20000410)30:4<449::AID-SPE306>3.0.CO;2-Y", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:45:44 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/71004143/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=71004143&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Book{Mason:2000:PCL, author = "Oliver Mason", title = "Programming for corpus linguistics: how to do text analysis with {Java}", publisher = "Edinburgh University Press", address = "Edinburgh, Scotland", pages = "245", year = "2000", ISBN = "0-7486-1407-9", ISBN-13 = "978-0-7486-1407-3", LCCN = "P98 .M29 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Specialised linguistic research needs can no longer be met by available software. This book enables the researcher to write programs for text and corpus processing, using the popular and easy to learn Java language", acknowledgement = ack-nhfb, keywords = "computational linguistics; Java (computer program language)", } @TechReport{Mathiske:2000:APM, author = "Bernd Mathiske and Daniel Schneider", title = "Automatic persistent memory management for the {Spotless} virtual machine on the {Palm} connected organizer", type = "SMLI TR", number = "2000-89", institution = "Sun Microsystems", address = "Palo Alto, CA, USA", pages = "18", month = jun, year = "2000", LCCN = "QA76.8.S86.S65", bibdate = "Mon Apr 10 10:43:19 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; library.mit.edu:9909/mit01", abstract = "Palm organizers are widely used in a multi-tasking fashion. Users switch from one application to another without losing the context established in either of them. Despite its obvious usefulness, there is no automatic support for this convenience in the organizer's operating system, PalmOS. Programmers must implement event callbacks that have to operate on a PalmOS database API to save and reload specific application state. In this report, we describe how this burden can be eliminated. We enhanced the Spotless Java virtual machine for the Palm organizer with transparent multi-tasking support that automates persistence. As a consequence, running Java programs can be beamed between the infra-red links of two Palm organizers. A beamed program will resume on the receiving organizer in the exact same state as on the sending device. A HotSync operation effectively establishes a checkpoint for each involved Java program. The original Spotless JVM's address range for running programs is limited to a few tens of KB in the dynamic RAM area. By directly addressing the much larger static RAM area, our modified VM supports address ranges of several MB. We provide an easy-to-use protocol that leverages persistent threads for automatic life cycle control of external resources (e.g., windows, forms and databases). When applied at the library level, this protocol maintains complete persistence transparency for the application programmer.", acknowledgement = ack-nhfb, subject = "Palm (Computer); Multitasking (Computer science)", } @Article{McCluskey:2000:JPa, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "1", pages = "??--??", month = feb, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:03 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-2/index.html", URL = "http://www.usenix.org/publications/login/2000-2/features/javaperformance.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2000:JPb, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "2", pages = "??--??", month = apr, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:05 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-4/index.html", URL = "http://www.usenix.org/publications/login/2000-4/features/java.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2000:JPc, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "3", pages = "??--??", month = jun, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:07 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-6/index.html", URL = "http://www.usenix.org/publications/login/2000-6/features/java.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2000:JPd, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "5", pages = "??--??", month = aug, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:08 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-8/index.html", URL = "http://www.usenix.org/publications/login/2000-8/features/java.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2000:JPe, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "6", pages = "??--??", month = oct, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:10 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-10/index.html", URL = "http://www.usenix.org/publications/login/2000-10/pdfs/javaperformance.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2000:JPf, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "25", number = "8", pages = "??--??", month = dec, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:14 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-12/index.html", URL = "http://www.usenix.org/publications/login/2000-12/pdfs/javaperf.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCoy:2000:SP, author = "John H. McCoy", title = "Scripting for {Pnuts}", journal = j-DDJ, volume = "25", number = "1", pages = "21--22, 24, 26", month = jan, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_01/pnutdemo.zip; http://www.ddj.com/ftp/2000/2000_01/pnuts.txt", abstract = "Pnuts is a language, API, and interpreter that provides a thin procedural wrapper with an interactive interface for manipulating Java objects. Additional resources include pnuts.txt (listings) and pnutdemo.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{McLaughlin:2000:JX, author = "Brett McLaughlin", title = "{Java} and {XML}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 479", year = "2000", ISBN = "0-596-00016-2", ISBN-13 = "978-0-596-00016-5", LCCN = "QA76.73.J38 M39 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Book{Melton:2000:USJ, author = "Jim Melton and Andrew Eisenberg", title = "Understanding {SQL} and {Java} Together: a Guide to {SQLJ}, {JDBC}, and Related Technologies", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xxix + 514", year = "2000", ISBN = "1-55860-562-2", ISBN-13 = "978-1-55860-562-6", LCCN = "QA76.73.S67 M43 2000", bibdate = "Fri Jan 19 06:10:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.95", URL = "http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-562-2", acknowledgement = ack-nhfb, } @Article{Mengant:2000:WJC, author = "Jean-Yves Mengant", title = "Writing a {Java} Class to Manage {RPM} Package Content", journal = j-LINUX-J, volume = "76", pages = "??--??", month = aug, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Sep 21 07:44:13 MDT 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue76/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Merzbacher:2000:TDM, author = "Matthew Merzbacher", title = "Teaching database management systems with {Java}", journal = j-SIGCSE, volume = "32", number = "1", pages = "31--35", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331806", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We present a multi-phase programming project, in Java, for an upper-division database course. The project parallels a modest reordering of the traditional classroom presentation of database management. In addition to illuminating theoretical concepts, the lab provides a capstone experience for an undergraduate computer science degree.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Migliardi:2000:DJS, author = "Mauro Migliardi and Simon Schubiger and Vaidy Sunderam", title = "A Distributed {JAVA SPACE} Implementation for {HARNESS}", journal = j-J-PAR-DIST-COMP, volume = "60", number = "10", pages = "1325--1340", month = oct, year = "2000", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2000.1656", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Nov 1 07:29:45 MST 2000", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1656; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1656/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2000.1656/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Milde:2000:EUV, author = "Jan-Torsten Milde and Bernhard Jung", title = "Educational use of {VRML} and {Java} in agent-based {AI} and computer graphics", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "1", pages = "79--87", month = sep, year = "2000", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:20 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/24/34/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Miyashita:2000:JAV, author = "Kensuke Miyashita and Reiji Hashimoto", title = "A {Java} Applet to Visualize Algorithms on Reconfigurable Mesh", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "137--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000137.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000137.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Monson-Haefel:2000:EJ, author = "Richard Monson-Haefel", title = "{Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvii + 472", year = "2000", ISBN = "1-56592-869-5", ISBN-13 = "978-1-56592-869-5", LCCN = "QA76.73.J38 M65 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaBeans", } @Article{Moon:2000:JTC, author = "SooMook Moon and Kemal Ebcio{\u{g}}lu", title = "A Just-in-Time Compiler", journal = j-COMPUTER, volume = "33", number = "3", pages = "41--41", month = mar, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Sat Mar 11 09:52:59 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/r3040.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", keywords = "Java; Latte", } @Article{Moreira:2000:FMJ, author = "Jos{\'e} E. Moreira and Samuel P. Midkiff and Manish Gupta", title = "From flop to megaflops: {Java} for technical computing", journal = j-TOPLAS, volume = "22", number = "2", pages = "265--295", month = mar, year = "2000", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Sep 26 10:12:58 MDT 2000", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/journals/toplas/2000-22-2/p265-moreira/", abstract = "Although there has been some experimentation with Java as a language for numerically intensive computing, there is a perception by many that the language is unsuited for such work because of performance deficiencies. In this article we show how optimizing array bounds checks and null pointer checks creates loop nests on which aggressive optimizations can be used. Applying these optimizations by hand to a simple matrix-multiply test case leads to Java-compliant programs whose performance is in excess of 500 Mflops on a four-processor 332MHz RS/6000 model F50 computer. We also report in this article the effect that various optimizations have on the performance of six floating-point-intensive benchmarks. Through these optimizations we have been able to achieve with Java at least 80\% of the peak Fortran performance on the same benchmarks. Since all of these optimizations can be automated, we conclude that Java will soon be a serious contender for numerically intensive computing.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "arrays; compilers; Java", subject = "Software --- Programming Languages --- Processors (D.3.4): {\bf Compilers}; Software --- Programming Languages --- Processors (D.3.4): {\bf Run-time environments}; Software --- Programming Techniques --- Concurrent Programming (D.1.3): {\bf Parallel programming}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Java}", } @Article{Moreira:2000:JPH, author = "J. E. Moreira and S. P. Midkiff and M. Gupta and P. V. Artigas and M. Snir and R. D. Lawrence", title = "{Java} programming for high-performance numerical computing", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "21--56", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/moreira.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Book{Morelli:2000:JJJ, author = "R. (Ralph) Morelli", title = "{Java}, {Java}, {Java}!: object-oriented problem solving", publisher = pub-PH, address = pub-PH:adr, pages = "xviii + 964", year = "2000", ISBN = "0-13-011332-8", ISBN-13 = "978-0-13-011332-0", LCCN = "QA76.64 .M64 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "CD-ROM includes Java code for all the examples in the text, Java 2 SDK (Standard Edition), Borland JBuilder 3 (University Edition) and NetBeans. BUY-A-BOOK gift of Brendon O'Brien in honor of Amy S. O'Brien.", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Moss:2000:JQ, author = "Karl Moss", title = "{Java Q\&A}: How Can {I} Measure {Java} Code Performance?", journal = j-DDJ, volume = "25", number = "10", pages = "135--136, 138, 140--142, 144", month = oct, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_10/jqa010.txt", abstract = "How can you measure Java code performance? Karl examines techniques for instrumenting Java code at run time. Additional resources include jqa010.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Mughal:2000:PGJ, author = "Khalid Azim Mughal and Rolf W. Rasmussen", title = "A programmer's guide to {Java} certification: a comprehensive primer", publisher = pub-AW, address = pub-AW:adr, pages = "xxxv + 754", year = "2000", ISBN = "0-201-59614-8 (paperback)", ISBN-13 = "978-0-201-59614-4 (paperback)", LCCN = "QA76.3 .M846 1999", bibdate = "Tue Jun 06 09:20:09 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", acknowledgement = ack-nhfb, } @Book{Muldner:2000:CJP, author = "Tomasz Muldner", title = "{C} for {Java} programmers", publisher = pub-AW-LONGMAN, address = pub-AW-LONGMAN:adr, pages = "various", year = "2000", ISBN = "0-201-70279-7", ISBN-13 = "978-0-201-70279-8", LCCN = "QA76.73.C15 M853 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "C (computer program language)", } @Book{Murdock:2000:JYV, author = "Kelly Murdock", title = "{JavaScript}: your visual blueprint for building dynamic {Web} pages", publisher = pub-IDG-WORLDWIDE, address = pub-IDG-WORLDWIDE:adr, pages = "xvii + 285", year = "2000", ISBN = "0-7645-4730-5", ISBN-13 = "978-0-7645-4730-0", LCCN = "QA76.73.J39 M87 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software; Internet programming; JavaScript (computer program language); Web site development", } @Article{Murray:2000:PIM, author = "Paul Murray and Todd Smith and Suresh Srinivas and Matthias Jacob", title = "Performance Issues for Multi-language {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "544--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000544.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000544.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Myers:2000:PPU, author = "Andrew C. Myers and Barbara Liskov", title = "Protecting privacy using the decentralized label model", journal = j-TOSEM, volume = "9", number = "4", pages = "410--442", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p410-myers/p410-myers.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p410-myers/", abstract = "Stronger protection is needed for the confidentiality and integrity of data, because programs containing untrusted code are the rule rather than the exception. Information flow control allows the enforcement of end-to-end security policies, but has been difficult to put into practice. This article describes the decentralized label model, a new label model for control of information flow in systems with mutual distrust and decentralized authority. The model improves on existing multilevel security models by allowing users to declassify information in a decentralized way, and by improving support for fine-grained data sharing. It supports static program analysis of information flow, so that programs can be certified to permit only acceptable information flows, while largely avoiding the overhead of run-time checking. The article introduces the language Jif, an extension to Java that provides static checking of information flow using the decentralized label model.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Languages; Security", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "confidentiality; declassification; downgrading; end-to-end; information flow controls; integrity; lattice; policies; principals; roles; type checking", subject = "Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Information flow controls}", } @Manual{NASA:2000:EJU, author = "{National Aeronautics and Space Administration}", title = "Enhancing {Jini} For Use Across Non-multicastable Networks: Final Report {NASA}\slash {CR}-2000-210329", publisher = pub-NASA, address = pub-NASA:adr, day = "6", month = dec, year = "2000", LCCN = "DOC NAS 1.26:210329 mf11", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Shipping list number 2002-0173-M. Shipping list date: 03/04/2002", acknowledgement = ack-nhfb, } @Book{Natarajan:2000:PVD, author = "Vijaykumar Natarajan and Stefan Reich and Bhaskar Vasudevan", title = "Programming with {VisiBroker}; {A} Developer's Guide to {VisiBroker} for {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xxviii + 543", year = "2000", ISBN = "0-471-37682-5", ISBN-13 = "978-0-471-37682-8", LCCN = "QA76.73.J38 N36 2000", bibdate = "Tue Feb 20 19:01:21 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, annote = "Revised edition of \cite{Pedrick:1998:PVC}.", xxauthor = "Erin Hoffmann and others", } @Book{Neward:2000:SBJ, author = "Ted Neward and others", title = "Server-Based {Java} Programming", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxxiii + 556", year = "2000", ISBN = "1-884777-71-6", ISBN-13 = "978-1-884777-71-4", LCCN = "QA76.73.J38 N49 2000", bibdate = "Tue Feb 20 19:03:29 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44", acknowledgement = ack-nhfb, } @Article{Newhall:2000:PMD, author = "Tia Newhall and Barton P. Miller", title = "Performance measurement of dynamically compiled {Java} executions", journal = j-CPE, volume = "12", number = "6", pages = "343--362", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<343::AID-CPE478>3.0.CO;2-8", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515726/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515726&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Newmarch:2000:PGJ, author = "Jan Newmarch", title = "A programmer's guide to {Jini} technology", publisher = pub-SV, address = pub-SV:adr, pages = "xxi + 448", year = "2000", ISBN = "1-893115-80-1", ISBN-13 = "978-1-893115-80-4", LCCN = "QA76.9.D5 N548 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Books for professionals by professionals", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Jini", } @Article{Nicholas:2000:OTD, author = "Tyrone Nicholas and Jerzy A. Barchanski", title = "Overview of {TOS}: a distributed educational operating system in {Java}", journal = j-OPER-SYS-REV, volume = "34", number = "1", pages = "2--10", month = jan, year = "2000", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Sat Aug 26 08:55:37 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Book{Niemeyer:2000:LJ, author = "Patrick Niemeyer and Jonathan Knudsen", title = "Learning {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 706", year = "2000", ISBN = "1-56592-718-4 (paperback)", ISBN-13 = "978-1-56592-718-6 (paperback)", LCCN = "QA76.73.J38 N545 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @InProceedings{Norman:2000:FEJ, author = "Arthur C. Norman", title = "Further evaluation of {Java} for symbolic computation", crossref = "Traverso:2000:IAU", pages = "258--265", year = "2000", bibdate = "Tue Apr 17 09:15:54 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/issac/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/issac/345542/p258-norman/p258-norman.pdf; http://www.acm.org/pubs/citations/proceedings/issac/345542/p258-norman/", acknowledgement = ack-nhfb, } @Book{Oaks:2000:JDQ, author = "Scott Oaks and Henry Wong", title = "{Jini}: a desktop quick reference", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 400", year = "2000", ISBN = "1-56592-759-1 (paperback)", ISBN-13 = "978-1-56592-759-9 (paperback)", LCCN = "QA76.9.C55 O25 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "es.", series = "In a nutshell", acknowledgement = ack-nhfb, keywords = "client/server computing; computer interfaces; embedded computer systems -- programming", } @Article{Odekirk:2000:TSC, author = "Elizabeth Odekirk and Dominic Jones and Peter Jensen", title = "Three semesters of {CSO} using {Java}: assignments and experiences", journal = j-SIGCSE, volume = "32", number = "3", pages = "144--147", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343148", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A CSO class with heavy lab emphasis was developed at the University of Utah in the summer of 1998. It has been taught three times by different instructors to students who were diverse in background, gender, and skill level. The culmination of these efforts is a set of original labs which can be divided into several chronological categories: a gentle introduction, computation and events, interaction and graphical user interfaces, algorithms, object-oriented programming, and Java specific issues. These labs encompassed several themes which guided the curriculum in all three semesters: creativity, visual and interactive methods, and breadth. This paper is a combined summary of these experiences.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Offutt:2000:STA, author = "Jeff Offutt", title = "Software testing and analysis of object-oriented software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "68", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340986", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our work has studied new language mechanisms for accessing message invocations in message passing based concurrent programming languages. Invocation handling mechanisms in many concurrent languages have significant limitations that make it difficult or costly to solve common programming situations encountered in program visualization, debugging, and scheduling scenarios. We have defined and implemented new such mechanisms within the SR concurrent language and have gained some experience with them. This work has led us to want a cleaner, higher-level way of defining mechanisms for message invocation. We are, therefore, now taking an object-oriented approach. As a step toward that goal, we are currently applying our ideas to Java. Below, we briefly summarize these two areas.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ogawa:2000:OOE, author = "Hirotaka Ogawa and Kouya Shimura and Satoshi Matsuoka and Fuyuhiko Maruyama and Yukihiko Sohda and Yasunori Kimura", title = "{OpenJIT}: An Open-Ended, Reflective {JIT} Compiler Framework for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "362--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500362.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500362.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pandey:2000:PFG, author = "Raju Pandey and Brant Hashii", title = "Providing fine-grained access control for {Java} programs via binary editing", journal = j-CPE, volume = "12", number = "14", pages = "1405--1430", day = "10", month = dec, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(20001210)12:14<1405::AID-CPE515>3.0.CO;2-O", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:11 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76500721/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76500721&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Paprzycki:2000:BRJ, author = "M. Paprzycki", title = "Book Review: {{\em Java distributed computing}} is solid but not flawless", journal = j-IEEE-CONCURR, volume = "8", number = "2", pages = "86--86", month = apr # "\slash " # jun, year = "2000", CODEN = "IECMFX", DOI = "https://doi.org/10.1109/MCC.2000.846199", ISSN = "1092-3063 (print), 1558-0849 (electronic)", ISSN-L = "1092-3063", bibdate = "Tue Jan 16 06:04:51 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Concurrency", } @Article{Parson:2000:JNI, author = "Dale Parson and Zhenyu Zhu", title = "{Java Native Interface} idioms for {C++} class hierarchies", journal = j-SPE, volume = "30", number = "15", pages = "1641--1660", month = dec, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/1097-024X(200012)30:15<1641::AID-SPE343>3.0.CO;2-R", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:46:13 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/73501271/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=73501271&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Parson:2000:UJR, author = "Dale E. Parson", title = "Using {Java} Reflection to Automate Extension Language Parsing", journal = j-SIGPLAN, volume = "35", number = "1", pages = "67--80", month = jan, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:13 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Pekowsky:2000:JP, author = "Larne Pekowsky", title = "{JavaServer} Pages", publisher = pub-AW, address = pub-AW:adr, pages = "300 (est.)", year = "2000", ISBN = "0-201-70421-8", ISBN-13 = "978-0-201-70421-1", LCCN = "K5105.8885.J38 P45 2000", bibdate = "Wed Feb 21 06:17:39 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$39.95", URL = "http://cseng.aw.com/bookdetail.qry?ISBN=0-201-70421-8", acknowledgement = ack-nhfb, } @Article{Perelman-Hall:2000:JQ, author = "David Perelman-Hall", title = "{Java Q\&A}: How Do {I} Build a Find?", journal = j-DDJ, volume = "25", number = "7", pages = "119--120, 122, 124, 126", month = jul, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:16 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_07/jqa700.txt; http://www.ddj.com/ftp/2000/2000_07/jqa700.zip", abstract = "Does Java have ``find'' functionality? It does now, as David describes his implementation. Additional resources include jqa700.txt (listings) and jqa700.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Pew:2000:WPJ, author = "John A. Pew", title = "{Web} Publishing with {Java}: The Complete Video Course", publisher = pub-PH, address = pub-PH:adr, pages = "????", year = "2000", ISBN = "0-13-085842-0", ISBN-13 = "978-0-13-085842-9", LCCN = "????", bibdate = "Tue Feb 20 19:07:24 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Philippsen:2000:CNJ, author = "Michael Philippsen and Edwin G{\"u}nthner", title = "Complex numbers for {Java}", journal = j-CPE, volume = "12", number = "6", pages = "477--491", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<477::AID-CPE486>3.0.CO;2-W", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515730/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515730&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Philippsen:2000:LOJ, author = "Michael Philippsen and Bernhard Haumacher", title = "Locality optimization in {JavaParty} by means of static type analysis", journal = j-CPE, volume = "12", number = "8", pages = "613--628", month = jul, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200007)12:8<613::AID-CPE502>3.0.CO;2-G", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516226/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516226&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Philippsen:2000:MES, author = "Michael Philippsen and Bernhard Haumacher and Christian Nester", title = "More efficient serialization and {RMI} for {Java}", journal = j-CPE, volume = "12", number = "7", pages = "495--518", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<495::AID-CPE496>3.0.CO;2-W", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516213/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516213&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Pidd:2000:UJD, author = "M. Pidd and R. A. Cassel and Correspondence", title = "Using {Java} to develop discrete event simulations", journal = j-J-OPER-RES-SOC, volume = "51", number = "4", pages = "405--412", day = "1", month = apr, year = "2000", CODEN = "OPRQAK", ISSN = "0160-5682 (print), 1476-9360 (electronic)", ISSN-L = "0160-5682", bibdate = "Mon Feb 2 15:02:19 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "OR: the journal of the Operational Research Society", pagecount = "8", } @Article{Pike:2000:CCC, author = "Scott M. Pike and Bruce W. Weide and Joseph E. Hollingsworth", title = "{Checkmate}: cornering {C++} dynamic memory errors with checked pointers", journal = j-SIGCSE, volume = "32", number = "1", pages = "352--356", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331884", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Pointer errors are stumbling blocks for student and veteran programmers alike. Although languages such as Java use references to protect programmers from pointer pitfalls, the use of garbage collection dictates that languages like C++ will still be used for real-time mission-critical applications. Pointers will stay in the classroom as long as they're used in industry, so as educators, we must find better ways to teach them. This paper presents checked pointers, a simple wrapper for C++ pointers that prevents pointer arithmetic and other common sources of pointer errors, and detects all dereferencing and deallocation errors, including memory leaks. The syntax of checked pointers is highly faithful to raw C++ pointers, but provides run-time error detection and debugging information. After debugging, changing one \#include is all that is required to substitute a non-checking implementation that is as fast as raw C++.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Plauger:2000:SCC, author = "P. J. Plauger", title = "{Standard C/C++}: {Java} Standard Time", journal = j-CCCUJ, volume = "18", number = "1", pages = "??--??", month = jan, year = "2000", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:24 MDT 2002", bibsource = "http://www.cuj.com/articles/2000/0001/0001toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "If standardization was good for C and for C++, then it should be good for Java too. Shouldn't it?", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Book{Pohl:2000:JDE, author = "Ira Pohl and Charlie McDowell", title = "{Java} by dissection: the essentials of {Java} programming", publisher = pub-AW, address = pub-AW:adr, pages = "xv + 509", year = "2000", ISBN = "0-201-61248-8", ISBN-13 = "978-0-201-61248-6", LCCN = "QA76.73.J38 P66 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Pooley:2000:DDM, author = "R. Pooley and P. Wilcox and Correspondence", title = "Distributing decision making using {Java} simulation across the {World Wide Web}", journal = j-J-OPER-RES-SOC, volume = "51", number = "4", pages = "395--404", day = "1", month = apr, year = "2000", CODEN = "OPRQAK", ISSN = "0160-5682 (print), 1476-9360 (electronic)", ISSN-L = "0160-5682", bibdate = "Mon Feb 2 15:02:19 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "OR: the journal of the Operational Research Society", pagecount = "10", } @Article{Prechelt:2000:ECS, author = "Lutz Prechelt", title = "An Empirical Comparison of Seven Programming Languages", journal = j-COMPUTER, volume = "33", number = "10", pages = "23--29", month = oct, year = "2000", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon Oct 30 17:20:21 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2000/pdf/rx023.pdf; http://www.computer.org/computer/co2000/rx023abs.htm", abstract = "The author takes a first step toward providing hard data about the relative effectiveness of the C, C++, Java, Perl, Python, Rexx and Tcl programming languages", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Pree:2000:FSL, author = "Wolfgang Pree and Kai Koskimies", title = "Framelets --- small and loosely coupled frameworks", journal = j-COMP-SURV, volume = "32", number = "1es", pages = "6:1--6:??", month = mar, year = "2000", CODEN = "CMSVAN", DOI = "https://doi.org/10.1145/351936.351942", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jun 19 10:12:24 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/journals/surveys/2000-32-1/p6-pree/", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM Computing Surveys", generalterms = "Design; Languages; Performance", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", subject = "Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Frameworks}; Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Java}; Software --- Software Engineering --- Reusable Software (D.2.13)", } @Book{Preiss:2000:DSA, author = "Bruno R. Preiss", title = "Data structures and algorithms with object-oriented design patterns in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xvii + 635", year = "2000", ISBN = "0-471-34613-6 (cloth)", ISBN-13 = "978-0-471-34613-5 (cloth)", LCCN = "QA76.64 .P744 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer algorithms; data structures (computer science); object-oriented programming (computer science)", } @Article{Pugh:2000:JMM, author = "William Pugh", title = "The {Java} memory model is fatally flawed", journal = j-CPE, volume = "12", number = "6", pages = "445--455", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<445::AID-CPE484>3.0.CO;2-A", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515725/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515725&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Qian:2000:FSJ, author = "Zhenyu Qian and Allen Goldberg and Alessandro Coglio", title = "A formal specification of {Java$^{TM}$} class loading", journal = j-SIGPLAN, volume = "35", number = "10", pages = "325--336", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p325-qian/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Qian:2000:SFI, author = "Zhenyu Qian", title = "Standard fixpoint iteration for {Java} bytecode verification", journal = j-TOPLAS, volume = "22", number = "4", pages = "638--672", year = "2000", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Apr 17 10:05:24 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/journals/toplas/2000-22-4/p638-qian/", abstract = "Java bytecode verification forms the basis for Java-based Internet security and needs a rigorous description. One important aspect of bytecode verification is to check if a Java Virtual Machine (JVM) program is statically well-typed. So far, several formal specifications have been proposed to define what the static well-typedness means. This paper takes a step further and presents a chaotic fixpoint iteration, which represents a family of fixpoint computation strategies to compute a least type for each JVM program within a finite number of iteration steps. Since a transfer function in the iteration is not monotone, we choose to follow the example of a nonstandard fixpoint theorem, which requires that all transfer functions are increasing, and monotone in case the bigger element is already a fixpoint. The resulting least type is the artificial top element if and only if he JVM program is not statically well-typed. The iteration is standard and close to Sun's informal specification and most commercial bytecode verifiers.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", generalterms = "Algorithms; Languages", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "bytecode verification; dataflow analysis; fixpoint; Java", subject = "Software --- Programming Languages --- Formal Definitions and Theory (D.3.1)", } @Article{Raab:2000:PPT, author = "Jeff Raab and Richard Rasala and Viera K. Proulx", title = "Pedagogical power tools for teaching {Java}", journal = j-SIGCSE, volume = "32", number = "3", pages = "156--159", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343155", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We describe a Java toolkit that is designed to support the creation of powerful and extensible GUI interfaces during the first year computer science course. The goals of this toolkit are to provide: $ \bullet $ an infrastructure for creating well designed programs that illustrates the concepts of computer science and its practical applications $ \bullet $ an environment for learning the basic ideas of interface design and for experimenting with a variety of designs $ \bullet $ a paradigm for building interfaces in Java that scales from individual data items to large structures, using recursively displayable container classes. Additionally, the toolkit classes themselves can be studied as examples of proper object oriented design, and of building event listeners.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Radhakrishnan:2000:AIE, author = "Ramesh Radhakrishnan and Deependra Talla and Lizy Kurian John", title = "Allowing for {ILP} in an embedded {Java} processor", journal = j-COMP-ARCH-NEWS, volume = "28", number = "2", pages = "294--305", month = may, year = "2000", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:40:49 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Ramirez:2000:DCJ, author = "Rafael Ramirez and Andrew E. Santosa", title = "Declarative Concurrency in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1800", pages = "332--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1800.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1800/18000332.htm; http://link.springer-ny.com/link/service/series/0558/papers/1800/18000332.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rao:2000:UJa, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "1", pages = "??--??", month = feb, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:03 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-2/index.html", URL = "http://www.usenix.org/publications/java/usingjava20.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2000:UJb, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "2", pages = "??--??", month = apr, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:05 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-4/index.html", URL = "http://www.usenix.org/publications/java/usingjava21.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2000:UJc, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "3", pages = "??--??", month = jun, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:43:07 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-6/index.html", URL = "http://www.usenix.org/publications/java/usingjava22.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2000:UJd, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "5", pages = "??--??", month = aug, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:08 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-8/index.html", URL = "http://www.usenix.org/publications/java/usingjava22.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2000:UJf, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "6", pages = "??--??", month = oct, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:10 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-10/index.html", URL = "http://www.usenix.org/publications/java/usingjava24.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2000:UJg, author = "Prithvi Rao", title = "Using {Java}", journal = j-LOGIN, volume = "25", number = "8", pages = "??--??", month = dec, year = "2000", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:21:14 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2000-12/index.html", URL = "http://www.usenix.org/publications/java/usingjava25.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rasala:2000:TFY, author = "Richard Rasala", title = "Toolkits in first year computer science: a pedagogical imperative", journal = j-SIGCSE, volume = "32", number = "1", pages = "185--191", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331852", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Traditional first year computer science courses teach the principles of computing using the basic features of some chosen programming language such as C, C++, Java, Ada, Scheme, Eiffel, etc. Abstraction and encapsulation focus on entities such as algorithms, functions, data structures, classes, objects, and closures that can be built directly on top of the raw language. If a facility such as windows and graphics is not directly available in the language then it is not used. This means that student exercises tend to look inward at computer science issues rather than outward to the exciting applications that show the breadth and power of computing. The fundamental thesis of this article is that teaching students in the framework of powerful toolkits is essential to maintain student interest and is pedagogically important precisely because toolkits are a rich source of examples that illustrate the principles of computation. We hope to convince computer science faculty that the use of toolkits is imperative in a modern first year curriculum. We will first discuss in general why toolkits are important. We will spice this discussion with some simple illustrations and with references to the use of toolkits by faculty at other institutions. We will then describe the toolkits we have developed at Northeastern University and explain both what they do and why they are pedagogically valuable. We will see how toolkits enable students to do more interesting and effective work and how principles of design and algorithms can be demonstrated by the key components of the toolkits. We will conclude with some general remarks and explain why the arguments made against toolkits do not have sufficient weight to change our conclusions. We will also give the web site address where our toolkits are available.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Reese:2000:DPJ, author = "George Reese", title = "Database programming with {JDBC} and {Java}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvii + 328", year = "2000", ISBN = "1-56592-616-1", ISBN-13 = "978-1-56592-616-5", LCCN = "QA76.9.D26 R44 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "database design; Java (computer program language)", } @Article{Reges:2000:CRJ, author = "Stuart Reges", title = "Conservatively radical {Java} in {CS1}", journal = j-SIGCSE, volume = "32", number = "1", pages = "85--89", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331821", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Java is fast becoming the language of choice in CSI, but we have yet to figure out how to take full advantage of it's special features. The conservatives teach the old course in Java syntax. The radicals restructure the course to include Graphical User Interfaces (GUIs) and concurrency. I prefer a ``conservatively radical'' middle ground where I use modern GUI programs to teach the old course concepts. I write GUI/concurrent code and ask my students to complete the program by supplying a particular class or two. Thus, they work on interesting problems without having to understand the details of how my code works. And in the process, they get a practical introduction to the modern programming experience of writing a small piece of a much larger program, allowing me to emphasize abstraction early.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Reilly:2000:JQH, author = "David Reilly", title = "{Java Q\&A}: How Do {I} User Servlets for State and Session Management?", journal = j-DDJ, volume = "25", number = "5", pages = "111--115", month = may, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:15 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_05/jqa500.txt; http://www.ddj.com/ftp/2000/2000_05/jqa500.zip", abstract = "How do you use Servlets for state and session management? David shows you how. Additional resources include jqa500.txt (listings) and jqa500.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Reinholtz:2000:JWF, author = "Kirk Reinholtz", title = "{Java} will be faster than {C++}", journal = j-SIGPLAN, volume = "35", number = "2", pages = "25--28", year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:14 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Reinholtz:2000:TCJ, author = "Kirk Reinholtz", title = "Technical Correspondence: {Java} will be faster than {C++}", journal = j-SIGPLAN, volume = "35", number = "2", pages = "25--28", month = feb, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Sep 26 17:06:07 MDT 2000", bibsource = "http://ftp.informatik.rwth-aachen.de/dblp/db/journals/sigplan/sigplan35.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ftp.informatik.rwth-aachen.de/dblp/db/indices/a-tree/r/Reinholtz:Kirk.html", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Renaud:2000:HNI, author = "Karen Renaud", title = "{HERCULE}: Non-invasively Tracking {Java} {TM} Component-Based Application Activity", journal = j-LECT-NOTES-COMP-SCI, volume = "1850", pages = "447--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1850.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1850/18500447.htm; http://link.springer-ny.com/link/service/series/0558/papers/1850/18500447.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Richter:2000:IYA, author = "Mathias W. Richter", title = "{Iava}: yet another interpreter for scripting within the {Java} platform", journal = j-SPE, volume = "30", number = "2", pages = "81--106", month = feb, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/(SICI)1097-024X(200002)30:2<81::AID-SPE287>3.0.CO;2-Q", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:45:13 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/69503461/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=69503461&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Robbins:2000:EBB, author = "Steven Robbins", title = "Experimentation with bounded buffer synchronization", journal = j-SIGCSE, volume = "32", number = "1", pages = "330--334", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331880", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Undergraduates are usually introduced to synchronization in operating systems through a discussion of classical problems such as reader-writer or producers-consumers. The traditional approach to teaching these topics is not effective in conveying to students how programs with incorrect synchronization actually behave. This paper introduces a simple probabilistic model for synchronization failure and shows how students can empirically study these issues. These activities are supported by a simulator that students can use to explore synchronization in the context of the bounded buffer problem. The simulator is written in Java and can be used either standalone or from a standard browser. Students can save the data and graphs generated by the simulator in a log file in HTML format.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Robbins:2000:RLJ, author = "Steven Robbins", title = "Remote logging in {Java} using {Jeli}: a facility to enhance development of accessible educational software", journal = j-SIGCSE, volume = "32", number = "1", pages = "114--118", month = mar, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/331795.331830", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Mon Nov 19 10:05:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The combination of Java and the World Wide Web has opened up new opportunities for teaching at all levels. It is now possible to assume that all students in a class have access to the web through a browser that supports the Java language and a standard subset of the GUI API. One of the drawbacks of using Java through a browser is the lack of a standardized safe way for a Java applet to access resources on the local machine. Security measures prevent the applet from storing information generated by the applet on the local machine. The Jeli package contains a logging facility that allows an applet to store files either locally (if permitted) or on the server from which the applet was loaded. Jeli logging makes it significantly easier for instructors to develop applets that can permanently store information generated by user interaction with the application. The log can then be used by the student for study or the instructor for grading.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Robillard:2000:DRJ, author = "Martin P. Robillard and Gail C. Murphy", title = "Designing robust {Java} programs with exceptions", journal = j-SIGSOFT, volume = "25", number = "6", pages = "2--10", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355046", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Exception handling mechanisms are intended to help developers build robust systems. Although an exception handling mechanism provides a basis for structuring source code dealing with unusual situations, little information is available to help guide a developer in the appropriate application of the mechanism. In our experience, this lack of guidance leads to complex exception structures. In this paper, we reflect upon our experiences using the Java exception handling mechanism. Based on these experiences, we discuss two issues we believe underlie the difficulties encountered: exceptions are a global design problem, and exception sources are often difficult to predict in advance. We then describe a design approach, based on work by Litke for Ada programs, which we have used to simplify exception structure in existing Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Roelofs:2000:JCC, author = "Brian Roelofs", title = "{Java} Custom Class Loaders", journal = j-DDJ, volume = "25", number = "6", pages = "74, 76, 78, 80, 82", month = jun, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:15 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_06/javaload.txt; http://www.ddj.com/ftp/2000/2000_06/javaload.zip", abstract = "Custom class loaders create new possibilities for dynamic applications. Brian discusses how you can create your own class loader to read and load classes into the Java VM from any data source. Additional resources include javaload.txt (listings) and javaload.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Rojas:2000:SKZ, author = "Raul Rojas", title = "Simulating {Konrad Zuse}'s Computers", journal = j-DDJ, volume = "25", number = "9", pages = "64, 66--69", month = sep, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_09/z3.zip", abstract = "Raul presents a working simulation (written in Java) of Konrad Zuse's Z3 computer, originally created in 1938. The real Z3 consisted purely of electromechanical relays, but was ready and operational in 1941 -- four years before the ENIAC. Additional resources include z3.zip (bytecodes).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InProceedings{Roseman:2000:PTJ, author = "Mark Roseman", title = "{Proxy Tk}: a {Java} Applet User Interface Toolkit for {Tcl}", crossref = "USENIX:2000:PUT", pages = "??--??", year = "2000", bibdate = "Wed Oct 16 05:17:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://db.usenix.org/publications/library/proceedings/tcl2k/roseman.html", acknowledgement = ack-nhfb, } @Book{Rossbach:2000:JSS, author = "Peter Rossbach and Hendrik Schreiber", title = "{Java} Server and Servlets: Building Portable {Web} Applications", publisher = pub-AW, address = pub-AW:adr, pages = "????", year = "2000", ISBN = "0-201-67491-2", ISBN-13 = "978-0-201-67491-0", LCCN = "QA76.73.J38 R68 2000", bibdate = "Wed Feb 21 06:19:33 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$45", acknowledgement = ack-nhfb, } @Article{Rousselle:2000:PSJ, author = "Philip Rousselle and Daniel Greff", title = "Publish, Subscribe, and the {JMS API}", journal = j-DDJ, volume = "25", number = "7", pages = "44, 46, 48, 51", month = jul, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:16 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_07/pubsub.zip", abstract = "The Java Messaging Service API is middleware that supports message passing rather than RPC semantics. Philip and Daniel explore the advantages of publish/subscribe distributed programming by implementing a chatroom application. Additional resources include pubsub.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Ruf:2000:ESR, author = "Erik Ruf", title = "Effective synchronization removal for {Java}", journal = j-SIGPLAN, volume = "35", number = "5", pages = "208--218", month = may, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 17:22:50 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/pldi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/pldi/349299/p208-ruf/p208-ruf.pdf; http://www.acm.org/pubs/citations/proceedings/pldi/349299/p208-ruf/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Rukoz:2000:SJT, author = "M. Rukoz and C. Leon and M. Rivas", title = "{SIMA}: a {Java} Tool for Constructing Image Processing Applications on a Heterogeneous Network", journal = j-PARALLEL-DIST-COMP-PRACT, volume = "3", number = "1", pages = "??--??", month = "????", year = "2000", CODEN = "????", ISSN = "1097-2803", bibdate = "Fri Dec 19 08:14:15 MST 2003", bibsource = "http://www.cs.okstate.edu/~pdcp/vols/vol03/vol03no1.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.cs.okstate.edu/~pdcp/vols/vol03/vol03no1abs.html#rukoz", acknowledgement = ack-nhfb, fjournal = "PDCP: Parallel and Distributed Computing Practices", } @Article{Saddik:2000:JJA, author = "Abdulmotaleb {El Saddik} and Shervin Shirmohammadi and Nicolas D. Georganas and Ralf Steinmetz", title = "{JASMINE}: {Java Application Sharing} in {Multiuser INteractive Environments}", journal = j-LECT-NOTES-COMP-SCI, volume = "1905", pages = "214--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 03 17:21:54 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1905.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1905/19050214.htm; http://link.springer-ny.com/link/service/series/0558/papers/1905/19050214.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Sahni:2000:DSA, author = "Sartaj Sahni", title = "Data structures, algorithms, and applications in {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xxvi + 833", year = "2000", ISBN = "0-07-109217-X", ISBN-13 = "978-0-07-109217-3", LCCN = "QA76.73.J38 S24 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; computer algorithms; data structures (computer science); Java (computer program language)", } @Article{Sanders:2000:UAA, author = "Beverly A. Sanders", title = "Using atomic await commands to develop concurrent programs in {Java}", journal = j-SOFTW-CONCEPTS-TOOLS, volume = "19", number = "4", pages = "168--174", month = oct, year = "2000", CODEN = "SCOTE5", DOI = "https://doi.org/10.1007/s003789900004", ISSN = "0945-8115 (print), 1432-2188 (electronic)", ISSN-L = "0945-8115", bibdate = "Sat Jul 23 06:08:38 MDT 2022", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/structprogram.bib", URL = "https://link.springer.com/article/10.1007/s003789900004", acknowledgement = ack-nhfb, fjournal = "Software --- Concepts and Tools", } @Article{Schaub:2000:TJG, author = "Stephen Schaub", title = "Teaching {Java} with Graphics in {CS1}", journal = j-SIGCSE, volume = "32", number = "2", pages = "71--73", month = jun, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/355354.571919", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:42 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper discusses an approach to teaching basic object-oriented concepts in CS1 using Java graphics. Students first use a simplified turtle graphics API to explore introductory programming issues. Later, they see a real-world example of how inheritance can be used to add functionality to the standard Java Abstracting Windowing Toolkit, to facilitate the construction of sophisticated graphics applications.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Schildt:2000:JPR, author = "Herbert Schildt and Joseph O'Neil", title = "{Java 2} Programmer's Reference", publisher = pub-IDG, address = pub-IDG:adr, pages = "xv + 447", year = "2000", ISBN = "0-07-212354-0", ISBN-13 = "978-0-07-212354-8", LCCN = "QA76.73.J38 S332 2000", bibdate = "Sat Apr 20 11:09:12 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$20", acknowledgement = ack-nhfb, } @Article{Schmietendorf:2000:MBA, author = "Andreas Schmietendorf and Reiner Dumke and Erik Foltin", title = "Metrics based asset assessment", journal = j-SIGSOFT, volume = "25", number = "4", pages = "51--55", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.352347", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The re-use of software components during the software development is considered to be an important factor to improve the quality and productivity and thus to reduce the time to market of the final product. In this paper we will present a proposal for a description model for re-usable components. We will also present the results of case studies concerned with both telecom specific and ``generic'' IT-components. These components have been examined using the description model and a further set of (empirical) criterions. Based on the results a model concept for the empirical assessment of JavaBeans, which is currently under development, is presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Schneider:2000:ICS, author = "G. Michael Schneider and Judith Gersting", title = "Invitation to Computer Science: {Java} Version", publisher = pub-BROOKS-COLE, address = pub-BROOKS-COLE:adr, pages = "xxvii + 734", year = "2000", ISBN = "0-534-37488-3", ISBN-13 = "978-0-534-37488-4", LCCN = "QA76. .S3596 2000", bibdate = "Tue Feb 20 18:46:17 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Contributing author: Sara Baase.", price = "US\$56", acknowledgement = ack-nhfb, xxtitle = "Invitation to Computer Science: {Java} Edition", } @Book{Schussler:2000:BPS, author = "H. Schussler", title = "{BAPI} Programming for {SAP R/3} with {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "????", year = "2000", ISBN = "0-201-67474-2", ISBN-13 = "978-0-201-67474-3", LCCN = "????", bibdate = "Tue Feb 20 18:24:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Serrano:2000:QQS, author = "Mauricio Serrano and Rajesh Bordawekar and Sam Midkiff and Manish Gupta", title = "Quicksilver: a quasi-static compiler for {Java}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "66--82", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p66-serrano/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Sestak:2000:JPP, author = "John Sestak", title = "{Java} Programming Projects", publisher = "South-Western Educational Publishing", address = "Cincinnati, OH, USA", pages = "????", year = "2000", ISBN = "0-538-69404-1", ISBN-13 = "978-0-538-69404-9", LCCN = "QA76.73.J38 S43 2001", bibdate = "Tue Feb 20 18:51:59 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$20", acknowledgement = ack-nhfb, } @MastersThesis{Shankari:2000:HCN, author = "K. Shankari", title = "How to connect {non-Java} devices to a {Jini} network?", type = "Thesis ({M.S.})", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2000", LCCN = "TK5105.5 .S426 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer network architectures; computer network protocols; masters theses -- University of California, Santa Cruz -- computer science", } @Book{Shannon:2000:JPE, author = "Bill Shannon", title = "{Java 2} platform, enterprise edition: platform and component specifications", publisher = pub-AW, address = pub-AW:adr, pages = "xxxiv + 748", year = "2000", ISBN = "0-201-70456-0", ISBN-13 = "978-0-201-70456-3", LCCN = "QA76.73.J38 J35945 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Shelekhov:2000:DFA, author = "Vladimir I. Shelekhov and Sergey V. Kuksenko", title = "Data Flow Analysis of {Java} Programs in the Presence of Exceptions", journal = j-LECT-NOTES-COMP-SCI, volume = "1755", pages = "389--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:16:08 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1755.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1755/17550389.htm; http://link.springer-ny.com/link/service/series/0558/papers/1755/17550389.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Shi:2000:MAS, author = "Hongchi Shi and Yi Shang and Su-Shing Chen", title = "A multi-agent system for computer science education", journal = j-SIGCSE, volume = "32", number = "3", pages = "1--4", month = sep, year = "2000", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/353519.343051", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:43 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In this paper, we present a multi-agent system for supporting student-centered, self-paced, and highly interactive learning in undergraduate computer science education. The system is based on a hybrid problem-based and case-based learning model, for both creative problem solving and mechanical experience simulation. It aims at enhancing the effectiveness of the undergraduate learning experience in computer science. Implemented using the prevalent Internet, Web, and digital library technologies, the system adopts an open architecture design and targets at large-scale, distributed operations. In the initial implementation of the system, a number of prototypes using different Java-based software environments have been developed. They offer tradeoffs in system performance and design complexity.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Shields:2000:JCB, author = "Matthew S. Shields and Omer F. Rana and David W. Walker and Maozhen Li and David Golby", title = "A {Java\slash CORBA}-based visual program composition environment for {PSEs}", journal = j-CPE, volume = "12", number = "8", pages = "687--704", month = jul, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200007)12:8<687::AID-CPE505>3.0.CO;2-P", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516220/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516220&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Shirazi:2000:JPT, author = "Jack Shirazi", title = "{Java} performance tuning", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiv + 426", year = "2000", ISBN = "0-596-00015-4", ISBN-13 = "978-0-596-00015-8", LCCN = "QA76.73.J38 S47 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Manual{Siberz:2000:CCJ, author = "Ken Siberz", title = "From {C\slash C++} to {Java}: fast transition: {July 19--21, 2000, Engineering 819.315}", publisher = "University of California, Los Angeles, Dept. of Engineering, Information Systems and Technical Management, Short Course Program", address = "Los Angeles, CA, USA", pages = "various", year = "2000", LCCN = "QAX 236", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Cover title.", acknowledgement = ack-nhfb, } @Article{Silva:2000:HPC, author = "Lu{\'\i}s Moura Silva and Paulo Martins and Jo{\~a}o Gabriel Silva", title = "Heterogeneous parallel computing using {Java} and {WMPI}", journal = j-CPE, volume = "12", number = "11", pages = "1077--1091", month = sep, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200009)12:11<1077::AID-CPE521>3.0.CO;2-#", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:10 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76000189/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76000189&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Sintes:2000:XSC, author = "Tony Sintes", title = "{XML} and Software Configuration", journal = j-DDJ, volume = "25", number = "7", pages = "56, 58--62", month = jul, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:16 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_07/xmlcfg.txt; http://www.ddj.com/ftp/2000/2000_07/xmlcfg.zip", abstract = "Tony explores software configuration and how it relates to XML. In the process, he presents an XML configuration markup language and Java framework that you can use as the basis for any Java configuration engine. Additional resources include xmlcfg.txt (listings) and xmlcfg.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Sirer:2000:UPG, author = "Emin Gu{\"u}n Sirer and Brian N. Bershad", title = "Using Production Grammars in Software Testing", journal = j-SIGPLAN, volume = "35", number = "1", pages = "1--13", year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Mar 21 15:38:27 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java; lava", } @Book{Skansholm:2000:JB, author = "Jan Skansholm", title = "{Java} from the beginning", publisher = pub-AW, address = pub-AW:adr, pages = "xiv + 540", year = "2000", ISBN = "0-201-39812-5 (paperback)", ISBN-13 = "978-0-201-39812-0 (paperback)", LCCN = "QA76.73.J38 S593 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Slack:2000:PPS, author = "James M. (James Michael) Slack", title = "Programming and problem solving with {Java}", publisher = pub-BROOKS-COLE, address = pub-BROOKS-COLE:adr, pages = "xii + 1137", year = "2000", ISBN = "0-534-37486-7", ISBN-13 = "978-0-534-37486-0", LCCN = "QA76.73.J38 S595 2000", bibdate = "Tue Feb 20 18:39:03 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$61", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Snelting:2000:UCH, author = "Gregor Snelting and Frank Tip", title = "Understanding class hierarchies using concept analysis", journal = j-TOPLAS, volume = "22", number = "3", pages = "540--582", year = "2000", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Apr 17 10:05:24 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/toplas/2000-22-3/p540-snelting/p540-snelting.pdf; http://www.acm.org/pubs/citations/journals/toplas/2000-22-3/p540-snelting/", abstract = "A new method is presented for analyzing and reengineering class hierarchies. In our approach, a class hierarchy is processed along with a set of applications that use it, and a fine-grained analysis of the access and subtype relationships between objects, variables, and class members is performed. The result of this analysis is again a class hierarchy, which is guaranteed to be behaviorally equivalent to the original hierarchy, but in which each object only contains the members that are required. Our method is semantically well-founded in {\em concept analysis\/}: the new class hierarchy is a minimal and maximally factorized {\em concept lattice\/} that reflects the access and subtype relationships between variables, objects and class members. The method is primarily intended as a tool for finding imperfections in the design of class hierarchies, and can be used as the basis for tools that largely automate the process of reengineering such hierarchies. The method can also be used as a space-optimizing source-to-source transformation that removes redundant fields from objects. A prototype implementation for Java has been constructed, and used to conduct several case studies. Our results demonstrate that the method can provide valuable insights into the usage of a class hierarchy in a specific context, and lead to useful restructuring proposals.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", generalterms = "Algorithms; Documentation; Experimentation; Languages; Theory", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "class hierarchy reengineering; concept analysis", subject = "Software --- Software Engineering --- Distribution, Maintenance, and Enhancement (D.2.7): {\bf Restructuring, reverse engineering, and reengineering}; Software --- Programming Languages --- Language Constructs and Features (D.3.3): {\bf Classes and objects}; Theory of Computation --- Logics and Meanings of Programs --- Semantics of Programming Languages (F.3.2): {\bf Program analysis}", } @Book{Sowizral:2000:JAS, author = "Henry A. Sowizral and Kevin Rushforth and Michael Deering", title = "The {Java 3D API} specification", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxii + 653", year = "2000", ISBN = "0-201-71041-2 (paperback/CD-ROM)", ISBN-13 = "978-0-201-71041-0 (paperback/CD-ROM)", LCCN = "T385 .S6575 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "computer graphics; Java (computer program language)", } @Article{Stankovic:2000:EJI, author = "Nenad Stankovic and Kang Zhang", title = "An evaluation of {Java} implementations of message-passing", journal = j-SPE, volume = "30", number = "7", pages = "741--763", month = jun, year = "2000", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/(SICI)1097-024X(200006)30:7<741::AID-SPE315>3.0.CO;2-6", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:45:46 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72001830/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72001830&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Stankovic:2000:OJS, author = "Nenad Stankovic", title = "An open {Java} system for {SPMD} programming", journal = j-CPE, volume = "12", number = "11", pages = "1051--1076", month = sep, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200009)12:11<1051::AID-CPE520>3.0.CO;2-M", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:10 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76000192/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76000192&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @TechReport{Stark:2000:PBV, author = "R. F. St{\"a}rk and J. Schmid", title = "The Problem of Bytecode Verification in Current Implementations of the {JVM}", type = "Technical Report", institution = "Department of Computer Science, ETH Z{\"u}rich", address = "Z{\"u}rich, Switzerland", year = "2000", bibdate = "Thu Dec 01 07:10:12 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{Steflik:2000:AJN, author = "Richard Steflik and Prashant Sridharan", title = "Advanced {Java} Networking", publisher = pub-PH, address = pub-PH:adr, pages = "xxiv + 399", year = "2000", ISBN = "0-13-084466-7", ISBN-13 = "978-0-13-084466-8", LCCN = "QA76.73.J38 S83 2000", bibdate = "Tue Feb 20 18:20:44 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$45", acknowledgement = ack-nhfb, } @InProceedings{Sterbenz:2000:PAC, author = "Andreas Sterbenz and Peter Lipp", title = "Performance of the {AES} Candidate Algorithms in {Java}", crossref = "NIST:2000:TAE", pages = "161--168", year = "2000", bibdate = "Wed Feb 07 19:03:41 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Steven:2000:JCR, author = "John Steven and Pravir Chandra and Bob Fleck and Andy Podgurski", title = "{jRapture}: a Capture\slash Replay tool for observation-based testing", journal = j-SIGSOFT, volume = "25", number = "5", pages = "158--167", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348993", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "We describe the design of jRapture: a tool for capturing and replaying Java program executions in the field. jRapture works with Java binaries (byte code) and any compliant implementation of the Java virtual machine. It employs a lightweight, transparent capture process that permits unobtrusive capture of a Java programs executions. jRapture captures interactions between a Java program and the system, including GUI, file, and console inputs, among other types, and on replay it presents each thread with exactly the same input sequence it saw during capture. In addition, jRapture has a profiling interface that permits a Java program to be instrumented for profiling --- after its executions have been captured. Using an XML-based profiling specification language a tester can specify various forms of profiling to be carried out during replay.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stevens:2000:CPP, author = "Al Stevens", title = "{C} Programming: The {S} Programming Language", journal = j-DDJ, volume = "25", number = "2", pages = "110--113", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See comment on another {S} language \cite{Kautz:2000:LLI}.", URL = "http://www.ddj.com/ftp/2000/2000_02/cprog220.txt", abstract = "Al resurrects S, a homebrew C variant he implemented a decade ago -- back before the days of JavaScript and VB. His updated version is written in C++, and includes a shell program that tests the interpreter by loading and executing text source-code files written in the S language. Additional resources include cprog220.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", xxnote = "This is NOT the statistics programming language that predated S-Plus; I wrote to the author and pointed out the name conflict.", } @Article{Suganuma:2000:OIJ, author = "T. Suganuma and T. Ogasawara and M. Takeuchi and T. Yasue and M. Kawahito and K. Ishizaki and H. Komatsu and T. Nakatani", title = "Overview of the {IBM Java Just-in-Time Compiler}", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "175--193", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.almaden.ibm.com/journal/sj/391/suganuma.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", } @Article{Sundaresan:2000:PVM, author = "Vijay Sundaresan and Laurie Hendren and Chrislain Razafimahefa and Raja Vall{\'e}e-Rai and Patrick Lam and Etienne Gagnon and Charles Godin", title = "Practical virtual method call resolution for {Java}", journal = j-SIGPLAN, volume = "35", number = "10", pages = "264--280", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p264-sundaresan/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Sweeney:2000:ELB, author = "Peter F. Sweeney and Frank Tip", title = "Extracting library-based object-oriented applications", journal = j-SIGSOFT, volume = "25", number = "6", pages = "98--107", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355059", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In an increasingly popular model of software distribution, software is developed in one computing environment and deployed in other environments by transfer over the internet. Extraction tools perform a static whole-program analysis to determine unused functionality in applications in order to reduce the time required to download applications. We have identified a number of scenarios where extraction tools require information beyond what can be inferred through static analysis: software distributions other than complete applications, the use of reflection, and situations where an application uses separately developed class libraries. This paper explores these issues, and introduces a modular specification language for expressing the information required for extraction. We implemented this language in the context of Jax, an industrial-strength application extractor for Java, and present a small case study in which different extraction scenarios are applied to a commercially available library-based application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Tamura:2000:DWP, author = "Randall A. Tamura", title = "{Domino 5 Web} Programming With {XML}, {Java} and {JavaScript}", publisher = pub-QUE, address = pub-QUE:adr, pages = "xvi + 912", year = "2000", ISBN = "0-7897-2275-5", ISBN-13 = "978-0-7897-2275-1", LCCN = "QA76.625 .T36 2000", bibdate = "Wed Feb 21 06:28:14 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, subject = "Internet programming; Web sites; Design; XML (Document markup language); Java (Computer program language)", } @Article{Tan:2000:PEN, author = "Kian-Lee Tan and Cheng Hian Goh and Beng Chin Ooi", title = "Progressive evaluation of nested aggregate queries", journal = j-VLDB-J, volume = "9", number = "3", pages = "261--278", month = dec, year = "2000", CODEN = "VLDBFR", ISSN = "1066-8888 (print), 0949-877X (electronic)", ISSN-L = "1066-8888", bibdate = "Mon Jun 23 10:50:54 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In many decision-making scenarios, decision makers require rapid feedback to their queries, which typically involve aggregates. The traditional {\em blocking execution model\/} can no longer meet the demands of these users. One promising approach in the literature, called {\em online aggregation}, evaluates an aggregation query progressively as follows: as soon as certain data have been evaluated, approximate answers are produced with their respective running confidence intervals; as more data are examined, the answers and their corresponding running confidence intervals are refined. In this paper, we extend this approach to handle nested queries with aggregates (i.e., at least one inner query block is an aggregate query) by providing users with (approximate) answers progressively as the inner aggregation query blocks are evaluated. We address the new issues pose by nested queries. In particular, the answer space begins with a superset of the final answers and is refined as the aggregates from the inner query blocks are refined. For the intermediary answers to be meaningful, they have to be interpreted with the aggregates from the inner queries. We also propose a {\em multi-threaded model\/} in evaluating such queries: each query block is assigned to a thread, and the threads can be evaluated concurrently and independently. The time slice across the threads is {\em nondeterministic\/} in the sense that the user controls the relative rate at which these subqueries are being evaluated. For {\em enumerative\/} nested queries, we propose a priority-based evaluation strategy to present answers that are certainly in the final answer space first, before presenting those whose validity may be affected as the inner query aggregates are refined. We implemented a prototype system using Java and evaluated our system. Results for nested queries with a level and multiple levels of nesting are reported. Our results show the effectiveness of the proposed mechanisms in providing progressive feedback that reduces the initial waiting time of users significantly without sacrificing the quality of the answers.", acknowledgement = ack-nhfb, fjournal = "VLDB Journal: Very Large Data Bases", journal-URL = "http://portal.acm.org/toc.cfm?id=J869", keywords = "approximate answers; multi-threading; nested aggregate queries; online aggregation; progressive query processing", } @Article{Tempero:2000:SMI, author = "Ewan Tempero and Robert Biddle", title = "Simulating multiple inheritance in {Java}", journal = j-J-SYST-SOFTW, volume = "55", number = "1", pages = "87--100", day = "5", month = nov, year = "2000", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed Apr 18 06:31:07 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/01641212; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/29/11/54/28/32/abstract.html; http://www.elsevier.nl/gej-ng/10/29/11/54/28/32/article.pdf", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Tennebo:2000:EJE, author = "Frode Tenneb{\o}", title = "Elegance of {Java} and the Efficiency of {C++} --- It's {Ada}", journal = j-LINUX-J, volume = "80", pages = "174--176", month = dec, year = "2000", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Wed Nov 22 06:52:01 MST 2000", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue80/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Tenneb{\o} recommends taking a look at Ada.", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Book{Thau:2000:BJ, author = "Dave Thau", title = "The Book of {JavaScript}: a practical guide to interactive {Web} pages", publisher = pub-NO-STARCH, address = pub-NO-STARCH:adr, pages = "xix + 397", year = "2000", ISBN = "1-886411-36-0", ISBN-13 = "978-1-886411-36-4", LCCN = "QA76.73.J39 T37 2000", bibdate = "Fri May 04 15:53:27 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Thiruvathukal:2000:JNW, author = "George K. Thiruvathukal and Phillip M. Dickens and Shahzad Bhatti", title = "{Java} on networks of workstations {(JavaNOW)}: a parallel computing framework inspired by {Linda} and the {Message Passing Interface (MPI)}", journal = j-CPE, volume = "12", number = "11", pages = "1093--1116", month = sep, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200009)12:11<1093::AID-CPE522>3.0.CO;2-6", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sat Apr 7 06:56:10 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76000187/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76000187&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Topley:2000:CSA, author = "Kim Topley", title = "Core {Swing}: Advanced Programming", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxvii + 930", year = "2000", ISBN = "0-13-083292-8", ISBN-13 = "978-0-13-083292-4", LCCN = "A76.9.U83 T66 2000", bibdate = "Wed Jun 02 16:57:19 1999", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, xxtitle = "Core {JFC}", } @Article{Tost:2000:UJC, author = "A. Tost and V. M. Johnson", title = "Using {JavaBeans} components as accessors to {Enterprise JavaBeans} components", journal = j-IBM-SYS-J, volume = "39", number = "2", pages = "293--300", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Sep 25 06:33:35 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/sj39-2.html", URL = "http://www.research.ibm.com/journal/sj/392/tost.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0138", } @Article{Travers:2000:JQW, author = "Michael Travers", title = "{Java Q\&A}: What is Interactive Scripting?", journal = j-DDJ, volume = "25", number = "1", pages = "103, 105--111", month = jan, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_01/jqa120.txt", abstract = "What is interactive scripting and what does it have to do with Java? Michael answers this question, as he presents Skij, an interactive scripting language for the Java environment. Additional resources include jqa120.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Tremblett:2000:IJP, author = "Paul Tremblett", title = "Instant {JavaServer} Pages", publisher = pub-OSBORNE, address = pub-OSBORNE:adr, pages = "xiii + 507", year = "2000", ISBN = "0-07-212601-9", ISBN-13 = "978-0-07-212601-3", LCCN = "TK5105.8885.J38 T74 2000", bibdate = "Thu Jan 18 06:06:20 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.instantjsp.com/", acknowledgement = ack-nhfb, } @Article{Tucker:2000:LEP, author = "Andrew Tucker and Edoardo Comar and Scott Meyers and Yves Piguet and Kevin Ruland and Greg Hadaller and Jonathan Erickson and Mike Zhilin and Todd Stephan", title = "Letters: Editor Preferences; {Java} Enums; Labor Union Harassment; Smart Pointer Update; Traveling Salesman; Granting Block Grant; Porting to {CE}; Analyzing Algorithms", journal = j-DDJ, volume = "25", number = "1", pages = "10, 12", month = jan, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Turner:2000:HJP, author = "Shane E. Turner and Karl Barksdale", title = "{HTML} and {JavaScript}: programming concepts", publisher = pub-ITP, address = pub-ITP:adr, pages = "xi + 154", year = "2000", ISBN = "0-538-68822-X", ISBN-13 = "978-0-538-68822-2", LCCN = "????", bibdate = "Wed May 08 08:45:42 2002", bibsource = "ftp://www.math.utah.edu/pub/tex/bib/sgml.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, alttitle = "HTML and Javascript", annote = "20+ hours to complete.", keywords = "HTML (Document markup language); Java (computer program language); JavaScript (Computer program language)", xxauthor = "E. Shane Turner and Karl Barksdale", } @InProceedings{vandenBercken:2000:JXP, author = "Jochen van den Bercken and Jens-Peter Dittrich and Bernhard Seeger", title = "{javax.XXL}: a prototype for a library of query processing algorithms", crossref = "Chen:2000:PAS", pages = "588--588", year = "2000", bibdate = "Wed Oct 25 08:47:39 MDT 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/sigmod_pods/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/mod/342009/p588-van_den_bercken/", acknowledgement = ack-nhfb, } @InProceedings{vanDoorn:2000:SJV, author = "Leendert van Doorn", title = "A Secure {Java{\TM} Virtual Machine}", crossref = "USENIX:2000:PNU", pages = "??--??", year = "2000", bibdate = "Wed Oct 16 05:17:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/sec2000/vandoorn.html", acknowledgement = ack-nhfb, } @Book{Vermeulen:2000:EJS, author = "Allan Vermeulen and Scott W. Ambler and Greg Bumgardner and Eldon Metz and Trevor Misfeldt and Jim Shur and Patrick Thompson", title = "The Elements of {Java} Style", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, pages = "xiii + 128", year = "2000", ISBN = "0-521-77768-2", ISBN-13 = "978-0-521-77768-1", LCCN = "QA76.73.J38 E44 2000", bibdate = "Wed Apr 05 06:42:22 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$12.95", acknowledgement = ack-nhfb, } @Article{Viega:2000:SSJ, author = "John Viega and Tom Mutdosch and Gary McGraw and Edward W. Felten", title = "Statically Scanning {Java} Code: Finding Security Vulnerabilities", journal = j-IEEE-SOFTWARE, volume = "17", number = "5", pages = "68--74", month = sep # "\slash " # oct, year = "2000", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/52.877869", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Wed Nov 1 17:47:36 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://computer.org/software/so/s5068abs.htm; http://dlib.computer.org/so/books/so2000/pdf/s5068.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Vilar:2000:JQW, author = "Alexandre Sieira Vilar", title = "{Java Q\&A}: What's Object Pooling All About?", journal = j-DDJ, volume = "25", number = "8", pages = "123--124, 126, 128, 130", month = aug, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:16 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_08/jqa800.txt; http://www.ddj.com/ftp/2000/2000_08/jqa800.zip", abstract = "Object pooling can be used very effectively to reduce the number of garbage collection executions in a Java application. And that reduction can deliver benefits in terms of reduced processor usage and the absence of unpredictable delays. Additional resources include jqa800.rtf (listings) and jqa800.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Viroli:2000:PPJ, author = "Mirko Viroli and Antonio Natali", title = "Parametric polymorphism in {Java}: an approach to translation based on reflective features", journal = j-SIGPLAN, volume = "35", number = "10", pages = "146--165", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p146-viroli/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Viswanathan:2000:JVM, author = "D. Viswanathan and S. Liang", title = "{Java Virtual Machine Profiler Interface}", journal = j-IBM-SYS-J, volume = "39", number = "1", pages = "82--95", month = "????", year = "2000", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Mon Apr 24 15:43:02 MDT 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.research.ibm.com/journal/sj/391/viswanathan.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0137", } @Article{Wadler:2000:GGJ, author = "Philip Wadler", title = "{GJ}: {A Generic Java}", journal = j-DDJ, volume = "25", number = "2", pages = "23--26, 28", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_02/gj.txt", abstract = "Generic Java (GJ) adds generic types to the Java language. GJ is compatible with Java, the Java Virtual Machine, and existing libraries. It is also efficient, in that information about generic types is maintained only at compile time, not run time. Additional resources include gj.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Walker:2000:ICE, author = "Robert J. Walker and Gail C. Murphy", title = "Implicit context: easing software evolution and reuse", journal = j-SIGSOFT, volume = "25", number = "6", pages = "69--78", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355054", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems should consist of simple, conceptually clean software components interacting along narrow, well-defined paths. All too often, this is not reality: complex components end up interacting for reasons unrelated to the functionality they provide. We refer to knowledge within a component that is not conceptually required for the individual behaviour of that component as extraneous embedded knowledge (EEK). EEK creeps into a system in many forms, including dependences upon particular names and the passing of extraneous parameters. This paper proposes the use of implicit context as a means for reducing EEK in systems by combining a mechanism to reflect upon what has happened in a system, through queries on the call history, with a mechanism for altering calls to and from a component. We demonstrate the benefits of implicit context by describing its use to reduce EEK in the Java{\TM} Swing library.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wallach:2000:SSM, author = "Dan S. Wallach and Andrew W. Appel and Edward W. Felten", title = "{SAFKASI}: a security mechanism for language-based systems", journal = j-TOSEM, volume = "9", number = "4", pages = "341--378", month = oct, year = "2000", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Fri Apr 20 08:21:35 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tosem/2000-9-4/p341-wallach/p341-wallach.pdf; http://www.acm.org/pubs/citations/journals/tosem/2000-9-4/p341-wallach/", abstract = "In order to run untrusted code in the same process as trusted code, there must be a mechanism to allow dangerous calls to determine if their caller is authorized to exercise the privilege of using the dangerous routine. Java systems have adopted a technique called stack inspection to address this concern. But its original definition, in terms of searching stack frames, had an unclear relationship to the actual achievement of security, overconstrained the implementation of a Java system, limited many desirable optimizations such as method inlining and tail recursion, and generally interfered with interprocedural optimization. We present a new semantics for stack inspection based on a belief logic and its implementation using the calculus of {\em security-passing style\/} which addresses the concerns of traditional stack inspection. With security-passing style, we can efficiently represent the security context for any method activation, and we can build a new implementation strictly by rewriting the Java bytecodes before they are loaded by the system. No changes to the JVM or bytecode semantics are necessary. With a combination of static analysis and runtime optimizations, our prototype implementation shows reasonable performance (although traditional stack inspection is still faster), and is easier to consider for languages beyond Java. We call our system SAFKASI (the Security Architecture Formerly Known as Stack Inspection).", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", generalterms = "Design; Languages; Security", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "access control; applets; Internet; Java; security-passing style; stack inspection; WWW", subject = "Software --- Programming Techniques --- Object-oriented Programming (D.1.5); Software --- Software Engineering --- General (D.2.0): {\bf Protection mechanisms}; Software --- Programming Languages --- Language Classifications (D.3.2): {\bf Object-oriented languages}; Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Access controls}; Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Authentication}", } @Book{Walsh:2000:JB, author = "Aaron Walsh and Justin Couch and Daniel H. Steinberg", title = "{Java 2} Bible", publisher = pub-IDG, address = pub-IDG:adr, pages = "xxx + 905", year = "2000", ISBN = "0-7645-4632-5", ISBN-13 = "978-0-7645-4632-7", LCCN = "QA76.73.J38 W3575 2000", bibdate = "Wed Feb 21 06:29:48 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$40", acknowledgement = ack-nhfb, } @Book{Watt:2000:PLP, author = "David A. (David Anthony) Watt and Deryck F. Brown", title = "Programming language processors in {Java}: compilers and interpreters", publisher = pub-PH, address = pub-PH:adr, pages = "xvi + 436", year = "2000", ISBN = "0-13-025786-9 (case)", ISBN-13 = "978-0-13-025786-4 (case)", LCCN = "QA76.73.J38 W385 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "compilers (computer programs); interpreters (computer programs); Java (computer program language)", } @Book{Wear:2000:JSW, author = "William Wear", title = "{Java} Security On the {Web}", publisher = pub-PH, address = pub-PH:adr, pages = "????", year = "2000", ISBN = "0-13-010793-X", ISBN-13 = "978-0-13-010793-0", LCCN = "????", bibdate = "Tue Feb 20 18:54:31 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Weis:2000:HMD, author = "R{\"u}diger Weis and J{\"u}rgen Vogel and Wolfgang Effelsberg and Werner Geyer and Stefan Lucks", title = "How to Make a Digital Whiteboard Secure --- Using {Java} Cards for Multimedia Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "1905", pages = "187--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:46 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1905.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1905/19050187.htm; http://link.springer-ny.com/link/service/series/0558/papers/1905/19050187.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Welsh:2000:ARS, author = "Matt Welsh and David Culler", title = "Achieving Robust, Scalable Cluster {I/O} in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1915", pages = "16--??", year = "2000", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:51 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1915.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1915/19150016.htm; http://link.springer-ny.com/link/service/series/0558/papers/1915/19150016.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Welsh:2000:JEE, author = "Matt Welsh and David Culler", title = "{Jaguar}: enabling efficient communication and {I/O} in {Java}", journal = j-CPE, volume = "12", number = "7", pages = "519--538", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:7<519::AID-CPE497>3.0.CO;2-M", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:07 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72516211/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72516211&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Book{Weltman:2000:LPJ, author = "Rob Weltman and Tony Dahbura", title = "{LDAP} programming with {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxi + 692", year = "2000", ISBN = "0-201-65758-9", ISBN-13 = "978-0-201-65758-6", LCCN = "QA76.73.J38 W47 2000", bibdate = "Tue Feb 20 18:39:03 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer network protocols; Java (computer program language)", } @Book{Whelan:2000:MVA, author = "Paul F. Whelan and Derek Molloy", title = "Machine vision algorithms in {Java}: techniques and implementation", publisher = pub-SV, address = pub-SV:adr, pages = "xvii + 284", year = "2000", ISBN = "1-85233-218-2", ISBN-13 = "978-1-85233-218-1", LCCN = "TA1634 .W54 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer algorithms; computer vision; Java (computer program language)", } @Book{Wiener:2000:FOD, author = "Richard Wiener and Lewis Pinson", title = "Fundamentals of {OOP} and Data Structures in {Java}", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, pages = "xv + 463", year = "2000", ISBN = "0-521-66220-6", ISBN-13 = "978-0-521-66220-8", LCCN = "QA76.73.J38 W53 2000", bibdate = "Wed Feb 21 06:30:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Article{Williams:2000:TII, author = "Al Williams", title = "The {TINI Internet} Interface", journal = j-DDJ, volume = "25", number = "10", pages = "82, 84, 86, 88", month = oct, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:24 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2000/2000_10/tini.txt", abstract = "Need to build an Internet appliance? Dallas Semiconductor's Tiny InterNet Interface (TINI) board -- that includes a Java-capable CPU, 512 K of nonvolatile memory, and an Ethernet transceiver -- may be the place to start. Additional resources include tini.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2000:PBA, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: All This, and Frequent Flyer Miles, Too!", journal = j-DDJ, volume = "25", number = "2", pages = "135--136", month = feb, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:13 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This month, Greg examines Mastering Algorithms with Perl, by Jon Orwant, Jarkko Hietaniemi, and John Macdonald, Programming for the Java Virtual Machine, by Joshua Engel, Java for Engineers and Scientists, by Stephen J. Chapman, Introductory Java for Scientists and Engineers, by Richard Davies, the C++ Toolkit for Scientists and Engineers, by James T. Smith, Quantum Computing and Communications, by Michael Brooks, and Steven Roman's Learning Word Programming.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2000:PBC, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: Classics Old and New", journal = j-DDJ, volume = "25", number = "11", pages = "159--160", month = nov, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 8 15:09:25 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This month Greg looks at Programming Pearls, Second Edition, by Jon Bentley; Foundations of Multithreaded, Parallel, and Distributing Programming, by Gregory R. Andrews; GUI Bloopers, by Jeff Johnson; The Humane Interface, by Jef Raskin; Legal Battles That Shaped the Software Industry, by Lawrence D. Graham; The World of Scripting Languages, by David Barron; C for Java Programmers, by Tomasz Muldner; and XML Elements of Style, by Simon St. Laurent.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2000:PBS, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: Stirring the Gene Pool", journal = j-DDJ, volume = "25", number = "5", pages = "127, 130", month = may, year = "2000", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Nov 9 08:25:15 MST 2000", bibsource = "http://www.ddj.com/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Greg's roundup this month includes Objects Unencapsulated: Java, Eiffel, and C++?, by Ian Joyner; The Logic Programming Paradigm, by Krzysztof R. Apt, Victor W. Marek, Mirek Truszczynski, and David S. Warren; Quantum Computing and Communications, edited by Michael Brooks; Cambrian Intelligence, by Rodney A. Brooks; Intellectual Property in the Age of Universal Access, by the ACM; Database Design for Smarties, by Robert J. Muller; Designing Maintainable Software, by Dennis D. Smith; and (finally) Automating Windows with Perl, by Scott McMahan.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Winder:2000:DJS, author = "Russ Winder and Graham Roberts", title = "Developing {Java} Software", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xvi + 1004", year = "2000", ISBN = "0-471-60696-0", ISBN-13 = "978-0-471-60696-3", LCCN = "QA76.73.J38 W557 2000", bibdate = "Wed Feb 21 06:31:29 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$50", acknowledgement = ack-nhfb, } @Book{Witten:2000:DMP, author = "Ian H. Witten and Eibe Frank", title = "Data Mining: Practical Machine Learning Tools and Techniques with {Java} implementations", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xxv + 371", year = "2000", ISBN = "1-55860-552-5", ISBN-13 = "978-1-55860-552-7", LCCN = "QA76.9.D343 W58 2000", bibdate = "Fri May 04 17:56:08 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.95", URL = "http://www.mkp.com/books%5Fcatalog/catalog.asp?ISBN=1-55860-489-8#Contents", acknowledgement = ack-nhfb, } @Article{Wittenberg:2000:PTC, author = "Craig H. Wittenberg", title = "Progress in testing component-based software (abstract only)", journal = j-SIGSOFT, volume = "25", number = "5", pages = "178", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349099", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software components enable practical reuse of software parts and amortization of investments over multiple applications. Each part or component is well defined and independently deployable. Composition is the key technique by which systems of software components are constructed. The composition step can be done before or after the delivery of the system. It is this late composition (or at least the possibility of it) which yields the greatest challenges from a testing standpoint. That is, a component-based application may be composed out of parts that were never tested together. Thus the most useful and reliable parts are those which have been tested independently in as many ways as possible. The Component Applications Group in Microsoft Research is developing tools, techniques, and a large component library to enable the development of sophisticated office, home and web-based applications. For the past three and a half years we have been working on two main efforts. First, we have created a prototype of a highly factored (i.e., customizable, flexible, etc.) architecture for the construction of the UI of applications. Our work can be applied to traditional window-ed applications as well as to the look and feel of Web applications. During this effort we have developed a variety of design techniques, two different composition mechanisms, a visual tool for compositions, and have built several application prototypes out of the same set of components. Most of our time has been spent on tools and techniques for building reliable components. Certain pieces of our infrastructure formed the domain in which we tried out our ideas. The first component we tested was one of our composition mechanisms. That was followed by the testing of a dynamic, binary, aspect composition mechanism and of a particularly generic implementation of collection classes. Our well-factored, versioned build system will also be described. All of the results of our work are compatible with COM. The talk will focus on our key lessons in composition, specification, processes, and tools with a particular emphasis on our test harness and our results in testing. A discussion of the last few bugs found in each of several projects should prove interesting. Some comparisons will be made with other projects inside and outside Microsoft. Since we can only claim progress, not perfection, there are still many areas for further research. As an example, we are looking at ways we can use language annotations to simplifying whole classes of problems (e.g., tests for reentrancy). One of the points here is that we can improve our ability to create reliable components by improving the languages used to implement them (like Java has popularized the use of a garbage collector). Another example is that we hope to improve the automation of the sequencing of test cases. Finally, as a tribute to the power of standing on other's shoulders, many of the roots of our ideas will be traced to techniques published elsewhere. You might say we only composed together many already good ideas. Our group includes people who developed COM itself (myself and Tony Williams), many people from within Microsoft who have delivered successful component-based products (e.g., in Visual Studio), and world-renowned component-ologist (:-) Clemens Szyperski who wrote Component Software: Beyond Object-Oriented Programming.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2000:CPG, author = "Peng Wu and David Padua", title = "Containers on the Parallelization of General-Purpose {Java} Programs", journal = j-INT-J-PARALLEL-PROG, volume = "28", number = "6", pages = "589--605", month = dec, year = "2000", CODEN = "IJPPE5", DOI = "https://doi.org/10.1023/A:1007564701813", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 6 16:39:56 MDT 2005", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=28&issue=6; https://www.math.utah.edu/pub/tex/bib/java2000.bib; OCLC Contents1st database", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=28&issue=6&spage=589", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", } @Book{Wutka:2000:SEU, author = "Mark Wutka", title = "Special edition using {Java Server Pages} and servlets", publisher = pub-QUE, address = pub-QUE:adr, pages = "xi + 754", year = "2000", ISBN = "0-7897-2441-3", ISBN-13 = "978-0-7897-2441-0", LCCN = "QA76.73.J38 W87 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); servlets; Web servers", } @Article{Yutaka:2000:EJV, author = "Oiwa Yutaka and Kenjiro Taura and Akinori Yonezawa", title = "Extending {Java} virtual machine with integer-reference conversion", journal = j-CPE, volume = "12", number = "6", pages = "407--422", month = may, year = "2000", CODEN = "CPEXEI", DOI = "https://doi.org/10.1002/1096-9128(200005)12:6<407::AID-CPE482>3.0.CO;2-E", ISSN = "1040-3108", ISSN-L = "1040-3108", bibdate = "Sun Oct 29 16:57:06 MST 2000", bibsource = "http://www.interscience.wiley.com/jpages/1040-3108; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/72515729/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=72515729&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency, practice and experience", } @Article{Zaks:2000:SCJ, author = "Ayal Zaks and Vitaly Feldman and Nava Aizikowitz", title = "Sealed calls in {Java} packages", journal = j-SIGPLAN, volume = "35", number = "10", pages = "83--92", month = oct, year = "2000", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 7 16:57:37 MST 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/oopsla/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/citations/proceedings/oops/353171/p83-zaks/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Zeadally:2000:IPQ, author = "S. Zeadally", title = "Implementation and Performance of {QoS}-aware {Java} Applications over {ATM} Networks", journal = j-COMP-J, volume = "43", number = "4", pages = "266--273", month = "????", year = "2000", CODEN = "CMPJA6", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Tue Nov 14 07:02:08 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_04/", URL = "http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_04/430266.sgm.abs.html; http://www3.oup.co.uk/computer_journal/hdb/Volume_43/Issue_04/pdf/430266.pdf", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Zeadally:2000:PEJ, author = "S. Zeadally", title = "Performance evaluation of a {Java}-based networking {Application Programming Interface (API)}", journal = j-INFO-PROC-LETT, volume = "75", number = "5", pages = "199--209", day = "31", month = oct, year = "2000", CODEN = "IFPLAT", ISSN = "0020-0190 (print), 1872-6119 (electronic)", ISSN-L = "0020-0190", bibdate = "Thu Oct 12 06:44:40 MDT 2000", bibsource = "http://www.elsevier.com:80/inca/publications/store/5/0/5/6/1/2/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/23/20/64/30/27/abstract.html; http://www.elsevier.nl/gej-ng/10/23/20/64/30/27/article.pdf", acknowledgement = ack-nhfb, fjournal = "Information Processing Letters", journal-URL = "http://www.sciencedirect.com/science/journal/00200190", } @Book{Adams:2001:JIC, author = "Joel Adams and Larry R. Nyhoff and Jeffrey Nyhoff", title = "{Java}: An Introduction to Computing", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "lvi + 945", year = "2001", ISBN = "0-13-014251-4", ISBN-13 = "978-0-13-014251-1", LCCN = "QA76.73.J38 A33 2001", bibdate = "Fri Apr 13 15:29:10 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$70.00", URL = "http://www.phptr.com/ptrbooks/esm_0130142514.html", acknowledgement = ack-nhfb, } @Book{Ahmed:2001:PJX, author = "Kal Ahmed", title = "{Professional Java XML}", publisher = pub-WROX, address = pub-WROX:adr, pages = "xv + 1159", year = "2001", ISBN = "1-86100-401-X", ISBN-13 = "978-1-86100-401-7", LCCN = "QA76.76.H94 P7626 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Programmer to programmer", acknowledgement = ack-nhfb, keywords = "client/server computing; Java (computer program language); XML (document markup language)", } @Article{Aleksy:2001:ASB, author = "M. Aleksy and A. Korthaus", title = "Access to {SAP}'s {Business Framework} from {Java}-based applications", journal = j-CCPE, volume = "13", number = "7", pages = "621--641", month = jun, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.562", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/83002172/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=83002172&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Allan:2001:CSA, author = "V. H. Allan and X. Chen", title = "{Convert2Java}: semi-automatic conversion of {C} to {Java}", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "201--211", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/28/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Alpern:2001:EDJ, author = "Bowen Alpern and Anthony Cocchi and David Grove and Derek Lieber", title = "Efficient Dispatch of {Java} Interface Methods", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "621--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100621.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100621.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alpern:2001:EIJ, author = "Bowen Alpern and Anthony Cocchi and Stephen Fink and David Grove", title = "Efficient implementation of {Java} interfaces: {Invokeinterface} considered harmless", journal = j-SIGPLAN, volume = "36", number = "11", pages = "108--124", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Alur:2001:CJP, author = "Deepak Alur and John Crupi and Dan Malks", title = "Core {J2EE} Patterns: Best Practices and Design Strategies", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxvi + 459", year = "2001", ISBN = "0-13-064884-1", ISBN-13 = "978-0-13-064884-6", LCCN = "QA76.73.J38 A454 2001", bibdate = "Sat Apr 20 11:09:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sun.com/books/catalog/crupi/index.html", acknowledgement = ack-nhfb, } @Article{Anantharam:2001:EJP, author = "Parasuram Anantharam", title = "Essentials of the {Java} programming language: a hands-on guide", journal = j-SIGSOFT, volume = "26", number = "2", pages = "76--76", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505796", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ancona:2001:CCJ, author = "D. Ancona and G. Lagorio and E. Zucca", title = "A core calculus for {Java} exceptions", journal = j-SIGPLAN, volume = "36", number = "11", pages = "16--30", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ancona:2001:ETF, author = "Davide Ancona and Christopher Anderson and Ferruccio Damiani and Sophia Drossopoulou and Paola Giannini and Elena Zucca", title = "An Effective Translation of {Fickle} into {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2202", pages = "215--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:47 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2202.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2202/22020215.htm; http://link.springer-ny.com/link/service/series/0558/papers/2202/22020215.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ancona:2001:TMJ, author = "Davide Ancona and Elena Zucca", title = "True Modules for {Java}-like Languages", journal = j-LECT-NOTES-COMP-SCI, volume = "2072", pages = "354--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:27 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2072.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2072/20720354.htm; http://link.springer-ny.com/link/service/series/0558/papers/2072/20720354.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Andersson:2001:KDJ, author = "Johan Andersson", title = "{Kaffemik} --- a distributed {JVM} featuring a single address space", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/JVM_wips/S09.pdf", acknowledgement = ack-nhfb, } @Article{Angell:2001:JSS, author = "Kirby W. Angell", title = "The {Java Secure Socket Extensions}", journal = j-DDJ, volume = "26", number = "2", pages = "21--22, 24, 26, 28", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/jsse.txt; http://www.ddj.com/ftp/2001/2001_02/jsse.zip", abstract = "The Java Secure Socket Extension package and Java Run-Time Environment provide most of the tools you need to implement SSL within Java applications. Additional resources include jssr.txt (listings) and jsse.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Anonymous:2001:BRJ, author = "Anonymous", title = "Book Review: {{\booktitle{{Java} programming: From the beginning}}: By K. N. King. W. W. Norton, New York. (2000). 788 pages. \$52.50}", journal = j-COMPUT-MATH-APPL, volume = "41", number = "3--4", pages = "541--541", month = feb, year = "2001", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Mar 1 21:49:14 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0898122101900331", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/08981221", } @Article{Anonymous:2001:CRJ, author = "Anonymous", title = "Conference Report: {{\em 1st Java VM Virtual Machine Research and Technology Symposium (JVM '01)}}", journal = j-LOGIN, volume = "26", number = "5", pages = "??--??", month = aug, year = "2001", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 06:42:33 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2001-08/index.html", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Anonymous:2001:GLW, author = "Anonymous", title = "The {Grande Latte} Wireless Experience", journal = j-IEEE-SPECTRUM, volume = "38", number = "5", pages = "9--9", month = may, year = "2001", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2001.920037", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Bluetooth; Cameras; Cellular phones; Communication system security; Counting circuits; Games; Ham radios; Internet; Java; Operating systems", } @Article{Anonymous:2001:JAV, author = "Anonymous", title = "A {Java} applet for visualizing protein-protein interaction", journal = j-BIOINFORMATICS, volume = "17", number = "7", pages = "669--671", month = jul, year = "2001", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "3", } @Article{Anonymous:2001:LCO, author = "Anonymous", title = "Leaders co-operate on {Java} technology", journal = "Card Technology Today", volume = "13", number = "4", pages = "6--7", day = "1", month = apr, year = "2001", CODEN = "????", ISSN = "0965-2590", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "2", } @Article{Anonymous:2001:PCP, author = "Anonymous", title = "Products: Cross-Platform Toolkit for {Bristol Technology}; {InstallShield} Updates {Windows} Installer; {Droplet} Offers Unique {Web} Application {SDK}; {ObjectFX Corporation}'s {Web}-Based Visualization Software; {Basis Technology} Updates {C++} Library; {MathWorks} Unveils Embedded Control Design Suite; {Intuitive Systems} Offers {Java} Profiling Tool; {Computer Associates}' {E}-Business Development Environment; {Programming Research Ltd.}'s Static Analysis Tool", journal = j-COMPUTER, volume = "34", number = "1", pages = "130--131", month = jan, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Thu Jan 18 17:55:13 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r1130.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PFS, author = "Anonymous", title = "Products: {Free Software Foundation} Updates Compiler Toolset; {IT Factory}'s {Lotus Tools Suite}; {Cardiff Software}'s Real-Time Document Verification Application; {Great Bridge} Updates Open Source Database; {OpenPath Products'} Wireless Application Authoring Tool; {Curl}'s {Web} Application Development Environment; {ThinAirApp} Ships Mobile {Visual Basic IDE}; {Princeton Softech} Updates Server Archiving Software; {Codemesh} Releases {Java} Communications Environment", journal = j-COMPUTER, volume = "34", number = "9", pages = "112--114", month = sep, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Sep 12 14:28:14 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r9112.pdf; http://www.computer.org/computer/co2001/r9112abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PGH, author = "Anonymous", title = "Products: {Green Hills} Ships {StarCore} Development Probe; {Zayante}'s {FireWire} Support for {Windows CE}; {Embedded Performance} Develops {SoC} Debugger; {Extended Systems} Updates {Bluetooth} Development Kit; {First Embedded} {IPv6} Router Reference Platform; {Integrated Wireless} {Java} Technology; {Java} Performance on Wireless Devices; {Syclo}'s Mobile Software Development Platform", journal = j-COMPUTER, volume = "34", number = "11", pages = "124--126", month = nov, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Feb 8 07:11:47 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/ry124.pdf; http://www.computer.org/computer/co2001/ry124abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PPS, author = "Anonymous", title = "Products: {ProxySource}'s Software Design and Collaboration Application; {YesSoftware}'s Code Generation Application; {Persistence Software}'s Transactional Application Server; {Instantiation}'s {Java} Productivity Tools; {JCanvas} Visual Rapid Application {IDE}; {theKompany.com}'s {Python} Development Environment; {NeuVis} Updates {E}-Business Visual Modeling Tools; {LegacyJ}'s {Java}-Compliant {Cobol} Compiler", journal = j-COMPUTER, volume = "34", number = "3", pages = "108--109", month = mar, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Mar 14 07:01:26 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r3108.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PPT, author = "Anonymous", title = "Products: {Planet 7 Technologies}' New {XML} Development Software; {Apple Computer} Launches {UNIX}-Based Operating System; {Codemesh} Releases {Java\slash C++} Integration Software for {Solaris}; {Telelogic AB}'s {C++} Quality Assessment Environment; {Green Hills} Ships Embedded Integrated Development Platform; {Concurrent Computer} Introduces {Linux} Application Development Environment", journal = j-COMPUTER, volume = "34", number = "5", pages = "85--86", month = may, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri May 4 17:53:39 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r5085.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PSX, author = "Anonymous", title = "Products: {SoftQuad}'s {XML} Content Creation Software; {OriginLab} Updates Graphing Tool; {NuSphere}'s Enterprise {Web} Development Platform; {MetaWare}'s {XScale} Programming Tools; {Aether Systems}' Wireless Development Environment; {Visual Numerics} Upgrades {Java} Application Deployment Tools; {C Level Design} Introduces {C/C++} Hardware Design Environment; {ActiveState}'s {Perl} Development and Deployment Software; {Advanced Software} Ships {UML} Design Tool; {Borland}'s {Java 2} Rapid Application Development Environment; {Web} Services Application Development Platform; {RidgeRun}'s Embedded {Linux} Development Kit; {IONA} Modeling and Development Environment", journal = j-COMPUTER, volume = "34", number = "7", pages = "90--92", month = jul, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Jul 11 07:52:11 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r7090.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PVL, author = "Anonymous", title = "Products: {Viosoft}'s {Linux} Embedded Development Environment; {Popkin Software} Releases Development Modeling Suite; {Iopsis Software}'s {Forte for Java IDE}; {NQL} Releases Scripting Language Components; {Ascend Software} Updates Delivery Management System; {Excel Software} Ships {UML} Design Tool; {Hyperformix}'s Discrete-Event Simulation Modeler; {InCert}'s Application Fault Management Software; {BioconX} Releases Biometric Security Software; {Waterloo Maple}'s Mathematical Computation Software [{Maple 7}]; {Equator Technologies}' Application Development Toolkit", journal = j-COMPUTER, volume = "34", number = "8", pages = "84--86", month = aug, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Thu Aug 30 10:36:59 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r8084.pdf; http://www.computer.org/computer/co2001/r8084abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:PWB, author = "Anonymous", title = "Products: {Web}-Based Remote Administration Tools; {SGDL System}'s {$3$D} Model Development Language Kit; {MigraTEC}'s {Solaris-to-Linux} Migration Software; {Visual Numerics} Updates {C} Numerical Library; {Stardock}'s {Windows} Skin Development Software; {InterNetwork}'s New Load Capacity Testing Software; {SuSE Linux} for {PowerPC}; {Raytheon} Updates Network Security Tools; {Tasking} Updates Embedded Development Tools; {ExoLab Group} Offers Open-Source Data-Binding Software; {Omnicore Software}'s {Java} Development Environment; {Basis International} Releases {Java}-Based Business Basic; {Zondigo}'s Wireless Software Development Kit; {MDD} Introduces Password Administration Software; {StatSoft} Revises Data Visualization Tool; {Abaco} Updates Mobile Application Development Framework", journal = j-COMPUTER, volume = "34", number = "6", pages = "90--93", month = jun, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Jul 11 07:52:11 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r6090.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2001:TIJ, author = "Anonymous", title = "{Taiwan} to issue {Java}-based insurance card from {G\&D}", journal = "Card Technology Today", volume = "13", number = "9", pages = "4--4", day = "1", month = oct, year = "2001", CODEN = "????", ISSN = "0965-2590", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "1", } @Article{Antoniu:2001:CMJ, author = "Gabriel Antoniu and Luc Boug{\'e} and Philip Hatcher and Mark MacBeth and Keith McGuigan and Raymond Namyst", title = "Compiling Multithreaded {Java} Bytecode for Distributed Execution (Distinguished Paper)", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "1039--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19001039.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19001039.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Antoniu:2001:HSC, author = "Gabriel Antoniu and others", title = "The {Hyperion} system: {Compiling} multithreaded {Java} bytecode for distributed execution", journal = j-PARALLEL-COMPUTING, volume = "27", number = "10", pages = "1279--1297", month = sep, year = "2001", CODEN = "PACOEJ", ISSN = "0167-8191 (print), 1872-7336 (electronic)", ISSN-L = "0167-8191", bibdate = "Fri Feb 22 16:52:42 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/01678191; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/35/21/47/40/27/abstract.html; http://www.elsevier.nl/gej-ng/10/35/21/47/40/27/article.pdf", acknowledgement = ack-nhfb, fjournal = "Parallel Computing", journal-URL = "http://www.sciencedirect.com/science/journal/01678191", } @Article{Aridor:2001:DIV, author = "Yariv Aridor and Michael Factor and Avi Teperman", title = "A distributed implementation of a virtual machine for {Java}", journal = j-CCPE, volume = "13", number = "3", pages = "221--244", month = mar, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.565", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:46 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003113/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003113&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Aridor:2001:IJC, author = "Yariv Aridor and Michael Factor and Avi Teperman", title = "Implementing {Java} on Clusters", journal = j-LECT-NOTES-COMP-SCI, volume = "2150", pages = "722--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:53 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2150.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2150/21500722.htm; http://link.springer-ny.com/link/service/series/0558/papers/2150/21500722.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ariga:2001:PSI, author = "Taeko Ariga and Hideki Tsuiki", title = "Programming for students of information design", journal = j-SIGCSE, volume = "33", number = "4", pages = "59--63", month = dec, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/572139.572172", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:51 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse33.html#ArigaT01; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2001.bib", abstract = "Programming is one of the subjects which students of information design need to study. Programming training will improve their multimedia representation, even when they use software packages. It will also enlarge the possibility of new interactive multimedia art over the internet. We propose course materials to teach programming by Java, which have been applied to a programming course in the Department of Information Design.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Arnold:2001:EIB, author = "Matthew Arnold and Michael Hsiao and Ulrich Kremer and Barbara G. Ryder", title = "Exploring the Interaction between {Java}'s Implicitly Thrown Exceptions and Instruction Scheduling", journal = j-INT-J-PARALLEL-PROG, volume = "29", number = "2", pages = "111--137", month = apr, year = "2001", CODEN = "IJPPE5", DOI = "https://doi.org/10.1023/A:1007621602134", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 6 16:39:57 MDT 2005", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=29&issue=2; http://www.kluweronline.com/issn/0885-7458; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ipsapp009.lwwonline.com/content/getfile/4773/20/1/abstract.htm; http://ipsapp009.lwwonline.com/content/getfile/4773/20/1/fulltext.pdf; http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=29&issue=2&spage=111", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", } @Book{Arrington:2001:EJU, author = "C. T. Arrington", title = "Enterprise {Java} with {UML}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxii + 451", year = "2001", ISBN = "0-471-38680-4 (paperback)", ISBN-13 = "978-0-471-38680-3 (paperback)", LCCN = "QA76.73.J38 A78 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); UML (computer science)", } @Article{Atkinson:2001:PJB, author = "Malcolm Atkinson", title = "Persistence and {Java} -- {A} Balancing Act", journal = j-LECT-NOTES-COMP-SCI, volume = "1944", pages = "1--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:49 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1944.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1944/19440001.htm; http://link.springer-ny.com/link/service/series/0558/papers/1944/19440001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Attali:2001:GVJ, author = "Isabelle Attali and Denis Caromel and Marjorie Russo", title = "Graphical Visualization of {Java} Objects, Threads, and Locks", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "2", number = "1", year = "2001", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0101/features/att0101_print.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Attali:2001:IDE, author = "Isabelle Attali and Denis Caromel and Carine Courbis and Ludovic Henrio and Henrik Nilsson", title = "An integrated development environment for {Java Card}", journal = j-COMP-NET-AMSTERDAM, volume = "36", number = "4", pages = "391--405", day = "16", month = jul, year = "2001", CODEN = "????", ISSN = "1389-1286 (print), 1872-7069 (electronic)", ISSN-L = "1389-1286", bibdate = "Wed Jul 25 16:48:14 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/13891286; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/15/22/61/28/27/abstract.html; http://www.elsevier.nl/gej-ng/10/15/22/61/28/27/article.pdf", acknowledgement = ack-nhfb, fjournal = "Computer Networks (Amsterdam, Netherlands: 1999)", journal-URL = "http://www.sciencedirect.com/science/journal/13891286", } @Article{Avetisyan:2001:EJE, author = "A. Avetisyan and S. Gaissaryan and O. Samovarov", title = "Extension of {Java} Environment by Facilities Supporting Development of {SPMD Java}-Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2127", pages = "175--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2127.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2127/21270175.htm; http://link.springer-ny.com/link/service/series/0558/papers/2127/21270175.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Ayers:2001:PJD, author = "Danny Ayers", title = "Professional {Java} data", publisher = pub-WROX, address = pub-WROX:adr, pages = "xxvii + 1320", year = "2001", ISBN = "1-86100-410-9 (paperback)", ISBN-13 = "978-1-86100-410-9 (paperback)", LCCN = "QA76.73.J38 P76 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Article{Bachrach:2001:JSE, author = "Jonthan Bachrach and Keith Playford", title = "The {Java Syntactic Extender} ({JSE})", journal = j-SIGPLAN, volume = "36", number = "11", pages = "31--42", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bacon:2001:JCB, author = "David F. Bacon and Clement R. Attanasio and Han B. Lee and V. T. Rajan and Stephen Smith", title = "{Java} without the coffee breaks: a nonintrusive multiprocessor garbage collector", journal = j-SIGPLAN, volume = "36", number = "5", pages = "92--103", month = may, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:26 MST 2003", bibsource = "http://portal.acm.org/; http://www.acm.org/sigplan/pldi/pldi2001/pldi_program.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @InProceedings{Bacon:2001:KJD, author = "David Bacon", title = "{Kava}: a {Java} Dialect with a Uniform Object Model for Lightweight Classes", crossref = "ACM:2001:PAJ", pages = "68--77", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/38.html; http://www.philippsen.com/JGI2001/finalpapers/18500068.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Bainbridge:2001:CEJ, author = "A. Bainbridge and J. Colgrave and A. Colyer and G. Normington", title = "{CICS} and {Enterprise JavaBeans}", journal = j-IBM-SYS-J, volume = "40", number = "1", pages = "46--67", month = "????", year = "2001", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Sat Apr 7 16:40:01 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/sj40-1.html", URL = "http://www.research.ibm.com/journal/sj/401/bainbridge.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0140", } @Article{Baran:2001:NVA, author = "Nicholas Baran", title = "News and Views: Anonymity and the {Internet}; Is Industry Hogging Computer Science Talent?; Relief from Acronyms; {OpenML} Spec Released; {C\#} Not Just a {Java} Killer, Says Anders; And the Winners Are \ldots{}", journal = j-DDJ, volume = "26", number = "7", pages = "18--18", month = jul, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 7 06:07:17 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Baran:2001:NVC, author = "Nicholas Baran", title = "News and Views: {College Board} to Add {Java} Test; Astronomy Project Beats Out Algorithm for Science Prize; Consortium to Release {XML} Business Specification; Open Source Developer Agreement Proposed; Consortium Hopes to Eliminate Computer Failures; New Linear Algorithm for Sequence Analysis; Distributing Computing {\`a} la {SETI} Catches On", journal = j-DDJ, volume = "26", number = "3", pages = "18--18", month = mar, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://publicscience.net/; http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Baran:2001:NVM, author = "Nicholas Baran", title = "News and Views: Mail Server Benchmark Released; New Traveling Salesman Algorithm; {ACLU} Challenges {ICANN} on Freedom of Speech; {Microsoft} Opts for Decaf; Store Your Data on the {Internet}; And Mind Your Electronic Trash", journal = j-DDJ, volume = "26", number = "4", pages = "18--18", month = apr, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 13 15:22:36 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.cs.wustl.edu/; http://www.ddj.com/; http://www.spec.org/osg/mail2001/docs/FAQ.html; http:/www.research.att.com/~alb/ALENEX01", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", keywords = "Microsoft drops Java; Oceanstore; SPECmail2001; Weixiong Zhang and David S. Johnson's new Traveling Salesman Problem (TSP) algorithm", } @Article{Barisone:2001:JSM, author = "A. Barisone and F. Bellotti and R. Berta and A. {De Gloria}", title = "{JSBricks}: a suite of microbenchmarks for the evaluation of {Java} as a scientific execution environment", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "293--306", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/35/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Barros:2001:UPN, author = "Jo{\~a}o Paulo Barros", title = "Use {Petri} nets to improve your concurrent programming course (poster session)", journal = j-SIGCSE, volume = "33", number = "3", pages = "192--192", month = sep, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/507758.377713", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:50 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Petri nets are recommended as a learning aid in a concurrent programming course covering modelling and verification techniques, based on state space analysis, and translation of formal models to Java programs.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Barthe:2001:FES, author = "Gilles Barthe and Guillaume Dufay and Line Jakubiec and Bernard Serpette and Sim{\~a}o Melo de Sousa", title = "A Formal Executable Semantics of the {JavaCard} Platform", journal = j-LECT-NOTES-COMP-SCI, volume = "2028", pages = "302--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:45 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2028.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2028/20280302.htm; http://link.springer-ny.com/link/service/series/0558/papers/2028/20280302.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Barthe:2001:JTR, author = "G. Barthe and G. Dufay and M. Huisman and S. Melo de Sousa", title = "Jakarta: a Toolset for Reasoning about {JavaCard}", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "2--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400002.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400002.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Batheja:2001:FOC, author = "Jyoti Batheja and Manish Parashar", title = "A Framework for Opportunistic Cluster Computing Using {JavaSpaces}", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "647--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100647.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100647.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bechini:2001:BIC, author = "Alessio Bechini and Cosimo Antonio Prete", title = "Behavior investigation of concurrent {Java} programs: an approach based on source-code instrumentation", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "307--316", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/36/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Becker:2001:SMW, author = "Thomas Becker", title = "Synchronization Monitors For {Win32}", journal = j-DDJ, volume = "26", number = "12", pages = "46, 48, 50--52, 54", month = dec, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_12/monitor.txt; http://www.ddj.com/ftp/2001/2001_12/monitor.zip", abstract = "Thomas presents a Java-style synchronization monitor for multithreaded Win32 development. Additional resources include {\tt monitor.txt} (listings) and {\tt monitor.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Becker:2001:TCK, author = "Byron Weber Becker", title = "Teaching {CS1} with {Karel} the robot in {Java}", journal = j-SIGCSE, volume = "33", number = "1", pages = "50--54", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364536", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Most current Java textbooks for CS1 (and thus most current courses) begin either with fundamentals from the procedural paradigm (assignment, iteration, selection) or with a brief introduction to using objects followed quickly with writing objects. We have found a third way to be most satisfying for both teachers and students: using interesting predefined classes to introduce the fundamentals of object-oriented programming (object instantiation, method calls, inheritance) followed quickly by the traditional fundamentals of iteration and selection, also taught using the same predefined classes. Karel the Robot, developed by Richard Pattis [6] and well-known to many computer science educators, has aged gracefully and is a vital part of our CS1 curriculum. This paper explains how Karel may be used and the advantages of doing so.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Beckert:2001:DLF, author = "Bernhard Beckert", title = "A Dynamic Logic for the Formal Verification of {Java} Card Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "6--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410006.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410006.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Beebee:2001:ISM, author = "William S. {Beebee, Jr.} and Martin Rinard", title = "An Implementation of Scoped Memory for Real-Time {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2211", pages = "289--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2211.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2211/22110289.htm; http://link.springer-ny.com/link/service/series/0558/papers/2211/22110289.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bellotti:2001:AJG, author = "F. Bellotti and A. {De Gloria} and M. Risso and A. Villamaina", title = "{AutoGraL}: a {Java $2$D} graphics library for configurable automotive dashboards", journal = j-COMPUTERS-AND-GRAPHICS, volume = "25", number = "2", pages = "259--268", month = apr, year = "2001", CODEN = "COGRD2", ISSN = "0097-8493 (print), 1873-7684 (electronic)", ISSN-L = "0097-8493", bibdate = "Tue Jul 17 08:15:19 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/00978493; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/13/20/57/29/33/abstract.html; http://www.elsevier.nl/gej-ng/10/13/20/57/29/33/article.pdf", acknowledgement = ack-nhfb, fjournal = "Computers and Graphics", journal-URL = "http://www.sciencedirect.com/science/journal/00978493", } @Article{Bellotti:2001:DJA, author = "Francesco Bellotti and Riccardo Berta and Alessandro De Gloria and Andrea Poggi", title = "{DirectJ}: {Java APIs} for optimized {$2$D} graphics", journal = j-SPE, volume = "31", number = "3", pages = "259--275", month = mar, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.365", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:25:28 MST 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76507637/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76507637&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Benedicenti:2001:EQC, author = "Luigi Benedicenti and Victor Wei Wang and Peter Lee and Raman Paranjape", title = "Establishing quality control in software agents", journal = j-SIGAPP, volume = "9", number = "3", pages = "31--33", month = sep, year = "2001", CODEN = "????", DOI = "https://doi.org/10.1145/570132.570137", ISSN = "1559-6915 (print), 1931-0161 (electronic)", ISSN-L = "1559-6915", bibdate = "Thu Jan 23 10:21:35 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigapp2000.bib", URL = "https://dl.acm.org/doi/abs/10.1145/570132.570137", abstract = "This paper illustrates the results of a research effort to measure the quality of software agents written in Java using extreme programming. A factoring of quality has been chosen in accordance with the properties and limitations of the type of products \ldots{}", acknowledgement = ack-nhfb, fjournal = "ACM SIGAPP Applied Computing Review", journal-URL = "https://dl.acm.org/loi/sigapp", } @Book{Bergsten:2001:JP, author = "Hans Bergsten", title = "{JavaServer} pages", publisher = pub-ORA, address = pub-ORA:adr, pages = "xviii + 552", year = "2001", ISBN = "1-56592-746-X", ISBN-13 = "978-1-56592-746-9", LCCN = "TK5105.8885.J38 B37 2001", bibdate = "Thu Feb 22 17:48:46 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Editors: Robert Eckstein and Paula Ferguson.", acknowledgement = ack-nhfb, } @Book{Bergsten:2001:JPP, author = "Hans Bergsten", title = "{JavaServer} pages pocket reference", publisher = pub-ORA, address = pub-ORA:adr, pages = "v + 81", year = "2001", ISBN = "0-596-00231-9", ISBN-13 = "978-0-596-00231-2", LCCN = "QA76.73.J38.b48 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Server-side Java development.", series = "Java series", acknowledgement = ack-nhfb, keywords = "client/server computing; JavaServer pages; servlets (computer programs); Web servers; Web sites -- design", } @Article{Bertot:2001:FJV, author = "Yves Bertot", title = "Formalizing a {JVML} Verifier for Initialization in a Theorem Prover", journal = j-LECT-NOTES-COMP-SCI, volume = "2102", pages = "14--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:02 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2102.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2102/21020014.htm; http://link.springer-ny.com/link/service/series/0558/papers/2102/21020014.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Berzal:2001:TTJ, author = "Fernando Berzal and Nicol{\'a}s Mar{\'\i}n", title = "Tools and Tips for {Java} Programming", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "2", number = "5", year = "2001", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0105/departments/bks0105a.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Book{Besset:2001:OOI, author = "Didier H. Besset", title = "Object-oriented implementation of numerical methods: an introduction with {Java} and {Smalltalk}", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xxv + 766", year = "2001", ISBN = "1-55860-679-3", ISBN-13 = "978-1-55860-679-1", LCCN = "QA76.76.D47 B475 2001", bibdate = "Mon May 06 06:48:28 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, contents = "1. Introduction -- 2. Function Evaluation -- 3. Interpolation -- 4. Iterative Algorithms -- 5. Finding the Zero of a Function -- 6. Integration of Functions -- 7. Series -- 8. Linear Algebra -- 9. Elements of Statistics -- 10. Statistical Analysis -- 11. Optimization -- 12. Data Mining -- App. A. Decimal Floating-Point Simulation -- App. B. Smalltalk Primer for Java Programmers -- App. C. Java Primer for Smalltalk Programmers -- App. D. Additional Probability Distributions -- App. E. Accurate Accumulation of Expectation Values.", keywords = "computer software -- development; object-oriented programming (computer science)", } @Article{Bettini:2001:JNC, author = "Lorenzo Bettini and Donato Cappetta", title = "A {Java 2} Network Class Loader", journal = j-DDJ, volume = "26", number = "2", pages = "58, 60, 62, 64", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/jload.txt; http://www.ddj.com/ftp/2001/2001_02/jload.zip", abstract = "Lorenzo and Donato present NetworkClassLoader, a class loader that lets you load classes from remote servers. Additional resources include jload.txt (listings) and jload.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Bieber:2001:PPT, author = "P. Bieber and J. Cazin and A. {El Marouani} and P. Girard and J.-L. Lanet and V. Wiels and G. Zanon", title = "The {PACAP} Prototype: a Tool for Detecting {Java} Card Illegal Flow", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "25--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410025.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410025.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Bigus:2001:CIA, author = "Joseph P. Bigus and Jennifer Bigus", title = "Constructing intelligent agents using {JAVA}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xxii + 408", year = "2001", ISBN = "0-471-39601-X", ISBN-13 = "978-0-471-39601-7", LCCN = "QA76.76.I58 B563 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Professional developer's guide series", acknowledgement = ack-nhfb, keywords = "intelligent agents (computer software); Java (computer program language)", } @Article{Binder:2001:PRC, author = "Walter Binder and Jane G. Hulaas and Alex Villaz{\'o}n", title = "Portable resource control in {Java}", journal = j-SIGPLAN, volume = "36", number = "11", pages = "139--155", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Birnam:2001:DJP, author = "Stewart Birnam", title = "Distributed {Java 2} Platform Database Development", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxi + 276", year = "2001", ISBN = "0-13-026861-5", ISBN-13 = "978-0-13-026861-7", LCCN = "QA76.73.J38 B57 2001", bibdate = "Sat Apr 20 11:10:14 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130268615.html; http://www.sun.com/books/catalog/birnam/", acknowledgement = ack-nhfb, } @Article{Bischof:2001:HTU, author = "Christian H. Bischof and H. Martin B{\"u}cker and J{\"o}rg Henrichs and Bruno Lang", title = "Hands-On Training for Undergraduates in High-Performance Computing Using {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1947", pages = "306--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:51 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1947.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1947/19470306.htm; http://link.springer-ny.com/link/service/series/0558/papers/1947/19470306.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Blackburn:2001:PJ, author = "Stephen M. Blackburn and Sharad Singhai and Matthew Hertz and Kathryn S. McKinely and J. Eliot B. Moss", title = "Pretenuring for {Java}", journal = j-SIGPLAN, volume = "36", number = "11", pages = "342--352", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Bloch:2001:EJP, author = "Joshua Bloch", title = "Effective {Java}: Programming Language Guide", publisher = pub-AW, address = pub-AW:adr, pages = "xvi + 252", year = "2001", ISBN = "0-201-31005-8, 3-642-56735-5 (e-book)", ISBN-13 = "978-0-201-31005-4, 978-3-642-56735-3 (e-book)", LCCN = "QA76.73.J38 B57 2001", bibdate = "Sat Apr 20 11:10:41 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/master.bib", abstract = "\booktitle{Effective Java} is an explicit (and acknowledged) homage to Scott Meyer's \booktitle{Effective C++}. Josh Bloch shares the programming practices of the most expert Java programmers with the rest of the programming community. Distilling the habits of experienced programmers into 50 short stand-alone essays, Bloch has laid out the most essential and effective Java rules, providing comprehensive descriptions of techniques. The essays address practical problems that all Java programmers encounter, presents specific ways to improve programs and designs, and also shows how to avoid traps in Java programming. An enormously useful book, each essay contains top notch code examples and insightful ``war stories'' that help capture the students' attention.", acknowledgement = ack-nhfb, tableofcontents = "1: Introduction \\ 2: Creating and destroying objects \\ 3: Methods common to all objects \\ 4: Classes and interfaces \\ 5: Substitutes for C constructs \\ 6: Methods \\ 7: General programming \\ 8: Exceptions \\ 9: Threads \\ 10: Serialization \\ References \\ Index of Patterns and Idioms", } @Book{Boger:2001:JDS, author = "Marko Boger", title = "{Java} in distributed systems: concurrency, distribution, and persistence", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xix + 393", year = "2001", ISBN = "0-471-49838-6", ISBN-13 = "978-0-471-49838-4", LCCN = "QA76.73.J38 B64 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Java (computer program language)", } @Article{Bois:2001:DEF, author = "Andr{\'e} Rauber {Du Bois} and Ant{\^o}nio Carlos {da Rocha Costa}", title = "Distributed Execution of Functional Programs Using the {JVM}", journal = j-LECT-NOTES-COMP-SCI, volume = "2178", pages = "570--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:08:59 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2178.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2178/21780570.htm; http://link.springer-ny.com/link/service/series/0558/papers/2178/21780570.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bolignano:2001:FMC, author = "D. Bolignano and D. Le M{\'e}tayer and C. Loiseaux", title = "Formal Methods in Context: Security and {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "1--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410001.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bonachea:2001:HPF, author = "Dan Bonachea and Phillip Dickens and Rajeev Thakur", title = "High-performance file {I/O} in {Java}: {Existing} approaches and bulk {I/O} extensions", journal = j-CCPE, volume = "13", number = "8--9", pages = "713--736", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.576", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503223/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503223&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Bonzini:2001:LHG, author = "Paolo Bonzini and Stuart Halloway and John Penry and Oluseyi Sonaiya and Bruce E. Hogman and Greg Bissell and Michael Hobbs and Ben Laurie", title = "Letters: Huge {GCC} Executables; {Java} Class Loader; {Department of Dumb Ideas}; Setting the Record Straight; The Legacy of {C\#}; {DHTML} Source-Code Correction; Shared Libraries Aren't All Bad; {Zuse} and {Intel}", journal = j-DDJ, volume = "26", number = "8", pages = "10, 12", month = aug, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Jul 11 06:31:35 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InProceedings{Bouchenak:2001:MJA, author = "Sara Bouchenak", title = "Making {Java} Applications Mobile or Persistent", crossref = "USENIX:2001:PUC", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 18:09:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/bouchenak.html", acknowledgement = ack-nhfb, } @Article{Bourdonov:2001:JSE, author = "Igor B. Bourdonov and Alexey V. Demakov and Andrew A. Jarov and Alexander S. Kossatchev and Victor V. Kuliamin and Alexander K. Petrenko and Sergey V. Zelenov", title = "{Java} Specification Extension for Automated Test Development", journal = j-LECT-NOTES-COMP-SCI, volume = "2244", pages = "301--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2244.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2244/22440301.htm; http://link.springer-ny.com/link/service/series/0558/papers/2244/22440301.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boyapati:2001:PTS, author = "Chandrasekhar Boyapati and Martin Rinard", title = "A parameterized type system for race-free {Java} programs", journal = j-SIGPLAN, volume = "36", number = "11", pages = "56--69", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bradley:2001:IJT, author = "James W. Bradley and R. Webster West", title = "Interactive {Java} Tools for Exploring High-dimensional Data", journal = j-J-STAT-SOFT, volume = "6", number = "1", pages = "??--??", year = "2001", CODEN = "JSSOBK", ISSN = "????", bibdate = "Sun Nov 17 22:35:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/v06/i01; http://www.jstatsoft.org/v06/i01/bradley.tar; http://www.jstatsoft.org/v06/i01/bradley/index.html; http://www.jstatsoft.org/v06/i01/updates", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", } @Article{Bratthall:2001:PUB, author = "Lars Bratthall and Erik Arisholm and Magne J{\o}rgensen", title = "Program Understanding Behavior during Estimation of Enhancement Effort on Small {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2188", pages = "356--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:31 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2188.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2188/21880356.htm; http://link.springer-ny.com/link/service/series/0558/papers/2188/21880356.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brebner:2001:EBB, author = "Paul Brebner and Shuping Ran", title = "Entity Bean {A}, {B}, {C}'s: {Enterprise Java} Beans Commit Options and Caching", journal = j-LECT-NOTES-COMP-SCI, volume = "2218", pages = "36--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:05 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2218.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2218/22180036.htm; http://link.springer-ny.com/link/service/series/0558/papers/2218/22180036.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brecht:2001:CGC, author = "Tim Brecht and Eshrat Arjomandi and Chang Li and Hang Pham", title = "Controlling garbage collection and heap growth to reduce the execution time of {Java} applications", journal = j-SIGPLAN, volume = "36", number = "11", pages = "353--366", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bredlau:2001:ALT, author = "Carl Bredlau and Dorothy Deremer", title = "Assembly language through the {Java Virtual Machine}", journal = j-SIGCSE, volume = "33", number = "1", pages = "194--198", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364583", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Student understanding of choices and design decisions about instruction formats, addressing, instruction types, and flow of control is developed through the assembly level. We propose the Java Virtual Machine (JVM) as the architecture for teaching assembly language. The paper describes how to use the JVM as a teaching tool for a sophomore level Assembly Language and Computer Architecture course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Breg:2001:JVM, author = "Fabian Breg and Constantine Polychronopoulos", title = "{Java Virtual Machine} Support for Object Serialization", crossref = "ACM:2001:PAJ", pages = "173--180", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/12.html; http://www.philippsen.com/JGI2001/finalpapers/18500173.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Brewster:2001:CIH, author = "Neil V. Brewster and Tarek S. Abdelrahman", title = "A Compiler Infrastructure for High-Performance {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "675--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100675.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100675.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Brogden:2001:JDG, author = "William B. Brogden", title = "{Java} developer's guide to Servlets and {JSP}", publisher = pub-SYBEX, address = pub-SYBEX:adr, pages = "xix + 411", year = "2001", ISBN = "0-7821-2809-2", ISBN-13 = "978-0-7821-2809-3", LCCN = "QA76.73.J38 B7474 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); servlets", } @Book{Brose:2001:JPC, author = "Gerald Brose and Andreas Vogel and Keith Duddy", title = "{Java} programming with {CORBA}: advanced techniques for building distributed applications", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Third", pages = "xlii + 710", year = "2001", ISBN = "0-471-37681-7", ISBN-13 = "978-0-471-37681-1", LCCN = "QA76.73.J38 B77 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "CORBA (computer architecture); Java (computer program language)", } @Article{Brosgol:2001:CJR, author = "Benjamin Brosgol and Brian Dobbing", title = "Can {Java{\TM}} Meet Its Real-Time Deadlines?", journal = j-LECT-NOTES-COMP-SCI, volume = "2043", pages = "68--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:00 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2043.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2043/20430068.htm; http://link.springer-ny.com/link/service/series/0558/papers/2043/20430068.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brosgol:2001:RTC, author = "Ben Brosgol and Brian Dobbing", title = "Real-time convergence of {Ada} and {Java\TM}", journal = j-SIGADA-LETTERS, volume = "21", number = "4", pages = "11--26", month = dec, year = "2001", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Bruneton:2001:EJP, author = "Eric Bruneton and Michel Riveill", title = "Experiments with {JavaPod}, a Platform Designed for the Adaptation of Non-functional Properties", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "52--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920052.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920052.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bubak:2001:CJN, author = "Marian Bubak and Dawid Kurzyniec and Piotr Luszczek and V. Sunderam", title = "Creating {Java to Native Code Interfaces} with {Janet}", journal = j-SCI-PROG, volume = "9", number = "1", pages = "39--50", month = "????", year = "2001", CODEN = "SCIPEV", ISSN = "1058-9244 (print), 1875-919X (electronic)", ISSN-L = "1058-9244", bibdate = "Thu Mar 28 12:27:27 MST 2002", bibsource = "Compendex database; http://www.iospress.nl/site/html/10589244.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib; OCLC Article1st database", URL = "http://iospress.metapress.com/app/home/contribution.asp%3Fwasp=f2779jvvqg63jq64qwtm%26referrer=parent%26backto=issue%2C4%2C6%3Bjournal%2C2%2C9%3Blinkingpublicationresults%2C1%2C1", acknowledgement = ack-nhfb, fjournal = "Scientific Programming", journal-URL = "http://iospress.metapress.com/content/1058-9244", } @Article{Bubak:2001:CUL, author = "Marian Bubak and Dawid Kurzyniec and Piotr {\L}uszczek", title = "Convenient use of legacy software in {Java} with {Janet} package", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "8", pages = "987--997", month = jun, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/35/35/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Buck:2001:JCS, author = "Duane Buck and David J. Stucki", title = "{JKarelRobot}: a case study in supporting levels of cognitive development in the computer science curriculum", journal = j-SIGCSE, volume = "33", number = "1", pages = "16--20", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364529", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We introduce a new software tool, JKarelRobot, for supporting an Inside/Out pedagogy in introductory programming courses. Extending the original conception of ``Karel the Robot'', with Bloom's Taxonomy of Educational Objectives as a guiding principle, we have provided a mechanism for designing exercises that are cognitively appropriate to the developmental levels of our students. JKarelRobot is platform independent (written in Java) and language/paradigm independent, supporting Pascal, Java, and Lisp style environments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Budd:2001:CDS, author = "Timothy Budd", title = "Classic data structures in {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxiv + 593", year = "2001", ISBN = "0-201-70002-6", ISBN-13 = "978-0-201-70002-2", LCCN = "QA76.73.J38 B83 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Article{Budimlic:2001:JJC, author = "Zoran Budimli{\'c} and Ken Kennedy", title = "{JaMake}: a {Java} Compiler Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2179", pages = "201--209", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:22 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2179.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2179/21790201.htm; http://link.springer-ny.com/link/service/series/0558/papers/2179/21790201.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Buhler:2001:FSA, author = "Dieter B{\"u}hler and Wolfgang K{\"u}chlin", title = "Flexible Similarity Assessment for {XML} Documents Based on {XQL} and {Java} Reflection", journal = j-LECT-NOTES-COMP-SCI, volume = "2070", pages = "175--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:25 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2070.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2070/20700175.htm; http://link.springer-ny.com/link/service/series/0558/papers/2070/20700175.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Bull:2001:BJA, author = "Mark Bull and Lorna Smith and Lindsay Pottage and Robin Freeman", title = "Benchmarking {Java} against {C} and {Fortran} for Scientific Applications", crossref = "ACM:2001:PAJ", pages = "97--105", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/30.html; http://www.philippsen.com/JGI2001/finalpapers/18500097.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Book{Burke:2001:JX, author = "Eric M. Burke", title = "{Java} and {XSLT}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 510", year = "2001", ISBN = "0-596-00143-6", ISBN-13 = "978-0-596-00143-8", LCCN = "QA76.73.J38 B87 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language); XSLT (computer program language)", } @Book{Burke:2001:JXE, author = "Eric M. Burke", title = "{Java} and {XSLT}: Embedding {XML} processing into {Java} applications", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 510", month = sep, year = "2001", ISBN = "0-596-00143-6", ISBN-13 = "978-0-596-00143-8", LCCN = "QA76.73.J38 B88 2001", bibdate = "Mon Apr 18 15:03:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/; z3950.loc.gov:7090/Voyager", price = "US\$39.95", URL = "http://www.oreilly.com/catalog/9780596001438; http://www.oreilly.com/catalog/javaxslt", acknowledgement = ack-nhfb, subject = "Java (Computer program language); XSLT (Computer program language); XML (Document markup language)", } @Book{Burns:2001:RTS, author = "Alan Burns and Andrew J. Wellings", title = "Real-time systems and programming languages: {Ada 95}, real-time {Java}, and real-time {POSIX}", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xvi + 738", year = "2001", ISBN = "0-201-72988-1", ISBN-13 = "978-0-201-72988-7", LCCN = "QA76.54 .B87 2001", bibdate = "Thu Oct 31 17:53:55 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Revised edition of {\em Real-time systems and their programming languages}, 1990.", series = "International computer science series", acknowledgement = ack-nhfb, keywords = "programming languages (electronic computers); real-time data processing; real-time programming", } @Book{Callaway:2001:ISS, author = "Dustin R. Callaway", title = "Inside servlets: server-side programming for the {Java} platform", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxv + 881", year = "2001", ISBN = "0-201-70906-6", ISBN-13 = "978-0-201-70906-3", LCCN = "QA76.73.J38 C35 2001", bibdate = "Thu Jul 12 09:09:32 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Client/server computing; Java (Computer program language)", } @Book{Calvert:2001:TIS, author = "Kenneth L. Calvert and Michael J. Donahoo", title = "{TCP\slash IP} sockets in {Java}: practical guide for programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "80", year = "2001", ISBN = "1-55860-685-8", ISBN-13 = "978-1-55860-685-2", LCCN = "TK5105.585 .C34 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); TCP/IP (computer network protocol)", } @Book{Campione:2001:JTS, author = "Mary Campione and Kathy Walrath and Alison Huml", title = "The {Java} Tutorial: a Short Course on the Basics", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xi + 580", year = "2001", ISBN = "0-201-70393-9", ISBN-13 = "978-0-201-70393-1", LCCN = "QA76.73.J38 C365 2001", bibdate = "Sat Nov 24 10:23:13 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$44.99", URL = "http://java.sun.com/docs/books/tutorial/books/3e/index.html", acknowledgement = ack-nhfb, } @Article{Campo:2001:JFC, author = "Celeste Campo and Andr{\'e}s Marm and Arturo Garc{\'\i}a and Ignacio D{\'\i}az and Peter T. Breuer and Carlos Delgado and Carlos Garc{\'\i}a", title = "{JCCM}: Flexible Certificates for Smartcards with {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "34--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400034.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400034.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Cappello:2001:SRN, author = "Peter Cappello and Dimitrios Mourloukos", title = "A Scalable, Robust Network for Parallel Computing", crossref = "ACM:2001:PAJ", pages = "78--86", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/53.html; http://www.philippsen.com/JGI2001/finalpapers/18500078.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Caromel:2001:CIS, author = "Denis Caromel and Ludovic Henrio and Bernard Serpette", title = "Context Inference for Static Analysis of {Java} Card Object Sharing", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "43--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400043.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400043.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Caromel:2001:RMC, author = "Denis Caromel and Julien Vayssi{\`e}re", title = "Reflections on {MOPs}, Components, and {Java} Security", journal = j-LECT-NOTES-COMP-SCI, volume = "2072", pages = "256--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:27 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2072.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2072/20720256.htm; http://link.springer-ny.com/link/service/series/0558/papers/2072/20720256.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Caromel:2001:SSA, author = "Denis Caromel and Fabrice Huet and Julien Vayssi{\`e}re", title = "A Simple Security-Aware {MOP} for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "118--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920118.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920118.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Carrano:2001:DAP, author = "Frank M. Carrano and Janet J. Prichard", title = "Data abstraction and problem solving with {Java}: walls and mirrors", publisher = pub-AW, address = pub-AW:adr, pages = "xxii + 806", year = "2001", ISBN = "0-201-70220-7", ISBN-13 = "978-0-201-70220-0", LCCN = "QA76.73.J38 C37 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Book{Cattell:2001:JPB, author = "R. G. G. (Roderic Geoffrey Galton) Cattell and Jim Inscore", title = "{J2EE} in Practice: Building Business Applications with the {Java 2} Platform, Enterprise Edition", publisher = pub-AW, address = pub-AW:adr, pages = "xvii + 309", year = "2001", ISBN = "0-201-74622-0", ISBN-13 = "978-0-201-74622-8", LCCN = "QA76.73.J38 C38 2001", bibdate = "Thu Jul 12 09:13:10 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "The Java series", acknowledgement = ack-nhfb, } @Article{Chang:2001:EEJ, author = "Da-Wei Chang and Ruei-Chuan Chang", title = "{EJVM}: an economic {Java} run-time environment for embedded devices", journal = j-SPE, volume = "31", number = "2", pages = "129--146", month = feb, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/1097-024X(200102)31:2<129::AID-SPE359>3.0.CO;2-1", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:25:28 MST 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76504935/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76504935&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Chatterjee:2001:CPA, author = "R. Chatterjee and B. G. Ryder and W. A. Landi", title = "Complexity of points-to analysis of {Java} in the presence of exceptions", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "27", number = "6", pages = "481--512", month = jun, year = "2001", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/32.926173", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=926173", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Book{Chaudhri:2001:SOD, author = "Akmal B. Chaudhri and Roberto Zicari", title = "Succeeding with object databases: a practical look at today's implementations with {Java} and {XML}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxi + 442", year = "2001", ISBN = "0-471-38384-8 (cloth)", ISBN-13 = "978-0-471-38384-0 (cloth)", LCCN = "QA76.9.D3 C3848 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented databases; XML (document markup language)", } @Article{Chen:2001:JJB, author = "Ding-Yi Chen and Tyng-Ruey Chuang and Shi-Chun Tsai", title = "{JGAP}: a {Java}-based graph algorithms platform", journal = j-SPE, volume = "31", number = "7", pages = "615--635", month = jun, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.379", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Jul 14 12:28:45 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003148/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003148&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @InProceedings{Chen:2001:JSM, author = "Deqing Chen and Alan Messer and Philippe Bernadat and Guangrui Fu and Zoran Dimitrijevic and David Jeun Fung Lie and Durga Mannaru and Alma Riska and Dejan Milojicic", title = "{JVM} Susceptibility to Memory Errors", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/chen.html", acknowledgement = ack-nhfb, } @Article{Chen:2001:SCJ, author = "Zhenqiang Chen and Baowen Xu", title = "Slicing Concurrent {Java} Programs", journal = j-SIGPLAN, volume = "36", number = "4", pages = "41--47", month = apr, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:24 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chen:2001:SOO, author = "Zhenqiang Chen and Baowen Xu", title = "Slicing Object-Oriented {Java} Programs", journal = j-SIGPLAN, volume = "36", number = "4", pages = "33--40", month = apr, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:24 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chiao:2001:ETS, author = "Hsin-Ta Chiao and Shyan-Ming Yuan", title = "An enhanced thread synchronization mechanism for {Java}", journal = j-SPE, volume = "31", number = "7", pages = "667--695", month = jun, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.383", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Fri Feb 22 12:14:58 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", note = "See correction \cite{Chiao:2001:RIM}.", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003134/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003134&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Chiao:2001:MEM, author = "Hsin-Ta Chiao and Chi-Houng Wu and Shyan-Ming Yuan", title = "A More Expressive Monitor for Concurrent {Java} Programming", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "1053--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19001053.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19001053.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chiao:2001:RIM, author = "Hsin-Ta Chiao and Shyan-Ming Yuan", title = "The real inventor of the monitor concept: a short note to correct the {SP{\&}E} paper entitled {``An enhanced thread synchronization mechanism for Java''}", journal = j-SPE, volume = "31", number = "14", pages = "1393--1393", day = "25", month = nov, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.420", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Fri Feb 22 12:06:59 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", note = "See \cite{Chiao:2001:ETS}.", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/85515675/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=85515675&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Choi:2001:CLF, author = "Kwanghoon Choi and Hyun-il Lim and Taisook Han", title = "Compiling Lazy Functional Programs Based on the Spineless Tagless {$G$}-Machine for the {Java} Virtual Machine", journal = j-LECT-NOTES-COMP-SCI, volume = "2024", pages = "92--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:41 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2024.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2024/20240092.htm; http://link.springer-ny.com/link/service/series/0558/papers/2024/20240092.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Christiaens:2001:JRR, author = "Mark Christiaens", title = "{JaRec}: Record\slash Replay for Multi-threaded {Java} Programs", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/JVM_wips/S07.pdf", acknowledgement = ack-nhfb, } @Article{Christiaens:2001:TDR, author = "Mark Christiaens and Koen {De Bosschere}", title = "{TRaDe}: Data Race Detection for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2074", pages = "761--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:30 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2074.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2074/20740761.htm; http://link.springer-ny.com/link/service/series/0558/papers/2074/20740761.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Christiaens:2001:TTA, author = "Mark Christiaens and Koen {De Bosschere}", title = "{TRaDe}: a Topological Approach to On-the-Fly Race Detection in {Java} Programs", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/christiaens.html", acknowledgement = ack-nhfb, } @Article{Christian:2001:PJT, author = "Wolfgang Christian and Mario Belloni and Melissa Dancy", title = "Physlets: {Java} Tools for a {Web}-Based Physics Curriculum", journal = j-LECT-NOTES-COMP-SCI, volume = "2073", pages = "1061--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2073.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2073/20731061.htm; http://link.springer-ny.com/link/service/series/0558/papers/2073/20731061.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Cleaveland:2001:PGJ, author = "J. Craig Cleaveland", title = "Program generators with {Java} and {XML}", publisher = pub-PH, address = pub-PH:adr, pages = "xxviii + 415", year = "2001", ISBN = "0-13-025878-4", ISBN-13 = "978-0-13-025878-6", LCCN = "QA76.73.J38 C54 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, keywords = "generators (computer programs); Java (computer program language); XML (document markup language)", } @Book{Cleaveland:2001:PGX, author = "J. Craig Cleaveland", title = "Program generators with {XML} and {Java}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxviii + 415", year = "2001", ISBN = "0-13-025878-4", ISBN-13 = "978-0-13-025878-6", LCCN = "QA76.73.J38 C54 2001", bibdate = "Wed Mar 27 20:47:26 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", series = "The Charles F. Goldfarb series on open information management", acknowledgement = ack-nhfb, keywords = "generators (computer programs); Java (computer program language); XML (document markup language)", } @Article{Cocosco:2001:JIV, author = "Chris A. Cocosco and Alan C. Evans", title = "{Java} {Internet} Viewer: a {WWW} Tool for Remote {$3$D} Medical Image Data Visualization and Comparison", journal = j-LECT-NOTES-COMP-SCI, volume = "2208", pages = "1415--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:53 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2208.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2208/22081415.htm; http://link.springer-ny.com/link/service/series/0558/papers/2208/22081415.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Coglio:2001:TSJ, author = "Alessandro Coglio and Allen Goldberg", title = "Type safety in the {JVM}: some problems in {Java 2 SDK 1.2} and proposed solutions", journal = j-CCPE, volume = "13", number = "13", pages = "1153--1171", month = nov, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.596", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Feb 25 14:51:24 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/88011336/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=88011336&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Book{Collins:2001:DSJ, author = "William J. (William Joseph) Collins", title = "Data structures and the {Java} collections framework", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xx + 716", year = "2001", ISBN = "0-07-236964-7", ISBN-13 = "978-0-07-236964-9", LCCN = "QA76.73.J38 C657 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Book{Cooper:2001:JI, author = "Brian Cooper", title = "{JavaScript}: an introduction", publisher = "Dorling Kindersley Pub.", address = "New York, NY, USA", pages = "72", year = "2001", ISBN = "0-7894-8005-0 (paperback)", ISBN-13 = "978-0-7894-8005-7 (paperback)", LCCN = "QA76.73.J39 C66 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "At head of title: Internet", series = "Essential computers", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Courtney:2001:FFR, author = "Antony Courtney", title = "{Frapp{\'e}}: Functional Reactive Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1990", pages = "29--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:09 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1990.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1990/19900029.htm; http://link.springer-ny.com/link/service/series/0558/papers/1990/19900029.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @TechReport{Cowlishaw:2001:DAJ, author = "Mike Cowlishaw", title = "Decimal Arithmetic for {\tt java.math}: {JSR 13} Public Review Draft", type = "Technical Report", number = "Version 1.33", institution = "IBM UK Laboratories", address = "Hursley, UK", pages = "iii + 60", day = "16", month = jul, year = "2001", bibdate = "Fri May 20 14:37:16 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www2.hursley.ibm.com/jsr13/jsr13spec.pdf", acknowledgement = ack-nhfb, keywords = "decimal floating-point arithmetic", remark = "Describes a proposal for arbitrary-precision decimal floating-point arithmetic in Java.", } @Article{Cox:2001:JQH, author = "Brad Cox", title = "{Java Q\&A}: How Do {I} Handle Multiline Strings?", journal = j-DDJ, volume = "26", number = "6", pages = "147--149", month = jun, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 7 06:07:16 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_06/jqa0601.txt", abstract = "Can Java handle multiline strings? Yes, and Brad shows you how. Additional resources include jqa0601.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Cox:2001:WAJ, author = "Brad Cox", title = "{Web} Applications as {Java} Servlets", journal = j-DDJ, volume = "26", number = "5", pages = "97--100, 102--104", month = may, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Apr 12 06:45:08 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_05/webapp.txt; http://www.ddj.com/ftp/2001/2001_05/webapp.zip", abstract = "Brad describes an approach to building web-based applications that exploit Java's type-checking ability to validate field parameters and detect invalid links between pages. Additional resources include webapp.txt (listings) and webapp.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Craig:2001:IJS, author = "David Craig and Steven Carroll and Fabian Breg and Dimitrios S. Nikolopoulos and Constantine Polychronopoulos", title = "Improving {Java} Server Performance with Interruptlets", journal = j-LECT-NOTES-COMP-SCI, volume = "2073", pages = "223--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2073.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2073/20730223.htm; http://link.springer-ny.com/link/service/series/0558/papers/2073/20730223.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Crowell:2001:CP, author = "Talbott Crowell", title = "{C\#} and {Perl}: {C\#} has a lot in common with many languages", journal = j-DDJ, volume = "26", number = "10", pages = "50, 52, 54", month = oct, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_10/csharpperl.txt", abstract = "Although C\# is an evolution of C/C++ much like Java, it also borrows from other languages --- and has facilities familiar to Perl. Talbott presents common Perl scripts that you can implement in C\#. Additional resources include {\tt csharpperl.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Dale:2001:IJS, author = "Nell B. Dale and Chip Weems and Mark R. Headington", title = "Introduction to {Java} and software design", publisher = pub-JONES-BARTLETT, address = pub-JONES-BARTLETT:adr, pages = "xxiii + 771", year = "2001", ISBN = "0-7637-1064-4", ISBN-13 = "978-0-7637-1064-4", LCCN = "QA76.73.J38 D34 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language)", } @InProceedings{Daly:2001:PID, author = "Charles Daly and Jane Horgan and James Power and John Waldron", title = "Platform Independent Dynamic {Java Virtual Machine Analysis}: the {Java Grande Forum} Benchmark Suite", crossref = "ACM:2001:PAJ", pages = "106--115", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/16.html; http://www.philippsen.com/JGI2001/finalpapers/18500106.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Misc{Darcy:2001:BLH, author = "Joseph D. Darcy", title = "{Borneo} Language Homepage", howpublished = "World Wide Web site.", year = "2001", bibdate = "Mon May 06 09:06:04 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jddarcy.org/Borneo", acknowledgement = ack-nhfb, keywords = "floating-point arithmetic; IEEE 754; Java", } @InProceedings{Darcy:2001:WEU, author = "Joseph D. Darcy", booktitle = "JavaOne 2001, June 7, 2001", title = "What Everybody Using the {Java\TM} Programming Language Should Know About Floating-Point Arithmetic", publisher = "????", address = "????", pages = "??--??", year = "2001", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Mon May 06 09:14:05 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "51 slides.", URL = "http://java.sun.com/people/darcy/JavaOne/2001/1789darcy.pdf", acknowledgement = ack-nhfb, } @Book{Darwin:2001:JCS, author = "Ian Darwin", title = "{Java} Cookbook: Solutions and Examples for {Java} Developers", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxix + 850", month = jun, year = "2001", ISBN = "0-596-00170-3 (paperback)", ISBN-13 = "978-0-596-00170-4 (paperback)", LCCN = "QA76.73.J38 D348 2001", bibdate = "Mon Jul 30 06:50:24 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/ora.bib; http://www.oreilly.com/catalog/", price = "US\$44.95", URL = "http://www.oreilly.com/catalog/9780596001704; http://www.oreilly.com/catalog/javacook", abstract = "Offering Java developers short, focused pieces of code that are easy to incorporate into other programs, this text focuses on things that are useful, tricky, or both. The book's code segments cover all of the dominant APIs and many specialized APIs.", acknowledgement = ack-nhfb, tableofcontents = "1. Getting Started: Compiling, Running, and Debugging \\ 2. Interacting with the Environment \\ 3. Strings and Things \\ 4. Pattern Matching with Regular Expressions \\ 5. Numbers \\ 6. Dates and Times \\ 7. Structuring Data with Java \\ 8. Object-Oriented Techniques \\ 9. Input and Output \\ 10. Directory and Filesystem Operations \\ 11. Programming Serial and Parallel Ports \\ 12. Graphics and Sound \\ 13. Graphical User Interfaces \\ 14. Internationalization and Localization \\ 15. Network Clients \\ 16. Server-Side Java: Sockets \\ 17. Network Clients II: Applets and Web Clients \\ 18. Web Server Java: Servlets and JSP \\ 19. Java and Electronic Mail \\ 20. Database Access \\ 21. XML \\ 22. Distributed Java: RMI \\ 23. Packages and Packaging \\ 24. Threaded Java \\ 25. Introspection, or ``A Class Named Class'' \\ 26. Using Java with Other Languages", } @Article{Dautelle:2001:JDJ, author = "Jean-Marie Dautelle", title = "{J.A.D.E.}: The {Java Addition to the Default Environment}", journal = j-DDJ, volume = "26", number = "2", pages = "52, 54, 56", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/jade.txt", abstract = "The Java Addition to the Default Environment (or ``J.A.D.E.'' for short) is an open-source project that fills gaps in the JDK core library. Additional resources include jade.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{deDinechin:2001:JQW, author = "Christophe de Dinechin", title = "{Java Q\&A}: What is {Moka}?", journal = j-DDJ, volume = "26", number = "7", pages = "125--126, 128, 130--131", month = jul, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 7 06:07:17 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_07/jqa0701.txt", abstract = "Moka is a Java-to-Java compiler that lets you extend Java to add features the language currently does not support. Additional resources include jqa0701.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Deitsch:2001:JI, author = "Andrew Deitsch and David Czarnecki", title = "{Java} internationalization", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 444", year = "2001", ISBN = "0-596-00019-7", ISBN-13 = "978-0-596-00019-6", LCCN = "QA76.73.J38 D45 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "application software -- development; Java (computer program language)", } @Book{Deshpande:2001:CDA, author = "Salil Deshpande", title = "{CORBA} and Distributed Applications Including {Java}", publisher = pub-PH, address = pub-PH:adr, pages = "????", year = "2001", ISBN = "0-13-349960-X", ISBN-13 = "978-0-13-349960-5", LCCN = "????", bibdate = "Tue Feb 20 18:27:36 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$45", acknowledgement = ack-nhfb, } @InProceedings{Deters:2001:SMA, author = "Ralph Deters", title = "A Scalable Multi-Agent System", crossref = "ACM:2001:PAJ", pages = "??--??", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/19.html", acknowledgement = ack-nhfb, keywords = "Java", } @InProceedings{Dice:2001:IFJ, author = "David Dice", title = "Implementing Fast {Java{\TM}} Monitors with Relaxed-Locks", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/dice.html", acknowledgement = ack-nhfb, } @Book{Diehl:2001:DVW, author = "Stephan Diehl", title = "Distributed virtual worlds: foundations and implementation techniques using {VRML}, {Java}, and {CORBA}", publisher = pub-SV, address = pub-SV:adr, pages = "xii + 166", year = "2001", ISBN = "3-540-67624-4", ISBN-13 = "978-3-540-67624-9", LCCN = "QA76.9.D5 D427 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "CORBA (computer architecture); electronic data processing -- distributed processing; Java (computer program language); virtual reality; VRML (computer program language)", } @Article{Dietrich:2001:RGU, author = "Suzanne W. Dietrich and Dan Suceava and Chakrapani Cherukuri and Susan D. Urban", title = "A reusable graphical user interface for manipulating object-oriented databases using {Java} and {XML}", journal = j-SIGCSE, volume = "33", number = "1", pages = "362--366", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364712", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes the design and functionality of a graphical user interface (GUI) written in Java Swing that is used to support instructional activities associated with teaching object-oriented database (OODB) concepts. The GUI supports the manipulation of objects in an OODB, assuming the implementation of a specified interface for interacting with an OODB. By using the interface, students can focus on object-oriented design and programming concepts associated with OODB concepts rather than the development of a user interface. Since the GUI uses the Extensible Markup Language (XML) for defining the database schema and data import/export, the use of the GUI provides the added benefit of demonstrating the manner in which XML interacts with database technology.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Dobbing:2001:OSJ, author = "Brian Dobbing", title = "Overview of the {Sun Java Community Process}'s {Real-Time Expert Group} specification of {RT-Java}: {Session Summary}", journal = j-SIGADA-LETTERS, volume = "21", number = "1", pages = "18--19", month = mar, year = "2001", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Dobbing:2001:RPH, author = "Brian Dobbing", title = "The {Ravenscar} profile for high-integrity {Java} programs?", journal = j-SIGADA-LETTERS, volume = "21", number = "1", pages = "56--61", month = mar, year = "2001", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Dobbing:2001:RSA, author = "Brian Dobbing and Tullio Vardanega", title = "Report of session: analysis of the {J} consortium real-time {Java} proposal", journal = j-SIGADA-LETTERS, volume = "21", number = "1", pages = "17--18", month = mar, year = "2001", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Domani:2001:IFG, author = "Tamar Domani and Elliot K. Kolodner and Ethan Lewis and Eliot E. Salant and Katherine Barabash and Itai Lahan and Yossi Levanoni and Erez Petrank and Igor Yanorer", title = "Implementing an On-the-Fly Garbage Collector for {Java}", journal = j-SIGPLAN, volume = "36", number = "1", pages = "155--166", month = jan, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "ACM SIGPLAN International Symposium on Memory Management (ISMM'00)", } @Article{Donsez:2001:TMA, author = "Didier Donsez and S{\'e}bastien Jean and Sylvain Lecomte and Olivier Thomas", title = "Turning Multi-applications Smart Cards Services Available from Anywhere at Anytime: a {SOAP \slash MOM} Approach in the Context of {Java} Cards", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "83--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400083.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400083.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Drossopoulou:2001:AMJ, author = "Sophia Drossopoulou", title = "An Abstract Model of {Java} Dynamic Linking and Loading", journal = j-LECT-NOTES-COMP-SCI, volume = "2071", pages = "53--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:26 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2071.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2071/20710053.htm; http://link.springer-ny.com/link/service/series/0558/papers/2071/20710053.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Drossopoulou:2001:FTJ, author = "Sophia Drossopoulou and Susan Eisenbach and Bart Jacobs and Gary T. Leavens and Peter M{\"u}ller and Arnd Poetzsch-Heffter", title = "Formal Techniques for {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "1964", pages = "41--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Feb 1 09:17:20 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1964.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1964/19640041.htm; http://link.springer-ny.com/link/service/series/0558/papers/1964/19640041.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Drozdek:2001:DSA, author = "Adam Drozdek", title = "Data structures and algorithms in {Java}", publisher = pub-BROOKS-COLE, address = pub-BROOKS-COLE:adr, pages = "xvii + 622", year = "2001", ISBN = "0-534-37668-1", ISBN-13 = "978-0-534-37668-0", LCCN = "QA76.73.J38 D695 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer algorithms; data structures (computer science); Java (computer program language)", } @Article{Duncan:2001:LPD, author = "Ray Duncan and Duncan Harris and Douglas Reilly and Craig Rodrigues and Michael Birken and Paul S. Person", title = "Letters: Plug-in Desupport; Threading and the {.Net} Framework; {CORBA} Interoperability; Game Over for {Java}; Totally Wired", journal = j-DDJ, volume = "26", number = "11", pages = "10, 12", month = nov, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InProceedings{Dutchyn:2001:MDJ, author = "Christopher Dutchyn and Paul Lu and Duane Szafron and Steven Bromling and Wade Holst", title = "Multi-Dispatch in the {Java Virtual Machine}: Design and Implementation", crossref = "USENIX:2001:PUC", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 18:09:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/dutchyn.html", acknowledgement = ack-nhfb, } @Article{Dysvik:2001:JEE, author = "B. Dysvik and I. Jonassen", title = "{J-Express}: exploring gene expression data using {Java}", journal = j-BIOINFORMATICS, volume = "17", number = "4", pages = "369--370", month = apr, year = "2001", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "2", } @Article{Eaddy:2001:CVJ, author = "Marc Eaddy", title = "{C\#} Versus {Java}", journal = j-DDJ, volume = "26", number = "2", pages = "74, 76, 78, 80, 82", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/csharpj.txt", abstract = "Six of one and half a dozen of the other? Marc finds out when he examines how Microsoft's C\# differs from Java. Additional resources include csharpj.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Eberhard:2001:EOC, author = "John Eberhard and Anand Tripathi", title = "Efficient Object Caching for Distributed {Java RMI} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2218", pages = "15--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:05 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2218.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2218/22180015.htm; http://link.springer-ny.com/link/service/series/0558/papers/2218/22180015.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Edelstein:2001:MJP, author = "Orit Edelstein and Eitan Farchi and Yarden Nir and Gil Ratsaby and Shmuel Ur", title = "Multithreaded {Java} Program Test Generation", crossref = "ACM:2001:PAJ", pages = "181--181", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/18.html; http://www.philippsen.com/JGI2001/finalpapers/18500181.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Book{Edwards:2001:CJ, author = "W. Keith Edwards", title = "Core {Jini}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xliii + 962", year = "2001", ISBN = "0-13-089408-7", ISBN-13 = "978-0-13-089408-3", LCCN = "QA76.9.D5 E38 2001", bibdate = "Fri Apr 13 15:28:03 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$54.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130894087.html", acknowledgement = ack-nhfb, } @Book{Edwards:2001:JEE, author = "W. Keith Edwards and Tom Rodden", title = "{Jini} Example by Example", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xii + 569", year = "2001", ISBN = "0-13-033858-3", ISBN-13 = "978-0-13-033858-7", LCCN = "QA76.9.D5E383 2001", bibdate = "Fri Apr 11 15:54:24 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", URL = "http://www.sun.com/books/catalog/edwards4/index.html", acknowledgement = ack-nhfb, } @Article{Egyedi:2001:SFC, author = "T. Egyedi", title = "Strategies for De facto Compatibility: Standardization, Proprietary and Open Source Approaches to {Java}", journal = "Knowledge, Technology, and Policy", volume = "14", number = "2", pages = "113--128", day = "1", month = jul, year = "2001", CODEN = "????", ISSN = "0897-1986", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "16", } @Article{Eisenbach:2001:SIF, author = "Susan Eisenbach and Gary T. Leavens", title = "Special issue: formal techniques for {Java} programs", journal = j-CCPE, volume = "13", number = "13", pages = "1121--1123", month = nov, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.595", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Feb 25 14:51:24 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/88011339/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=88011339&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{El-Kharashi:2001:ATA, author = "M. Watheq El-Kharashi and Fayez Elguibaly and Kin F. Li", title = "Adapting {Tomasulo}'s algorithm for bytecode folding based {Java} processors", journal = j-COMP-ARCH-NEWS, volume = "29", number = "5", pages = "1--8", month = dec, year = "2001", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:41:22 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Eluard:2001:OSJ, author = "Marc {\'E}luard and Thomas Jensen and Ewen Denne", title = "An Operational Semantics of the {Java} Card Firewall", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "95--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400095.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400095.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Emmerich:2001:CTJ, author = "Wolfgang Emmerich and Nima Kaveh", title = "Component technologies: {Java Beans}, {COM}, {CORBA}, {RMI}, {EJB} and the {CORBA Component Model}", journal = j-SIGSOFT, volume = "26", number = "5", pages = "311--312", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503259", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This one-day tutorial is aimed at software engineering practitioners and researchers, who are familiar with object-oriented analysis, design and programming and want to obtain an overview of the technologies that are enabling component-based development. We introduce the idea of component-based development by defining the concept and providing its economic rationale. We describe how object-oriented programming evolved into local component models, such as Java Beans and distributed object technologies, such as the Common Object Request Broker Architecture (CORBA), Java Remote Method Invocation (RMI) and the Component Object Model (COM). We then address how these technologies matured into distributed component models, in particular Enterprise Java Beans (EJB) and the CORBA Component Model (CCM). We give an assessment of the maturity of each of these technologies and sketch how they are used to build distributed architectures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Estell:2001:IWB, author = "John K. Estell", title = "{IPP}: a {Web}-based interactive programming portfolio", journal = j-SIGCSE, volume = "33", number = "1", pages = "149--153", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364569", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The portfolio is a well-established method for documenting student learning outcomes. This paper presents the development of a web-based interactive programming portfolio methodology at our institution. This methodology allows the reviewer to easily interact with the computer program under review through the use of Java applets. Both an evaluation form as well as detailed rubrics for the evaluation of the portfolio entry is accessible from the web page containing the portfolio entry. These resources allow reviewers to easily submit their feedback electronically to our students.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ethington:2001:DPS, author = "Russ Ethington", title = "Diagnosing Proxy Server Problems", journal = j-DDJ, volume = "26", number = "3", pages = "104, 106, 108, 110", month = mar, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_03/proxy.txt; http://www.ddj.com/ftp/2001/2001_03/proxy.zip", abstract = "Russ presents TCPMapper, a Java utility that lets you peek inside the network connections between your browser and a proxy server. Additional resources include proxy.txt (listings) and proxy.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Evripidou:2001:PMP, author = "Paraskevas Evripidou and George Samaras and Christoforos Panayiotou and Evaggelia Pitoura", title = "The {PaCMAn Metacomputer}: parallel computing with {Java} mobile agents", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "265--280", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/33/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @InProceedings{Fahringer:2001:MDP, author = "Thomas Fahringer and Cl{\'o}vis Seragiotto J{\'u}nior", title = "Modeling and Detecting Performance Problems for Distributed and Parallel Programs with {JavaPSL}", crossref = "ACM:2001:SHP", pages = "??--??", year = "2001", bibdate = "Sat Feb 10 14:28:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc2001.org/papers/pap.pap245.pdf", acknowledgement = ack-nhfb, pagecount = "17", } @Article{Feijs:2001:MNA, author = "Loe M. G. Feijs", title = "Mechanisms for naming: an algebraic approach with an application to {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "39", number = "2--3", pages = "149--188", day = "??", month = mar, year = "2001", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Sat Jul 14 11:56:10 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/01676423; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/39/21/43/23/20/abstract.html; http://www.elsevier.nl/gej-ng/10/39/21/43/23/20/article.pdf", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Findler:2001:BCB, author = "Robert Bruce Findler and Mario Latendresse and Matthias Felleisen", title = "Behavioral contracts and behavioral subtyping", journal = j-SIGSOFT, volume = "26", number = "5", pages = "229--236", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503240", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software manufacturing has the potential to bring division-of-labor benefits to the world of software engineering. In order to make a market of software components viable, however, producers and consumers must agree on enforceable software contracts. In this paper, we show how to enforce contracts if components are manufactured from class and interface hierarchies. In particular, we focus on one style of contract: pre- and post-conditions. Programmers annotate class and interface methods with pre- and post-conditions and the run-time system checks these conditions during evaluation. These contracts guarantee that methods are called properly and provide appropriate results. In procedural languages, the use of pre- and post-condition contracts is well-established and studies have demonstrated its value. In object-oriented languages, however, assigning blame for pre- and post-condition failures poses subtle and complex problems. Specifically, assigning blame for malformed class and interface hierarchies is so difficult that none of the existing contract monitoring tools correctly assign blame for these failures. In this paper, we show how to overcome these problems in the context of Java. Our work is based on the notion of behavioral subtyping.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fischmeister:2001:EST, author = "Sebastian Fischmeister and Giovanni Vigna and Richard A. Kemmerer", title = "Evaluating the Security of Three {Java}-Based Mobile Agent Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2240", pages = "31--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:25 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2240.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2240/22400031.htm; http://link.springer-ny.com/link/service/series/0558/papers/2240/22400031.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Flanagan:2001:HAA, author = "C. Flanagan and K. R. M. Leino", title = "{Houdini}, an Annotation Assistant for {ESC\slash Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2021", pages = "500--517", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fleury:2001:ERV, author = "Ann E. Fleury", title = "Encapsulation and reuse as viewed by {Java} students", journal = j-SIGCSE, volume = "33", number = "1", pages = "189--193", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364582", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Through audio-taped student interviews, this study examined beginning Java students' conceptions of object-oriented programming. Students rated programs on stylistic criteria including ease of comprehension, ease of debugging, ease of modification, ease of reuse, and overall quality of design. They also explained the reasons for their ratings. The results will be discussed and interpreted in light of previous research. Implications for instruction will also be examined.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Fong:2001:PLD, author = "Philip W. L. Fong and Robert D. Cameron", title = "Proof Linking: Distributed Verification of {Java} Classfiles in the Presence of Multiple Classloaders", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/fong.html", acknowledgement = ack-nhfb, } @Article{Fox:2001:SIA, author = "Geoffrey Fox", title = "Special Issue: {ACM 2000 Java Grande Conference}", journal = j-CCPE, volume = "13", number = "8--9", pages = "643--644", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.574", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503221/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503221&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Foxwell:2001:JXE, author = "Harry J. Foxwell", title = "{Java and XSLT by Eric M. Burke}", journal = j-MARKUP-LANG, volume = "3", number = "4", pages = "446--447", month = "Fall", year = "2001", CODEN = "MLTPFG", ISSN = "1099-6621", ISSN-L = "1099-6621", bibdate = "Sat Sep 6 11:22:16 MDT 2003", bibsource = "http://mitpress.mit.edu/journal-home.tcl?issn=10996621; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://mitpress.mit.eduhttp://mitpress.mit.edu/catalog/item/default.asp?sid=81FFBAAF-F78B-4799-8942-1A7B831BFC9A&ttype=6&tid=9097", acknowledgement = ack-nhfb, fjournal = "Markup languages: theory \& practice", } @Article{Foxwell:2001:PJD, author = "H. J. Foxwell", title = "{Professional Java Data, by Danny Ayres, John Bell, Carl Bettis, Thomas Bishop, Bjarki Holm, Glenn Mitchell II, Kelly Lin Poon, Sean Rhody, Mike Bogavich, Matthew Ferris, Rick Grehan, Tony Loton, Nitin Nanda, and Mark Wilcox}", journal = j-MARKUP-LANG, volume = "3", number = "3", pages = "382--383", day = "10", month = dec, year = "2001", CODEN = "MLTPFG", ISSN = "1099-6621", ISSN-L = "1099-6621", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Markup languages: theory \& practice", pagecount = "2", } @Article{Foxwell:2001:RPJ, author = "Harry J. Foxwell", title = "Review: {Professional Java Data by Danny Ayres et al.}", journal = j-MARKUP-LANG, volume = "3", number = "3", pages = "382--383", month = "Summer", year = "2001", CODEN = "MLTPFG", ISSN = "1099-6621", ISSN-L = "1099-6621", bibdate = "Sat Sep 6 11:22:17 MDT 2003", bibsource = "http://mitpress.mit.edu/journal-home.tcl?issn=10996621; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Markup languages: theory \& practice", } @MastersThesis{Freeby:2001:CDJ, author = "James M. Freeby", title = "A comparison of {DHTML} and {JAVA} applets", type = "Thesis ({M.S.})", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2001", LCCN = "QA76.76.H94 F74 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "academic dissertations -- University of California, Santa Cruz -- 2001; academic dissertations -- University of California, Santa Cruz -- computer; DHTML (document markup language); JavaScript (computer program language); science; Web sites -- design", } @Article{Fukunari:2001:BWJ, author = "Miki Fukunari and Yu-Liang Chi and Philip M. Wolfe", title = "Best of {Websim99}: {JavaBean}-based simulation with operational procedure table {(OPT)}", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "5", pages = "513--523", month = mar, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:21 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/30/27/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Gabrilovich:2001:JCI, author = "Evgeniy Gabrilovich and Lev Finkelstein", title = "{JNI--C++} Integration Made Easy", journal = j-CCCUJ, volume = "19", number = "1", pages = "10--??", month = jan, year = "2001", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:29 MDT 2002", bibsource = "http://www.cuj.com/articles/2001/0101/0101toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Extremely versatile interfaces like the Java JNI also tend to be extremely cumbersome, as a rule. The authors have found a way to break that rule.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @InProceedings{Gagnon:2001:SRF, author = "Etienne M. Gagnon and Laurie J. Hendren", title = "{SableVM}: a Research Framework for the Efficient Execution of {Java} Bytecode", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/gagnon.html", acknowledgement = ack-nhfb, } @Article{Galambos:2001:LDI, author = "Leo Galambos", title = "Lemmatizer for Document Information Retrieval Systems in {JAVA}", journal = j-LECT-NOTES-COMP-SCI, volume = "2234", pages = "243--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:20 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2234.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2234/22340243.htm; http://link.springer-ny.com/link/service/series/0558/papers/2234/22340243.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Gannon:2001:JCC, author = "Dennis Gannon and others", title = "Panel Discussion: {Java}, {C++}, {C\#}, and Virtual Machines for high performance", crossref = "ACM:2001:PAJ", pages = "??--??", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java", } @Book{Garms:2001:PJS, author = "Jess Garms and Daniel Somerfield", title = "Professional {Java} security", publisher = pub-WROX, address = pub-WROX:adr, pages = "vii + 523", year = "2001", ISBN = "1-86100-425-7", ISBN-13 = "978-1-86100-425-3", LCCN = "QA76.73.J38 G37 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer security; Java (computer program language)", } @Book{Garrido:2001:OOD, author = "Jose M. Garrido", title = "Object-oriented discrete-event simulation with {Java}: a practical introduction", publisher = pub-KLUWER, address = pub-KLUWER:adr, pages = "xvi + 256", year = "2001", ISBN = "0-306-46688-0", ISBN-13 = "978-0-306-46688-5", LCCN = "QA76.73.J38 G365 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM with simulation models explained in the book.", series = "Series in computer systems", acknowledgement = ack-nhfb, keywords = "Java (computer programming language); object-oriented programming (computer science)", } @Book{Geary:2001:AJP, author = "David M. Geary", title = "Advanced {JavaServer} pages", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xx + 487", year = "2001", ISBN = "0-13-030704-1 (paperback)", ISBN-13 = "978-0-13-030704-0 (paperback)", LCCN = "TK5105.8885.J38 G43 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java 2 platform, enterprise edition series", URL = "http://www.sun.com/books/catalog/gearyjsp/", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaServer pages (computer file); Web servers", } @Article{Getov:2001:JCL, author = "V. Getov and M. Philippsen", title = "Java Communications for Large-Scale Parallel Computing", journal = j-LECT-NOTES-COMP-SCI, volume = "2179", pages = "33--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:22 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2179.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2179/21790033.htm; http://link.springer-ny.com/link/service/series/0558/papers/2179/21790033.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Getov:2001:MCJ, author = "Vladimir Getov and Gregor von Laszewski and Michael Philippsen and Ian Foster", title = "Multiparadigm communications in {Java} for {Grid} computing", journal = j-CACM, volume = "44", number = "10", pages = "118--125", month = oct, year = "2001", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Jan 30 17:44:59 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Ghaly:2001:SEA, author = "Ragae Ghaly and Krishna Kothapalli and Uma Meyyappan", title = "Selecting {EJB} Application Servers: Benchmark and test a variety of {EJB} servers before making a decision", journal = j-DDJ, volume = "26", number = "9", pages = "96, 98, 100--101", month = sep, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:39 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "The Enterprise JavaBeans (EJB) architecture is the standard component architecture for building distributed object-oriented business applications in Java.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Gibbons:2001:TDJ, author = "Chad Gibbons", title = "Tape Devices and {Java}", journal = j-DDJ, volume = "26", number = "2", pages = "44, 46, 48--50", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/javatape.txt; http://www.ddj.com/ftp/2001/2001_02/javatape.zip", abstract = "Since native support for tape devices doesn't exist in Java, Chad had to build his own tape library. Additional resources include javatape.txt (listings) and javatape.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Gilreath:2001:JNP, author = "William F. Gilreath", title = "{Java Network Programming} Introduces the Fundamentals", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "2", number = "5", year = "2001", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0105/departments/bks0105b.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Glitho:2001:AFU, author = "R. Glitho and R. Hamadi and R. Huie", title = "Architectural Framework for Using {Java} Servlets in a {SIP} Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2094", pages = "707--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:54 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2094.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2094/20940707.htm; http://link.springer-ny.com/link/service/series/0558/papers/2094/20940707.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Goeschl:2001:JTT, author = "Siegfried Goeschl", title = "The {JUnit++} Testing Tool", journal = j-DDJ, volume = "26", number = "2", pages = "34, 36--38", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/junitpp.txt; http://www.ddj.com/ftp/2001/2001_02/junitpp.zip", abstract = "JUnit++ is a freely available Java unit test framework that includes a test data repository, command-line arguments, and a TestRunner class that supports a built-in repetition counter and multithreading at the command line. Additional resources include junitpp.txt (listings) and junitpp.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Goldman:2001:JQW, author = "Oliver Goldman", title = "{Java Q\&A}: What are Checked Exceptions?", journal = j-DDJ, volume = "26", number = "11", pages = "111--112, 114", month = nov, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_11/jqa1101.txt", abstract = "Java provides two types of exceptions: checked and unchecked. Additional resources include {\tt jqa1101.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Goldweber:2001:URU, author = "Michael Goldweber and Clare Congdon and Barry Fagin and Deborah Hwang and Frank Klassner", title = "The use of robots in the undergraduate curriculum: experience reports", journal = j-SIGCSE, volume = "33", number = "1", pages = "404--405", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364763", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Using the robot as a metaphor for assisting students in understanding problem solving in general, the algorithmic process, and the relationship between algorithms and computing agents is not new. While simulated robot environments have existed for many years (e.g., Karel the Robot[3]) it is only recently that the technology for inexpensively supplying undergraduates with real robots has become available. Lego Mindstorms, MIT Handyboards, the Rug Warrior, and others are examples of such systems. Programmable in familiar languages, including C, Ada, and Java, these systems allow for the creative exploration of important computer science concepts. Representing a variety of institution types the panelists will discuss their experiences in using hands-on robot-based projects for illustrating various important computer science concepts.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gonzalez-Castano:2001:JCV, author = "F. J. Gonz{\'a}lez-Casta{\~n}o and L. Anido-Rif{\'o}n and J. M. Pousada-Carballo and P. S. Rodr{\'\i}guez-Hern{\'a}ndez and R. L{\'o}pez-G{\'o}mez", title = "A {Java\slash CORBA} virtual machine architecture for remote execution of optimization solvers in heterogeneous networks", journal = j-SPE, volume = "31", number = "1", pages = "1--16", month = jan, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/1097-024X(200101)31:1<1::AID-SPE354>3.0.CO;2-C", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:25:28 MST 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/76502341/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=76502341&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Gonzalez:2001:EDT, author = "Evelio J. Gonz{\'a}lez and Alberto F. Hamilton and Lorenzo Moreno and Jos{\'e} F. Sigut and Roberto L. Marichal", title = "{Evenet 2000}: Designing and Training Arbitrary Neural Networks in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2085", pages = "104--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2085.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2085/20850104.htm; http://link.springer-ny.com/link/service/series/0558/papers/2085/20850104.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Goodman:2001:JB, author = "Danny Goodman", title = "{JavaScript} bible", publisher = pub-HUNGRY-MINDS-IN, address = pub-HUNGRY-MINDS-IN:adr, edition = "Gold", pages = "xxxv + 1511", year = "2001", ISBN = "0-7645-4718-6 (paperback)", ISBN-13 = "978-0-7645-4718-8 (paperback)", LCCN = "QA76.73.J39 G65 2001b", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Accompanying CD-ROM includes a searchable e-version of the book, nearly 300 ready-to-run scripts from the book, printable version of the JavaScript and Browser Object Quick Reference, the full version on WebSpice Objects, a demo of BBEdit, and TextPad shareware Contents: CD-ROM contents: nearly 300 HTML document listings from the book -- Supplemental book material -- Electronic version of the Quick Reference -- A complete, searchable version of the book -- Adobe Acrobat Reader -- Third-party software: Microsoft Internet Explorer 5.5 for Windows -- Windows and Macintosh versions of Netscape Navigator 6.0 -- WebSpice Objects (full version) -- TextPad (Windows only) -- BBEdit (Macintosh) (demo)", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Book{Goodman:2001:JEB, author = "Danny Goodman", title = "{JavaScript} examples bible: the essential companion to {JavaScript} bible", publisher = pub-HUNGRY-MINDS-IN, address = pub-HUNGRY-MINDS-IN:adr, pages = "xix + 525", year = "2001", ISBN = "0-7645-4855-7 (paperback)", ISBN-13 = "978-0-7645-4855-0 (paperback)", LCCN = "QA76.73.J39 .G653 2001", bibdate = "Thu Oct 31 17:54:12 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Accompanying CD-ROM includes a searchable e-version of this book and over 300 ready-to-run scripts from the text", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Book{Goodrich:2001:DSA, author = "Michael T. Goodrich and Roberto Tamassia", title = "Data structures and algorithms in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xiii + 641", year = "2001", ISBN = "0-471-38367-8 (cloth)", ISBN-13 = "978-0-471-38367-3 (cloth)", LCCN = "QA76.76.J38 G66 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer algorithms; data structures (computer science); Java (computer program language)", } @Article{Gore:2001:CAM, author = "Rajeev Gor{\'e} and Lan Duy Nguyen", title = "{CardKt}: Automated Multi-modal Deduction on {Java} Cards for Multi-application Security", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "38--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410038.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410038.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gore:2001:CMT, author = "Rajeev Prabhakar Gor{\'e} and Phuong Th{\^e} Nguy{\^e}n", title = "{CardS4}: Modal Theorem Proving on {Java} Smartcards", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "111--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400111.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400111.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gourley:2001:ALB, author = "Don Gourley", title = "An {Apache} Load Balancing Cluster", journal = j-SYS-ADMIN, volume = "10", number = "1", pages = "8, 10, 12, 14, 16", month = jan, year = "2001", CODEN = "SYADE7", ISSN = "1061-2688", bibdate = "Tue Dec 19 15:44:43 MST 2000", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.samag.com/", abstract = "Gourley describes the Java Application Server Pseudo-cluster (JASPer), a simple cluster built with commodity hardware and free software from the Apache Foundation.", acknowledgement = ack-nhfb, fjournal = "Sys admin: the journal for UNIX system administrators", } @Article{Gregg:2001:IEJ, author = "David Gregg and M. Anton Ertl and Andreas Krall", title = "Implementing an Efficient {Java} Interpreter", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "613--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100613.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100613.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Grimm:2001:SAC, author = "Robert Grimm and Brian N. Bershad", title = "Separating access control policy, enforcement, and functionality in extensible systems", journal = j-TOCS, volume = "19", number = "1", pages = "36--70", year = "2001", CODEN = "ACSYEC", ISSN = "0734-2071 (print), 1557-7333 (electronic)", ISSN-L = "0734-2071", bibdate = "Wed Jul 18 10:18:45 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tocs/2001-19-1/p36-grimm/p36-grimm.pdf; http://www.acm.org/pubs/citations/journals/tocs/2001-19-1/p36-grimm/", abstract = "Extensible systems, such as Java or the SPIN extensible operating system, allow for units of code, or extensions, to be added to a running system in almost arbitrary fashion. Extensions closely interact through low-latency but type-safe interfaces to form a tightly integrated system. As extensions can come from arbitrary sources, not all of whom can be trusted to conform to an organization's security policy, such structuring raises the question of how security constraints are enforced in an extensible system. In this paper, we present an access control mechanism for extensible systems to address this problem. Our access control mechanism decomposes access control into a policy-neutral enforcement manager and a security policy manager, and it is transparent to extensions in the absence of security violations. It structures the system into protection domains, enforces protection domains through access control checks, and performs auditing of system operations. The access control mechanism works by inspecting extensions for their types and operations to determine which abstractions require protection and by redirecting procedure or method invocations to inject access control operations into the system. We describe the design of this access control mechanism, present an implementation within the SPIN extensible operating systems, and provide a qualitative as well as quantitative evaluation of the mechanism.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Computer Systems", generalterms = "Security", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J774", keywords = "access check; auditing; extensible systems; Java; policy-neutral enforcement; protection domain; protection domain transfer; security policy; SPIN", subject = "Software --- Operating Systems (D.4); Software --- Operating Systems --- General (D.4.0); Software --- Operating Systems --- Security and Protection (D.4.6): {\bf Access controls}", } @Article{Gu:2001:JBP, author = "Yan Gu and Bu-Sung Lee and Wentong Cai", title = "{JBSP}: a {BSP} Programming Library in {Java}", journal = j-J-PAR-DIST-COMP, volume = "61", number = "8", pages = "1126--1142", day = "1", month = aug, year = "2001", CODEN = "JPDCER", DOI = "https://doi.org/10.1006/jpdc.2001.1735", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Tue Feb 26 06:20:17 MST 2002", bibsource = "http://www.idealibrary.com/servlet/useragent?func=showAllIssues&curIssueID=jpdc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.idealibrary.com/links/doi/10.1006/jpdc.2001.1735; http://www.idealibrary.com/links/doi/10.1006/jpdc.2001.1735/pdf; http://www.idealibrary.com/links/doi/10.1006/jpdc.2001.1735/ref", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Gunnels:2001:FFL, author = "John A. Gunnels and Fred G. Gustavson and Greg M. Henry and Robert A. van de Geijn", title = "{FLAME}: {Formal Linear Algebra Methods Environment}", journal = j-TOMS, volume = "27", number = "4", pages = "422--455", month = dec, year = "2001", CODEN = "ACMSCU", DOI = "https://doi.org/10.1145/504210.504213", ISSN = "0098-3500 (print), 1557-7295 (electronic)", ISSN-L = "0098-3500", bibdate = "Wed Mar 13 08:49:29 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/toms/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Since the advent of high-performance distributed-memory parallel computing, the need for intelligible code has become ever greater. The development and maintenance of libraries for these architectures is simply too complex to be amenable to conventional approaches to implementation. Attempts to employ traditional methodology have led, in our opinion, to the production of an abundance of anfractuous code that is difficult to maintain and almost impossible to upgrade.Having struggled with these issues for more than a decade, we have concluded that a solution is to apply a technique from theoretical computer science, formal derivation, to the development of high-performance linear algebra libraries. We think the resulting approach results in aesthetically pleasing, coherent code that greatly facilitates intelligent modularity and high performance while enhancing confidence in its correctness. Since the technique is language-independent, it lends itself equally well to a wide spectrum of programming languages (and paradigms) ranging from C and Fortran to C++ and Java. In this paper, we illustrate our observations by looking at the Formal Linear Algebra Methods Environment (FLAME), a framework that facilitates the derivation and implementation of linear algebra algorithms on sequential architectures. This environment demonstrates that lessons learned in the distributed-memory world can guide us toward better approaches even in the sequential world. We present performance experiments on the Intel (R) Pentium (R) III processor that demonstrate that high performance can be attained by coding at a high level of abstraction.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Mathematical Software", journal-URL = "http://portal.acm.org/toc.cfm?idx=J782", } @Article{Gunton:2001:SSD, author = "Neil Gunton", title = "{SOAP}: Simplifying Distributed Development: Putting the {Simple Object Access Protocol} to work", journal = j-DDJ, volume = "26", number = "9", pages = "89, 91--92, 95", month = sep, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:39 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_09/soap.txt", abstract = "The Simple Object Access Protocol (SOAP) was developed as an open RPC protocol using XML, targeting much the same problem set as CORBA, DCOM, and Java RMI. Neil uses it to add new facilities to his web site. Additional resources include {\tt soap.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Guo:2001:DDS, author = "Yike Guo and Patrick Wendel", title = "Developing a distributed scalable {Java} component server", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "8", pages = "1051--1057", month = jun, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/35/40/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Hachiya:2001:JUM, author = "Shouichi Hachiya", title = "{Java} Use in Mobile Information Devices: Introducing {JTRON}", journal = j-IEEE-MICRO, volume = "21", number = "4", pages = "16--21", month = jul # "\slash " # aug, year = "2001", CODEN = "IEMIDZ", DOI = "https://doi.org/10.1109/40.946675", ISSN = "0272-1732 (print), 1937-4143 (electronic)", ISSN-L = "0272-1732", bibdate = "Thu Aug 30 11:09:58 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/mi/books/mi2001/pdf/m4016.pdf; m4016abs.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Micro", journal-URL = "http://www.computer.org/csdl/mags/mi/index.html", } @Article{Hakala:2001:GAD, author = "Markku Hakala and Juha Hautam{\"a}ki and Kai Koskimies and Jukka Paakki and Antti Viljamaa and Jukka Viljamaa", title = "Generating Application Development Environments for {Java} Frameworks", journal = j-LECT-NOTES-COMP-SCI, volume = "2186", pages = "163--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:29 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2186.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2186/21860163.htm; http://link.springer-ny.com/link/service/series/0558/papers/2186/21860163.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Hall:2001:CWP, author = "Marty Hall and Larry Brown", title = "Core {Web} programming", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xli + 1398", year = "2001", ISBN = "0-13-089793-0", ISBN-13 = "978-0-13-089793-0", LCCN = "QA76.625 .H35 2001", bibdate = "Thu Jul 12 09:06:31 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun Microsystems Press Java series", URL = "http://www.sun.com/books/catalog/hall2/index.html", acknowledgement = ack-nhfb, } @Book{Hall:2001:MHC, author = "Marty Hall", title = "{Marty Hall}'s Core Servlets and {JavaServer Pages} Training Course: a digital seminar on {CD-ROM}", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "308", year = "2001", ISBN = "0-13-093400-3", ISBN-13 = "978-0-13-093400-0", LCCN = "????", bibdate = "Fri Apr 11 15:57:36 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", acknowledgement = ack-nhfb, } @Book{Halter:2001:JEE, author = "Steven L. Halter", title = "{JavaSpaces} Example by Example", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xiv + 272", year = "2001", ISBN = "0-13-061916-7", ISBN-13 = "978-0-13-061916-7", LCCN = "QA76.76.J38H35 2001", bibdate = "Fri Apr 11 15:53:24 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", URL = "http://www.sun.com/books/catalog/halter2/index.html", acknowledgement = ack-nhfb, } @Book{Hanegan:2001:CCS, author = "Kevin Hanegan", title = "Custom {CGI} scripting with {Perl}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxvii + 276", year = "2001", ISBN = "0-471-01379-X (e-book), 0-471-39597-8", ISBN-13 = "978-0-471-01379-2 (e-book), 978-0-471-39597-3", LCCN = "QA76.73.P22 H36 2001eb", bibdate = "Wed Mar 13 13:43:08 MDT 2013", bibsource = "fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/string-matching.bib", acknowledgement = ack-nhfb, subject = "Perl (Computer program language); CGI (Computer network protocol); Web sites; Design; COMPUTERS; Programming Languages; JavaScript; VBScript; Electronic books", tableofcontents = "Why Is CGI Useful? \\ Client/Server Applications \\ The HTTP Protocol \\ The CGI Process \\ Is CGI Dead? \\ The CGI Framework \\ Pros and Cons of Hosting Your Own Web Server \\ Hardware Concerns \\ Choosing a Platform \\ Choosing Web Server Software \\ What to Ask Your Web Hosting Company \\ Installing a CGI Script \\ Selecting a Text Editor \\ Uploading Your Files \\ Getting around on Your Web Server \\ Installing Your First CGI Script \\ Perl Building Blocks \\ Introduction to Perl \\ Origin of Perl \\ About the Language \\ Why Use Perl? \\ Perl Competitors \\ Writing Perl \\ Designing Your First Perl Script for the Internet \\ Using the Print Statement \\ Using the Print Function \\ Using the Here Document \\ Using q and qq \\ Using Variables \\ Scalar Variables \\ List Arrays \\ Statements and Conditionals \\ Conditional Control Statements \\ Looping Control Statements \\ Using Subroutines \\ Subroutine Basics \\ Return Values \\ Pattern Matching \\ The Match Operator \\ Grouping and Memory \\ Substitutions \\ File Input and Output \\ Creating a New File \\ File Tests \\ File Functions \\ Opening and Closing Files \\ Reading a File \\ Writing to a File \\ Appending to a File \\ File Permissions \\ File Locking \\ Working with HTML Forms \\ Post \\ Get \\ Using cgi-lib.pl \\ Using CGI.pm \\ Page Redirection \\ Using Hidden Fields \\ Using Databases \\ How Relational Databases Work \\ SQL \\ Using the DBI Module \\ Communicating with the Database \\ Interacting with Your Operating System", } @Book{Hardy:2001:CQC, author = "Yorick Hardy and W.-H Steeb", title = "Classical and quantum computing with {C++} and {Java} simulations", publisher = pub-BIRKHAUSER, address = pub-BIRKHAUSER:adr, pages = "xxiii + 589", year = "2001", ISBN = "3-7643-6610-9, 0-8176-6610-9", ISBN-13 = "978-3-7643-6610-0, 978-0-8176-6610-1", LCCN = "QA76.73.C153 H367 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "C (computer program language); Java (computer program language)", } @Article{Harf:2001:APS, author = "Mait Harf and Kristiina Kindel and Vahur Kotkas and Peep K{\"u}ngas and Enn Tyugu", title = "Automated Program Synthesis for {Java} Programming Language", journal = j-LECT-NOTES-COMP-SCI, volume = "2244", pages = "157--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2244.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2244/22440157.htm; http://link.springer-ny.com/link/service/series/0558/papers/2244/22440157.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Harms:2001:JSM, author = "David (David Gerhard) Harms", title = "{JSP}, servlets, and {MySQL}", publisher = pub-MT, address = pub-MT:adr, pages = "xxiv + 499", year = "2001", ISBN = "0-7645-4787-9", ISBN-13 = "978-0-7645-4787-4", LCCN = "QA76.73.J38 H365 2001", bibdate = "Wed Apr 27 05:41:25 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/bios/wiley045/2001016954.html; http://www.loc.gov/catdir/description/wiley038/2001016954.html; http://www.loc.gov/catdir/toc/wiley021/2001016954.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); JavaServer pages; SQL (Computer program language); Web databases", } @Article{Harrold:2001:RTS, author = "Mary Jean Harrold and James A. Jones and Tongyu Li and Donglin Liang and Ashish Gujarathi", title = "Regression test selection for {Java} software", journal = j-SIGPLAN, volume = "36", number = "11", pages = "312--326", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Hartel:2001:FSJ, author = "Pieter H. Hartel and Luc Moreau", title = "Formalizing the safety of {Java}, the {Java Virtual Machine}, and {Java} card", journal = j-COMP-SURV, volume = "33", number = "4", pages = "517--558", month = dec, year = "2001", CODEN = "CMSVAN", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Wed Feb 6 16:25:08 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", } @Article{Hartel:2001:PMP, author = "Pieter H. Hartel and Eduard de Jong", title = "A Programming and a Modelling Perspective on the Evaluation of {Java} Card Implementations", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "52--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410052.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410052.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hartley:2001:AGM, author = "Stephen J. Hartley", title = "``{Alfonse}, give me a call!''", journal = j-SIGCSE, volume = "33", number = "1", pages = "229--232", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364590", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The SR programming language supports a simple and elegant set of abstractions for its model of distributed computing. The model provides an effective framework for demonstrating to students the different styles of distributed programming. A small Java toolkit based on SR's model is presented in this paper. This toolkit allows instructors to use the popular Java language as a platform in parallel and distributed processing courses.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hatcliff:2001:UBT, author = "John Hatcliff and Matthew Dwyer", title = "Using the Bandera Tool Set to Model-Check Properties of Concurrent {Java} Software", journal = j-LECT-NOTES-COMP-SCI, volume = "2154", pages = "39--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:57 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2154.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2154/21540039.htm; http://link.springer-ny.com/link/service/series/0558/papers/2154/21540039.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Heijl:2001:DXS, author = "Danny Heijl", title = "The {Delphi XML SAX2} Component and {MSXML 3.0}", journal = j-DDJ, volume = "26", number = "9", pages = "42, 46, 48, 50, 52, 54", month = sep, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:39 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See correction \cite{Todd:2001:LSS}.", URL = "http://www.ddj.com/ftp/2001/2001_09/xmlsax2.txt; http://www.ddj.com/ftp/2001/2001_09/xmlsax2.zip", abstract = "Danny shows how to use the C++ COM interfaces of Microsoft's MSXML 3.0 SAX2 parser with Borland Delphi. He then presents TSAXParser, a Delphi component that uses these interfaces, but shields you from their complexities. Additional resources include {\tt xmlsax2.txt} (listings) and {\tt xmlsax2.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Helmer:2001:AID, author = "Guy Helmer and Johnny Wong and Subhasri Madaka", title = "Anomalous intrusion detection system for hostile {Java} applets", journal = j-J-SYST-SOFTW, volume = "55", number = "3", pages = "273--286", day = "15", month = jan, year = "2001", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed Apr 18 06:31:11 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/01641212; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/29/11/54/27/28/abstract.html; http://www.elsevier.nl/gej-ng/10/29/11/54/27/28/article.pdf", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Book{Holmes:2001:OOP, author = "Barry (Barry J.) Holmes and Daniel T. Joyce", title = "Object-oriented programming with {Java}", publisher = pub-JONES-BARTLETT, address = pub-JONES-BARTLETT:adr, edition = "Second", pages = "xviii + 826", year = "2001", ISBN = "0-7637-1435-6", ISBN-13 = "978-0-7637-1435-2", LCCN = "QA76.73.J38 H62 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Book{Horstmann:2001:CJ, author = "Cay S. Horstmann and Gary Cornell", title = "Core {Java 2}", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, edition = "Fifth", pages = "????", year = "2001", ISBN = "0-13-089468-0 (vol. 1)", ISBN-13 = "978-0-13-089468-7 (vol. 1)", LCCN = "QA76.73.J38 H6753 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM with complete source code examples, J2SE Version 1.3, Forte for Java Community Edition (a complete toolkit for Java application development), and trial versions of other useful tools.", series = "Sun Microsystems Press Java series", URL = "http://www.sun.com/books/catalog/horstmann8/index.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Hsu:2001:CAS, author = "John Y. Hsu", title = "Computer Architecture: Software Aspects, Coding, Hardware", publisher = pub-CRC, address = pub-CRC:adr, pages = "427", year = "2001", ISBN = "0-8493-1026-1, 1-351-83604-8, 1-4200-4110-X (e-book)", ISBN-13 = "978-0-8493-1026-3, 978-1-351-83604-3, 978-1-4200-4110-1 (e-book)", LCCN = "A76.9.A73 H758 2001", bibdate = "Fri Jan 19 15:47:59 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/fparith.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/microchip.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib; https://www.math.utah.edu/pub/tex/bib/visual-instruction-set.bib", price = "US\$89.95, UK\pounds 59.99", abstract = "With the new developments in computer architecture, fairly recent publications can quickly become outdated. Computer Architecture: Software Aspects, Coding, and Hardware takes a modern approach. This comprehensive, practical text provides that critical understanding of a central processor by clearly detailing fundamentals, and cutting edge design features. With its balanced software/hardware perspective and its description of Pentium processors, the book allows readers to acquire practical PC software experience. The text presents a foundation-level set of ideas, design concepts, and applications that fully meet the requirements of computer organization and architecture courses. The book features a ``bottom up'' computer design approach, based upon the author's thirty years experience in both academe and industry. By combining computer engineering with electrical engineering, the author describes how logic circuits are designed in a CPU. The extensive coverage of a microprogrammed CPU and new processor design features gives the insight of current computer development. Computer Architecture: Software Aspects, Coding, and Hardware presents a comprehensive review of the subject, from beginner to advanced levels. Topics include: * Two's complement numbers * Integer overflow * Exponent overflow and underflow * Looping * Addressing modes * Indexing * Subroutine linking * I/O structures * Memory mapped I/O * Cycle stealing * Interrupts * Multitasking * Microprogrammed CPU * Multiplication tree * Instruction queue * Multimedia instructions * Instruction cache * Virtual memory * Data cache * Alpha chip * Interprocessor communications * Branch prediction * Speculative loading * Register stack * JAVA virtual machine * Stack machine principles.", acknowledgement = ack-nhfb, keywords = "Compaq/DEC Alpha; floating-point arithmetic; Intel x86; Java Virtual Machine; multimedia instructions; Pentium", libnote = "Not yet in my library.", tableofcontents = "Number Systems \\ Basic Computer Principles \\ Assembly Language Principles \\ Computer Architecture--General Features \\ Microprogrammed CPU Design \\ Superscalar Machine Principles \\ Vector and Multiple-Processor Machines \\ Processor Design Case Studies \\ Stack Machine Principles", } @Book{Hubbard:2001:PJB, author = "J. R. (John Rast) Hubbard and Anthony Q. Baxter and J. R. Hubbard", title = "Programming with {Java}: based on {Schaum}'s outline of programming with {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "v + 162", year = "2001", ISBN = "0-07-136977-5 (paperback)", ISBN-13 = "978-0-07-136977-0 (paperback)", LCCN = "QA76.76.J38 H817 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Schaum's outline series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Hubbard:2001:SOT, author = "J. R. (John Rast) Hubbard", title = "{Schaum}'s outline of theory and problems of data structures with {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "viii + 369", year = "2001", ISBN = "0-07-136128-6 (paperback)", ISBN-13 = "978-0-07-136128-6 (paperback)", LCCN = "QA76.73.J38 H82 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Schaum's outline series", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @InProceedings{Hudson:2001:SCG, author = "Richard Hudson and Eliot Moss", title = "{Sapphire}: Copying {GC} Without Stopping the World", crossref = "ACM:2001:PAJ", pages = "48--57", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/32.html; http://www.philippsen.com/JGI2001/finalpapers/18500048.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Huisman:2001:CSC, author = "Marieke Huisman and Bart Jacobs and Joachim van den Berg", title = "A case study in class library verification: {Java}'s vector class", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "3", number = "3", pages = "332--352", month = aug, year = "2001", CODEN = "????", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Nov 23 15:01:40 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Book{Hunter:2001:JSP, author = "Jason Hunter and William Crawford", title = "{Java} servlet programming", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxiii + 753", year = "2001", ISBN = "0-596-00040-5", ISBN-13 = "978-0-596-00040-0", LCCN = "QA76.73.J38 H87 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Igarashi:2001:FJM, author = "Atsushi Igarashi and Benjamin C. Pierce and Philip Wadler", title = "Featherweight {Java}: a minimal core calculus for {Java} and {GJ}", journal = j-TOPLAS, volume = "23", number = "3", pages = "396--450", month = may, year = "2001", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Feb 19 15:41:56 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Illmann:2001:TMM, author = "Torsten Illmann and Tilman Krueger and Frank Kargl and Michael Weber", title = "Transparent Migration of Mobile Agents Using the {Java} Platform Debugger Architecture", journal = j-LECT-NOTES-COMP-SCI, volume = "2240", pages = "198--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:25 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2240.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2240/22400198.htm; http://link.springer-ny.com/link/service/series/0558/papers/2240/22400198.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Ishimoto:2001:POB, author = "Kenya Ishimoto", title = "Preference Object-based Internationalization for Distributed Application Framework in {Java}", crossref = "UC:2001:EIU", pages = "??--??", year = "2001", bibdate = "Wed Jul 11 15:39:50 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.unicode.org/iuc/iuc18/papers.html", URL = "http://www.unicode.org/iuc/iuc18/papers/a16.ppt", acknowledgement = ack-nhfb, authoraddress = "Staff Software Engineer, IBM Japan Ltd., Japan", } @Article{Iyer:2001:JBR, author = "K. Viswanathan Iyer and M. Harinath", title = "{Java} based replicated server objects and their remote method invocations in a distributed environment", journal = j-SPE, volume = "31", number = "4", pages = "357--370", day = "10", month = apr, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.377", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:25:28 MST 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/77004438/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=77004438&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Jackson:2001:JQW, author = "Jared Jackson", title = "{Java Q\&A}: What Are Resource Bundles and What Do They Have to Do With Internationalization?", journal = j-DDJ, volume = "26", number = "9", pages = "117--119", month = sep, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:39 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_09/jqa0901.txt", abstract = "Resource bundles provide the means for utilizing locale-specific information without having to maintain multiple versions of code for those various locales. Additional resources include {\tt jqa0901.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Jacobs:2001:FJE, author = "Bart Jacobs", title = "A Formalisation of {Java}'s Exception Mechanism", journal = j-LECT-NOTES-COMP-SCI, volume = "2028", pages = "284--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:45 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2028.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2028/20280284.htm; http://link.springer-ny.com/link/service/series/0558/papers/2028/20280284.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jacobs:2001:JPV, author = "Bart Jacobs", title = "{JavaCard} Program Verification", journal = j-LECT-NOTES-COMP-SCI, volume = "2152", pages = "1--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:56 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2152.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2152/21520001.htm; http://link.springer-ny.com/link/service/series/0558/papers/2152/21520001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jacobs:2001:LJM, author = "Bart Jacobs and Erik Poll", title = "A Logic for the {Java} Modeling Language {JML}", journal = j-LECT-NOTES-COMP-SCI, volume = "2029", pages = "284--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:46 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2029.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2029/20290284.htm; http://link.springer-ny.com/link/service/series/0558/papers/2029/20290284.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jagannathan:2001:ICS, author = "Ramesh Jagannathan and Paolo A. G. Sivilotti", title = "Increasing client-side confidence in remote component implementations", journal = j-SIGSOFT, volume = "26", number = "5", pages = "52--61", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503217", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When a client makes use of a remote component, it does not have direct access to the remote component's implementation or state information. By observing the component's interactions with its environment, however, the client can determine whether the component's behavior conforms to its promised specification. We present a distributed infrastructure with which a client can make these observations and thereby increase its confidence in the correctness of the remote component. This infrastructure supports temporal specifications of distributed components with autonomous threads of control. It also supports multiple levels of confidence, with commensurate performance costs. As a proof-of-concept for this design, we have implemented a prototype in Java for distributed systems built using CORBA.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jamil:2001:CBN, author = "T. Jamil", title = "The complex binary number system", journal = j-IEEE-POT, volume = "20", number = "5", pages = "39--41", month = dec, year = "2001", CODEN = "IEPTDF", DOI = "https://doi.org/10.1109/45.983342", ISSN = "0278-6648 (print), 1558-1772 (electronic)", ISSN-L = "0278-6648", bibdate = "Sat Dec 04 10:43:52 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Conversion algorithms and arithmetic procedures for a $ ( - 1 + j) $-base binary number allow a given complex number to be represented as one unit. This should simplify the operations involving complex numbers in today's microprocessors. With the division process secure, we can implement the usual algorithms for calculating functions and processes such as logarithms, exponentials and trigonometric functions Currently, work is underway to write Java applets for the algorithms. We are planning to design an arithmetic unit based on the new binary system which will then be implemented using field programmable gate arrays", acknowledgement = ack-nhfb, fjournal = "IEEE Potentials", } @Article{Jensen:2001:DRT, author = "E. D. Jensen", title = "The distributed real-time specification for {Java}: an initial proposal", journal = j-INT-J-COMPUT-SYST-SCI-ENG, volume = "16", number = "2", pages = "??--??", month = mar, year = "2001", CODEN = "CSSEEI", ISSN = "0267-6192", bibdate = "Wed Feb 20 12:01:01 2002", bibsource = "http://www.crlpublishing.co.uk/cssecont01.htm; https://www.math.utah.edu/pub/tex/bib/computsystscieng.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal of Computer Systems Science and Engineering", } @Book{Jepsen:2001:JTS, author = "Thomas C. Jepsen and Farooq Anjum", title = "{Java} in telecommunications: solutions for next generation networks", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "vii + 193", year = "2001", ISBN = "0-471-49826-2", ISBN-13 = "978-0-471-49826-1", LCCN = "QA76.73.J38 J368 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Wiley series in communications networking and distributed systems", URL = "http://www.loc.gov/catdir/toc/onix06/2001026305.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language); telecommunication systems", } @Article{Jolin:2001:JQC, author = "Art Jolin", title = "{Java Q\&A}: Can {J2EE} Manage Cache and Pool Memory?", journal = j-DDJ, volume = "26", number = "10", pages = "117--120", month = oct, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_10/jqa1001.txt; http://www.ddj.com/ftp/2001/2001_10/jqa1001.zip", abstract = "Can J2EE manage cache and pool memory? Yes, and Art shows you how. Additional resources include {\tt jqa1001.txt} (listings) and {\tt jqa1001.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Kalin:2001:OOP, author = "Martin Kalin", title = "Object-Oriented Programming in {Java}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxvii + 641", year = "2001", ISBN = "0-13-019859-5", ISBN-13 = "978-0-13-019859-4", LCCN = "QA76.64 .K36 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$58.00", series = "The JK computer science and mathematics series", URL = "http://www.phptr.com/ptrbooks/esm_0130198595.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Kambites:2001:OLI, author = "M. E. Kambites and J. Obdr{\v{z}}{\'a}lek and J. M. Bull", title = "An {OpenMP}-like interface for parallel programming in {Java}", journal = j-CCPE, volume = "13", number = "8--9", pages = "793--814", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.579", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/ccpe.bib; ftp://ftp.math.utah.edu/pub/tex/bib/pvm.bib; http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503220/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503220&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Book{Keeton:2001:SEU, author = "Brian Keeton and Chuck Cavaness and Geoff Friesen", title = "Special edition using {Java 2}", publisher = pub-QUE, address = pub-QUE:adr, pages = "xiv + 1126", year = "2001", ISBN = "0-7897-2468-5", ISBN-13 = "978-0-7897-2468-7", LCCN = "QA76.73.J38 K44 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Kiczales:2001:AOP, author = "Gregor Kiczales and Erik Hilsdale", title = "Aspect-oriented programming", journal = j-SIGSOFT, volume = "26", number = "5", pages = "313", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503260", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Aspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use AOP to implement crosscutting concerns in a concise modular way. It works with AspectJ, a seamless aspect-oriented extension to the Java(tm) programming language, and with AspectC, an aspect-oriented extension to C in the style of AspectJ. It also includes a description of their underlying model, in terms of which a wide range of AOP languages can be understood.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kielmann:2001:EJH, author = "Thilo Kielmann and Philip Hatcher and Luc Boug{\'e} and Henri E. Bal", title = "Enabling {Java} for high-performance computing", journal = j-CACM, volume = "44", number = "10", pages = "110--117", month = oct, year = "2001", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Jan 30 17:44:59 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Kientzle:2001:JQH, author = "Tim Kientzle", title = "{Java Q\&A}: How Can {I} Speed Up My {JDBC}-Based Programs?", journal = j-DDJ, volume = "26", number = "12", pages = "111--112", month = dec, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_12/jqa1201.txt; http://www.ddj.com/ftp/2001/2001_12/jqa1201.zip", abstract = "Tim focuses on JDBC as he examines techniques for optimizing the performance of database-centric applications. Additional resources include {\tt jqa1201.txt} (listings) and {\tt jqa1201.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Kingsley-Hughes:2001:JE, author = "Adrian Kingsley-Hughes and Kathie Kingsley-Hughes", title = "{JavaScript 1.5} by example", publisher = pub-QUE, address = pub-QUE:adr, pages = "xii + 299", year = "2001", ISBN = "0-7897-2499-5", ISBN-13 = "978-0-7897-2499-1", LCCN = "QA76.73.J39 K55 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "By example series", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Book{Kingston:2001:ADS, author = "Jeffrey Kingston and Brian Cole", title = "Algorithms and Data Structures: Design, Correctness, Analysis: {Java} Edition", publisher = pub-AW, address = pub-AW:adr, pages = "????", year = "2001", ISBN = "0-201-36062-4", ISBN-13 = "978-0-201-36062-2", LCCN = "????", bibdate = "Tue Feb 20 18:24:05 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44", acknowledgement = ack-nhfb, } @Article{Klemm:2001:EJS, author = "Reinhard Klemm and Navjot Singh", title = "Enhancing {Java} server availability with {JAS}", journal = j-SPE, volume = "31", number = "7", pages = "697--716", month = jun, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.387", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Jul 14 12:28:45 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003146/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003146&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Kniesel:2001:JAR, author = "G{\"u}nter Kniesel and Dirk Theisen", title = "{JAC} --- {Access} right based encapsulation for {Java}", journal = j-SPE, volume = "31", number = "6", pages = "555--576", month = may, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.372", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Jul 14 12:28:45 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003102/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003102&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Knoblock:2001:TES, author = "Todd B. Knoblock and Jakob Rehof", title = "Type elaboration and subtype completion for {Java} bytecode", journal = j-TOPLAS, volume = "23", number = "2", pages = "243--272", month = mar, year = "2001", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Feb 19 15:41:55 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Book{Knuckles:2001:IIP, author = "Craig D. Knuckles", title = "Introduction to interactive programming on the {Internet}: using {HTML} and {JavaScript}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xviii + 423", year = "2001", ISBN = "0-471-38366-X (paperback)", ISBN-13 = "978-0-471-38366-6 (paperback)", LCCN = "QA76.625 .K58 2001", bibdate = "Wed May 8 07:40:44 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "HTML (document markup language); Internet programming; JavaScript (computer program language)", } @Book{Knudsen:2001:WJD, author = "Jonathan Knudsen", title = "Wireless {Java}: developing with {Java 2}, micro edition", publisher = pub-SV, address = pub-SV:adr, pages = "xiii + 226", year = "2001", ISBN = "1-893115-50-X", ISBN-13 = "978-1-893115-50-7", LCCN = "QA76.73.J38 K58 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Books for professionals by professionals", acknowledgement = ack-nhfb, keywords = "Java (computer program language); personal communication service systems", } @Article{Koffman:2001:SJP, author = "Elliot Koffman and Ursula Wolz", title = "A simple {Java} package for {GUI}-like interactivity", journal = j-SIGCSE, volume = "33", number = "1", pages = "11--15", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364528", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper discusses the motivation for a simple package designed to incorporate user interactivity into a first course in computer science. The package enables novice programmers to build programs with GUI-like interactivity while maintaining good design principles. An advantage of this package is that it is easy to implement using the Swing class. Therefore, it can be used as a case study to illustrate Java features.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kolling:2001:GTO, author = "Michael K{\"o}lling and John Rosenberg", title = "Guidelines for teaching object orientation with {Java}", journal = j-SIGCSE, volume = "33", number = "3", pages = "33--36", month = sep, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/507758.377461", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:50 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "How to best teach object orientation to first year students is currently a topic of much debate. One of the tools suggested to aid in this task is BlueJ, an integrated development environment specifically designed for teaching. BlueJ supports a unique style of introduction of OO concepts. In this paper we discuss a set of problems with OO teaching, present some guidelines for better course design and show how BlueJ can be used to make significant improvements to introductory OO courses. We end by presenting a description of a possible project sequence using this teaching approach.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Koved:2001:SCE, author = "L. Koved and A. Nadalin and N. Nagaratnam and M. Pistoia and T. Shrader", title = "Security challenges for {Enterprise Java} in an e-business environment", journal = j-IBM-SYS-J, volume = "40", number = "1", pages = "130--152", month = "????", year = "2001", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Sat Apr 7 16:40:01 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/sj40-1.html", URL = "http://www.research.ibm.com/journal/sj/401/koved.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0140", } @Article{Krall:2001:JLS, author = "A. Krall and P. Tomsich", title = "Java for Large-Scale Scientific Computations?", journal = j-LECT-NOTES-COMP-SCI, volume = "2179", pages = "228--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:22 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2179.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2179/21790228.htm; http://link.springer-ny.com/link/service/series/0558/papers/2179/21790228.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kreger:2001:JME, author = "H. Kreger", title = "{Java Management Extensions} for application management", journal = j-IBM-SYS-J, volume = "40", number = "1", pages = "104--129", month = "????", year = "2001", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Sat Apr 7 16:40:01 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/sj40-1.html", URL = "http://www.research.ibm.com/journal/sj/401/kreger.html", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0140", } @Article{Krintz:2001:UJC, author = "Chandra Krintz and Rich Wolski", title = "Using {JavaNws} to compare {C} and {Java TCP-Socket} performance", journal = j-CCPE, volume = "13", number = "8--9", pages = "815--839", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.580", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503224/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503224&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Krishna:2001:SRI, author = "Ksheerabdhi Krishna and Michael Montgomery", title = "A Simple(r) Interface Distribution Mechanism for {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "114--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410114.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410114.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Kumaran:2001:JTO, author = "S. Ilango Kumaran", title = "{Jini} technology: an overview", publisher = pub-PH, address = pub-PH:adr, pages = "358", year = "2001", ISBN = "0-13-033385-9", ISBN-13 = "978-0-13-033385-8", LCCN = "QA76.9.D5 K83 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Jini", } @Article{Kuo:2001:AAJ, author = "Dean Kuo and Doug Palmer", title = "Automated Analysis of {Java} Message Service Providers", journal = j-LECT-NOTES-COMP-SCI, volume = "2218", pages = "1--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:05 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2218.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2218/22180001.htm; http://link.springer-ny.com/link/service/series/0558/papers/2218/22180001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kurzyniec:2001:FCL, author = "Dawid Kurzyniec and Vaidy Sunderam", title = "Flexible Class Loader Framework: Sharing {Java} Resources in Harness System", journal = j-LECT-NOTES-COMP-SCI, volume = "2073", pages = "375--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2073.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2073/20730375.htm; http://link.springer-ny.com/link/service/series/0558/papers/2073/20730375.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Ladd:2001:PEU, author = "Eric Ladd", title = "{Platinum} edition using {XHTML}, {XML} and {Java 2}", publisher = pub-QUE, address = pub-QUE:adr, edition = "Platinum", pages = "xxiv + 1413", year = "2001", ISBN = "0-7897-2473-1", ISBN-13 = "978-0-7897-2473-1", LCCN = "QA76.76.H94 P585 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XHTML (document markup language); XML (document markup language)", } @Article{Laird:2001:JQW, author = "Cameron Laird", title = "{Java Q\&A}: When Should You Script {Java} with {TCL}?", journal = j-DDJ, volume = "26", number = "3", pages = "133--134", month = mar, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_03/jqa0301.txt", abstract = "Can you script Java with Tcl? Sure, and TclBlend is a great way to do it. Additional resources include jqa0301.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Larsen:2001:JPB, author = "Albert L. Larsen", title = "{Java} programming: from the beginning", journal = j-SIGSOFT, volume = "26", number = "1", pages = "97--98", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505922", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Launay:2001:EPP, author = "Pascale Launay and Jean-Louis Pazat", title = "Easing parallel programming for clusters with {Java}", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "253--263", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/32/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Laure:2001:OJF, author = "Erwin Laure", title = "{OpusJava}: {A Java} framework for distributed high performance computing", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "235--251", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/31/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @InProceedings{Lawlor:2001:SDP, author = "Orion Lawlor and Laxmikant Kale", title = "Supporting Dynamic Parallel Object Arrays", crossref = "ACM:2001:PAJ", pages = "21--28", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/7.html; http://www.philippsen.com/JGI2001/finalpapers/18500021.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Lee:2001:IEW, author = "Raymond S. T. Lee and James N. K. Liu", title = "{iJADE eMiner} --- {A} {Web}-Based Mining Agent Based on Intelligent {Java} Agent Development Environment {(iJADE)} on {Internet} Shopping", journal = j-LECT-NOTES-COMP-SCI, volume = "2035", pages = "28--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:52 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2035.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2035/20350028.htm; http://link.springer-ny.com/link/service/series/0558/papers/2035/20350028.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lehrbaum:2001:FESi, author = "Rick Lehrbaum", title = "Focus on Embedded Systems: Embedded {Linux} at {JavaOne}", journal = j-LINUX-J, volume = "89", pages = "48--49", month = sep, year = "2001", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Thu Aug 30 06:06:53 MDT 2001", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue89/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Lerner:2001:FEJ, author = "Reuven M. Lerner", title = "At the Forge: {Enterprise JavaBeans}", journal = j-LINUX-J, volume = "92", pages = "20--22, 24--25", month = dec, year = "2001", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Fri Feb 8 14:44:29 MST 2002", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue92/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://noframes.linuxjournal.com/lj-issues/issue92/article.php?sid=5497", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Lerner:2001:FJ, author = "Reuven M. Lerner", title = "At the Forge: {JavaBeans}", journal = j-LINUX-J, volume = "86", pages = "18, 20--22", month = jun, year = "2001", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Wed May 23 15:20:33 MDT 2001", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue86/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://noframes.linuxjournal.com/lj-issues/issue86/4686", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Lerner:2001:FJP, author = "Reuven M. Lerner", title = "At the Forge: {JavaServer} Pages", journal = j-LINUX-J, volume = "85", pages = "16, 18, 20--22", month = may, year = "2001", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Wed May 23 15:20:33 MDT 2001", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue85/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://noframes.linuxjournal.com/lj-issues/issue85/4639", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Lerner:2001:FSS, author = "Reuven M. Lerner", title = "At the Forge: Server-side {Java} with {Jakarta-Tomcat}", journal = j-LINUX-J, volume = "84", pages = "50, 52--54, 56--58", month = apr, year = "2001", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Fri Apr 13 06:26:46 MDT 2001", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue84/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Leroy:2001:CBV, author = "Xavier Leroy", title = "On-Card Bytecode Verification for {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "150--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400150.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400150.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Leroy:2001:JBV, author = "Xavier Leroy", title = "Java Bytecode Verification: An Overview", journal = j-LECT-NOTES-COMP-SCI, volume = "2102", pages = "265--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:02 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2102.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2102/21020265.htm; http://link.springer-ny.com/link/service/series/0558/papers/2102/21020265.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Levanoni:2001:FRC, author = "Yossi Levanoni and Erez Petrank", title = "An on-the-fly reference counting garbage collector for {Java}", journal = j-SIGPLAN, volume = "36", number = "11", pages = "367--380", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Lewis:2001:APH, author = "Brian Lewis and Bernd Mathiske and Neal Gafter", title = "Architecture of the {PEVM}: a High-Performance Orthogonally {Persistent Java{\TM} Virtual Machine}", journal = j-LECT-NOTES-COMP-SCI, volume = "2135", pages = "18--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:37 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2135.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2135/21350018.htm; http://link.springer-ny.com/link/service/series/0558/papers/2135/21350018.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Lewis:2001:JSS, author = "John Lewis and William Loftus", title = "{Java} Software Solutions: Foundations of Program Design", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxviii + 784", year = "2001", ISBN = "0-201-72597-5", ISBN-13 = "978-0-201-72597-1", LCCN = "QA76.73.J38 L49 2001", bibdate = "Wed Feb 21 06:33:20 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{LewisJohn:2001:JSS, author = "Ph. D. {Lewis, John} and William Loftus", title = "{Java} software solutions: foundations of program design", publisher = pub-AW-LONGMAN, address = pub-AW-LONGMAN:adr, edition = "Second", pages = "xxviii + 784", year = "2001", ISBN = "0-201-72597-5 (paperback)", ISBN-13 = "978-0-201-72597-1 (paperback)", LCCN = "QA76.73.J38 L49 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Accompanying CD-ROM contains Java development tools, source code, and PowerPoint slides from the text", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Li:2001:WMB, author = "Maozhen Li and Omer F. Rana and David W. Walker", title = "Wrapping {MPI}-based legacy codes as {Java\slash CORBA} components", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "213--223", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/29/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @InProceedings{Liang:2001:EEF, author = "Donglin Liang and Maikel Pennings and Mary Jean Harrold", title = "Extending and evaluating flow-insensitive and context-insensitive points-to analyses for {Java}", crossref = "ACM:2001:ASS", pages = "73--79", year = "2001", bibdate = "Thu Aug 30 08:01:24 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/paste/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/soft/379605/p73-liang/p73-liang.pdf; http://www.acm.org/pubs/citations/proceedings/soft/379605/p73-liang/", acknowledgement = ack-nhfb, } @Book{Liang:2001:IJP, author = "Y. Daniel Liang", title = "Introduction to {Java} Programming", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Third", pages = "784 (est.)", year = "2001", ISBN = "0-13-031997-X", ISBN-13 = "978-0-13-031997-5", LCCN = "A76.73.J38 L52 2001", bibdate = "Fri Apr 13 15:31:29 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$68.00", URL = "http://www.phptr.com/ptrbooks/esm_013031997X.html", acknowledgement = ack-nhfb, } @Article{Lingsong:2001:EDB, author = "He Lingsong", title = "Exchanging Data between {Java} and {C/C++ Windows} Programs", journal = j-CCCUJ, volume = "19", number = "1", pages = "34--??", month = jan, year = "2001", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:29 MDT 2002", bibsource = "http://www.cuj.com/articles/2001/0101/0101toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The notorious ``endian'' problem shows up in all sorts of places --- in this case, between different programming languages.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Lippman:2001:CD, author = "Stanley B. Lippman", title = "The {C\#} Delegate", journal = j-CCCUJ, volume = "19", number = "7", pages = "42--??", month = jul, year = "2001", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue May 14 18:09:32 MDT 2002", bibsource = "http://www.cuj.com/articles/2001/0107/0107toc.htm?topic=articles; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "If you're comparing C\# to other ``C-family'' languages, here's an unusual feature that has no real equivalent in C++ or Java.", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Luthi:2001:IPC, author = "Johannes L{\"u}thi and Catalina M. Llad{\'o}", title = "Interval parameters for capturing uncertainties in an {EJB} performance model", journal = j-SIGMETRICS, volume = "29", number = "1", pages = "291--300", month = jun, year = "2001", CODEN = "????", DOI = "https://doi.org/10.1145/384268.378794", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:34:55 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Exact as well as approximate analytical solutions for quantitative performance models of computer systems are usually obtained by performing a series of arithmetical operations on the input parameters of the model. However, especially during early phases of system design and implementation, not all the parameter values are usually known exactly. In related research contributions, intervals have been proposed as a means to capture parameter uncertainties. Furthermore, methods to adapt existing solution algorithms to parameter intervals have been discussed. In this paper we present the adaptation of an existing performance model to parameter intervals. The approximate solution of a queueing network modelling an Enterprise JavaBeans server implementation is adapted to interval arithmetic in order to represent the uncertainty in some of the parameters of the model. A new interval splitting method is applied to obtain reasonable tight performance measure intervals. Monotonicity properties of intermediate computation results are exploited to achieve a more efficient interval solution. In addition, parts of the original solution algorithm are modified to increase the efficiency of the corresponding interval arithmetical solution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "distributed systems; enterprise JavaBeans; interval parameters; parameter uncertainties; performance models; queueing", } @Article{Lutz:2001:NBIb, author = "Michael J. Lutz", title = "New Books: Investigating Evidential Computing; Steering the Computing Juggernaut; In the Mood for {Java}, {Smalltalk}, and Algorithms?; Meeting the Computational Intelligence Challenge; Assessing the Digital Economy", journal = j-COMPUTER, volume = "34", number = "2", pages = "112--112", month = feb, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Feb 14 07:15:50 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r2112.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Maassen:2001:EJR, author = "Jason Maassen and Rob {Van Nieuwpoort} and Ronald Veldema and Henri Bal and Thilo Kielmann and Ceriel Jacobs and Rutger Hofman", title = "Efficient {Java RMI} for parallel programming", journal = j-TOPLAS, volume = "23", number = "6", pages = "747--775", month = nov, year = "2001", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Aug 1 06:48:01 MDT 2002", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Book{MacAuley:2001:JPR, author = "Christian MacAuley and Paul Jobson", title = "{JavaScript} programmer's reference", publisher = pub-OSBORNE, address = pub-OSBORNE:adr, pages = "xiii + 272", year = "2001", ISBN = "0-07-219296-8", ISBN-13 = "978-0-07-219296-4", LCCN = "QA76.76.J39 M34 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Madrigal:2001:FOD, author = "Victor M. {Madrigal III}", title = "Fundamentals of {OOP} and data structures in {Java}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "99--99", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505924", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @InProceedings{Maessen:2001:PAS, author = "Jan-Willem Maessen and Vivek Sarkar and David Grove", title = "Program analysis for safety guarantees in a {Java} virtual machine written in {Java}", crossref = "ACM:2001:ASS", pages = "62--65", year = "2001", bibdate = "Thu Aug 30 08:01:24 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/paste/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/soft/379605/p62-maessen/p62-maessen.pdf; http://www.acm.org/pubs/citations/proceedings/soft/379605/p62-maessen/", acknowledgement = ack-nhfb, } @Article{Maly:2001:IHJ, author = "R. Maly and H. Abdel-Wahab and C. Wild and C. M. Overstreet and A. Gupta and A. Abdel-Hamid and S. Ghanem and A. Gonzalez and X. Zhu", title = "{IRI-h}, a {Java-based} distance education system: architecture and performance", journal = j-JERIC, volume = "1", number = "1es", pages = "??--??", month = mar, year = "2001", CODEN = "????", ISSN = "1531-4278", bibdate = "Tue Feb 3 18:43:36 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/jeric/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM Journal on Educational Resources in Computing (JERIC)", } @Article{Mamlin:2001:OSX, author = "B. Mamlin", title = "An Open-source {XML}-based {Java} Implementation of the Medical Gopher Order and Note Writing Tool", journal = j-J-BIOMED-INF, volume = "35", number = "SUPP", pages = "826--??", year = "2001", CODEN = "JBIOBL", ISSN = "1532-0464", bibdate = "Tue Feb 18 07:16:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Biomedical Informatics", } @Article{Manduchi:2001:DJA, author = "Gabriele Manduchi", title = "Developing {Java} applications for a nuclear fusion experiment: a test case for {Java} applicability in a demanding environment", journal = j-SPE, volume = "31", number = "11", pages = "1025--1042", month = sep, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.399", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Jul 14 12:28:46 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/83001949/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=83001949&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @InProceedings{Manson:2001:CSM, author = "Jeremy Manson and William Pugh", title = "Core Semantics of Multithreaded {Java}", crossref = "ACM:2001:PAJ", pages = "29--38", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/42.html; http://www.philippsen.com/JGI2001/finalpapers/18500029.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Marchand:2001:APG, author = "Richard Marchand and Mathieu Charbonneau-Lefort and Mathieu Dumberry and Benoit Pronovost", title = "{ARANEA}, a program for generating unstructured triangular meshes with a {Java Graphics User Interface}", journal = j-COMP-PHYS-COMM, volume = "139", number = "2", pages = "172--185", day = "15", month = sep, year = "2001", CODEN = "CPHCBZ", DOI = "https://doi.org/10.1016/S0010-4655(01)00187-4", ISSN = "0010-4655 (print), 1879-2944 (electronic)", ISSN-L = "0010-4655", bibdate = "Mon Feb 13 23:41:02 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/compphyscomm1970.bib; https://www.math.utah.edu/pub/tex/bib/compphyscomm2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0010465501001874", acknowledgement = ack-nhfb, fjournal = "Computer Physics Communications", journal-URL = "http://www.sciencedirect.com/science/journal/00104655", } @Book{Marco:2001:EJJ, author = "Lou Marco", title = "{EJB} and {JSP}: {Java} on the edge, unlimited edition", publisher = pub-MT, address = pub-MT:adr, pages = "xxiv + 452", year = "2001", ISBN = "0-7645-4802-6", ISBN-13 = "978-0-7645-4802-4", LCCN = "QA76.73.J38 M3482 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Professional mindware", acknowledgement = ack-nhfb, keywords = "application software -- development; electronic commerce -- computer programs; Internet programming; JavaBeans; JavaServer pages", } @Article{Marquez:2001:IOP, author = "Alonso Marquez and Stephen M. Blackburn and Gavin Mercer and John Zigman", title = "Implementing Orthogonally Persistent {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2135", pages = "247--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:37 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2135.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2135/21350247.htm; http://link.springer-ny.com/link/service/series/0558/papers/2135/21350247.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Marti:2001:ZZH, author = "Don Marti", title = "{ZapMedia ZapStation\slash Harman Kardon DMC 100}", journal = j-EMBEDDED-LINUX-J, volume = "2", pages = "12--13", month = mar # "\slash " # apr, year = "2001", CODEN = "????", ISSN = "1534-083X", bibdate = "Thu Feb 15 10:13:22 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://embedded.linuxjournal.com/magazine/issue02/4526; http://www.linuxdevices.com/articles/AT8585138080.html", abstract = "Java-based ``Digital Media Center'' plays DVDs, MP3s and more, and it's running Linux.", acknowledgement = ack-nhfb, fjournal = "Embedded Linux Journal", } @Article{Martin:2001:ATG, author = "Hugues Martin and Lydie du Bousquet", title = "Automatic Test Generation for {Java}-Card Applets", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "121--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410121.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410121.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Masum:2001:BRBa, author = "Hassan Masum", title = "Book Review: {{\booktitle{Data Structures and Algorithms in Java}} (2nd ed): Michael T Goodrich and Roberto Tamassia}", journal = j-SIGACT, volume = "32", number = "1", pages = "3--5", month = mar, year = "2001", CODEN = "SIGNDM", DOI = "https://doi.org/10.1145/568438.568441", ISSN = "0163-5700 (print), 1943-5827 (electronic)", ISSN-L = "0163-5700", bibdate = "Wed Mar 21 18:30:24 MDT 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib", note = "See \cite{Goodrich:1997:DSA,Goodrich:2001:DSA,Goodrich:2004:DSA,Goodrich:2006:DSA,Goodrich:2010:DSA}.", abstract = "Data Structures is a first book on algorithms and data structures, using an object- oriented approach. The target audience for the book is a second-year CS class introducing fundamental data structures and their associated algorithms. This second edition of the book has been corrected and revised, and is a substantial improvement over the first edition. A companion web site contains useful ancillary tools, including an excellent set of slides. Despite several minor errors and some questionable stylistic choices, I found this version of the book to be well-written. The problem sets are large, interesting, and thought-stimulating. In several places connections are drawn between the algorithm being discussed and important contemporary real-world problems (e.g. search engines, DNA sequence comparison, garbage collection), which students usually appreciate.", acknowledgement = ack-nhfb, fjournal = "ACM SIGACT News", journal-URL = "http://dl.acm.org/citation.cfm?id=J697", } @Book{Matena:2001:AEJ, author = "Vlada Matena and Beth Stearns", title = "Applying {Enterprise JavaBeans}: Component-Based Development for the {J2EE} Platform", publisher = pub-AW, address = pub-AW:adr, pages = "xxv + 436", year = "2001", ISBN = "0-201-70267-3 (paperback)", ISBN-13 = "978-0-201-70267-5 (paperback)", LCCN = "QA76.73.J38 M377 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaBeans", } @Article{Matsuoka:2001:TPE, author = "Satoshi Matsuoka and Shigeo Itou", title = "Towards performance evaluation of high-performance computing on multiple {Java} platforms", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "281--291", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/34/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{McCluskey:2001:JPa, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "26", number = "1", pages = "??--??", month = feb, year = "2001", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:45:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2001-02/index.html", URL = "http://www.usenix.org/publications/login/2001-02/pdfs/mccluskey.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McCluskey:2001:JPb, author = "Glen McCluskey", title = "{Java} Performance", journal = j-LOGIN, volume = "26", number = "2", pages = "??--??", month = apr, year = "2001", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:51:58 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2001-04/index.html", URL = "http://www.usenix.org/publications/login/2001-04/pdfs/mccluskey1.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{McDirmid:2001:JNA, author = "Sean McDirmid and Matthew Flatt and Wilson C. Hsieh", title = "{Jiazzi}: new-age components for old-fashioned {Java}", journal = j-SIGPLAN, volume = "36", number = "11", pages = "211--222", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{McKenzie:2001:JQJ, author = "Nadine McKenzie", title = "{Java Q\&A}: Is {JavaScript} an Object-Oriented Language?", journal = j-DDJ, volume = "26", number = "8", pages = "115--116", month = aug, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Jul 11 06:31:35 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_08/jqa0801.txt", abstract = "Is JavaScript an object-oriented language? Well, it does utilize prototype-based inheritance and support encapsulation. Additional resources include jqa0801.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{McLaughlin:2001:JX, author = "Brett McLaughlin", title = "{Java} and {XML}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xv + 509", year = "2001", ISBN = "0-596-00197-5 (paperback)", ISBN-13 = "978-0-596-00197-1 (paperback)", LCCN = "QA76.73.J38 M39 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Also available via the Internet", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Book{McLaughlin:2001:JXE, author = "Brett McLaughlin", title = "{Java} and {XML}: Solutions to Real-World Problems", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xv + 509", month = sep, year = "2001", ISBN = "0-596-00197-5", ISBN-13 = "978-0-596-00197-1", LCCN = "QA76.73.J38 .M39 2001", bibdate = "Mon Apr 18 15:03:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/; z3950.loc.gov:7090/Voyager", price = "US\$39.95", URL = "http://www.oreilly.com/catalog/9780596001971; http://www.oreilly.com/catalog/javaxml2", acknowledgement = ack-nhfb, remark = "Previous ed.: 2000.", subject = "Java (Computer program language); XML (Document markup language); Web publishing", } @Article{Meijer:2001:TFF, author = "Hans Meijer and Erik Poll", title = "Towards a Full Formal Specification of the {JavaCard API}", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "165--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400165.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400165.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Metsker:2001:BPJ, author = "Steven John Metsker", title = "Building Parsers With {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xxv + 371", year = "2001", ISBN = "0-201-71962-2 (paperback)", ISBN-13 = "978-0-201-71962-8 (paperback)", LCCN = "QA76.73.J38 M48 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$40.00", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @InProceedings{Midkiff:2001:JCM, author = "Sam Midkiff", title = "A {Java} Compiler for Many Memory Models", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/JVM_wips/S11.pdf", acknowledgement = ack-nhfb, } @Article{Mikheev:2001:CCM, author = "Vitaly V. Mikheev and Stanislav A. Fedoseev", title = "Compiler-Cooperative Memory Management in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2244", pages = "511--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2244.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2244/22440511.htm; http://link.springer-ny.com/link/service/series/0558/papers/2244/22440511.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Monson-Haefel:2001:EJ, author = "Richard Monson-Haefel", title = "{Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xix + 567", year = "2001", ISBN = "0-596-00226-2", ISBN-13 = "978-0-596-00226-8", LCCN = "QA76.73.J38 M65 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Covers EJB 2.0", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaBeans", } @Book{Monson-Haefel:2001:JMS, author = "Richard Monson-Haefel and David Chappell", title = "{Java} message service", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 220", year = "2001", ISBN = "0-596-00068-5", ISBN-13 = "978-0-596-00068-4", LCCN = "QA76.73.J38 M655 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); telecommunication -- message processing", } @Article{Montgomery:2001:FIF, author = "Michael Montgomery and Ksheerabdhi Krishna", title = "A Flexible Invocation Framework for {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "2140", pages = "188--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2140/21400188.htm; http://link.springer-ny.com/link/service/series/0558/papers/2140/21400188.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Moore:2001:EFJ, author = "J. Strother Moore and George M. Porter", title = "An Executable Formal {Java Virtual Machine} Thread Model", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/moore.html", acknowledgement = ack-nhfb, } @InProceedings{Moreira:2001:CTA, author = "Jos{\'e} Moreira and Sam Midkiff and Manish Gupta", title = "A Comparison of Three Approaches to Language, Compiler, and Library Support for Multidimensional Arrays in {Java}", crossref = "ACM:2001:PAJ", pages = "116--125", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/44.html; http://www.philippsen.com/JGI2001/finalpapers/18500116.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Moreira:2001:NP, author = "Jos{\'e} E. Moreira and Samuel P. Midkiff and Manish Gupta and Pedro V. Artigas and Peng Wu and George Almasi", title = "The {NINJA} project", journal = j-CACM, volume = "44", number = "10", pages = "102--109", month = oct, year = "2001", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Jan 30 17:44:59 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", keywords = "NINJA (Numerically INtensive JAva)", } @Article{Morelli:2001:JAH, author = "Ralph Morelli and Ralph Walde and Gregg Marcuccio", title = "A {Java API} for historical ciphers: an object-oriented design project", journal = j-SIGCSE, volume = "33", number = "1", pages = "307--311", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364609", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/cryptography2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes a project suitable for a software engineering or object-oriented design course. The project consists of asking students to design an application programming interface (API) for a particular range of applications. An API-design project has several features not always found in application-design projects: It forces students to focus carefully on the distinction between the programming and the user interfaces; it provides a good justification for studying existing APIs as model code; it provides a natural way to divide tasks between different groups of designers/programmers; and, the final product can be used as the basis for programming projects in other courses. In this case the particular project we describe is the design of an API for implementing Historical Cipher algorithms.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Morgenthal:2001:EAI, author = "J. P. (Jeffrey P.) Morgenthal and Bill La Forge", title = "Enterprise Application Integration with {XML} and {Java}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xix + 504", year = "2001", ISBN = "0-13-085135-3", ISBN-13 = "978-0-13-085135-2", LCCN = "QA76.76.H94 M6 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$44.99", series = "The definitive {XML} series from {Charles F. Goldfarb}", URL = "http://www.phptr.com/ptrbooks/ptr_0130851353.html", acknowledgement = ack-nhfb, keywords = "application software; Java (computer program language); XML (document markup language)", } @Article{Nakajima:2001:BAE, author = "Shin Nakajima and Tetsuo Tamai", title = "Behavioural Analysis of the {Enterprise {\bf JavaBeans{\TM}} Component Architecture}", journal = j-LECT-NOTES-COMP-SCI, volume = "2057", pages = "163--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:13 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2057.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2057/20570163.htm; http://link.springer-ny.com/link/service/series/0558/papers/2057/20570163.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Narasimhan:2001:CBS, author = "Srivatsan Narasimhan and Santosh Pande", title = "Compiler Based Scheduling of {Java} Mobile Agents", journal = j-LECT-NOTES-COMP-SCI, volume = "2017", pages = "372--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:35 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2017.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2017/20170372.htm; http://link.springer-ny.com/link/service/series/0558/papers/2017/20170372.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Narasimhan:2001:IJR, author = "N. Narasimhan and L. E. Moser and P. M. Melliar-Smith", title = "Interceptors for {Java Remote Method Invocation}", journal = j-CCPE, volume = "13", number = "8--9", pages = "755--774", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.575", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503222/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503222&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Neary:2001:JJB, author = "Michael O. Neary and Alan Phipps and Steven Richman and Peter Cappello", title = "{Javelin 2.0}: {Java}-Based Parallel Computing on the {Internet}", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "1231--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19001231.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19001231.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Negrino:2001:JWW, author = "Tom Negrino and Dori Smith", title = "{JavaScript} for the {World Wide Web}", publisher = pub-PEACHPIT, address = pub-PEACHPIT:adr, edition = "Fourth", pages = "xiv + 430", year = "2001", ISBN = "0-201-73517-2", ISBN-13 = "978-0-201-73517-8", LCCN = "QA76.73.J39 N44 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Visual quickstart guide", acknowledgement = ack-nhfb, keywords = "Internet publishing; JavaScript (computer program language); World Wide Web", } @InProceedings{Nelisse:2001:OBC, author = "Arnold Nelisse and Thilo Kielmann and Henri Bal and Jason Maassen", title = "Object-based Collective Communication in {Java}", crossref = "ACM:2001:PAJ", pages = "11--20", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/26.html; http://www.philippsen.com/JGI2001/finalpapers/18500011.ps", acknowledgement = ack-nhfb, keywords = "Java", } @MastersThesis{Newhouse:2001:JAE, author = "Travis Gregory Newhouse", title = "{Java} active extensions: a mobile-code mechanism for extending client resources", type = "Thesis ({M.S.})", school = "University of California, San Diego", address = "San Diego, CA, USA", year = "2001", LCCN = "QA 3.9 .N3 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "dissertations, academic -- UCSD -- computer science; dissertations, academic -- UCSD -- computer science and engineering", } @InProceedings{Ngo:2001:IJJ, author = "Ton Ngo and Steve Smith", title = "Implementing {JNI} in {Java} for {Jalape{\~n}o}", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/JVM_wips/S06.pdf", acknowledgement = ack-nhfb, } @Article{Nicholas:2001:TED, author = "Tyrone Nicholas and Jerzy A. Barchanski", title = "{TOS}: an educational distributed operating system in {Java}", journal = j-SIGCSE, volume = "33", number = "1", pages = "312--316", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364611", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes TOS --- an educational distributed operating system implemented in Java. First the current trends in commercial operating systems are shortly presented and compared with several available educational operating systems. Next we give our rationals to use Java as the TOS implementation language. Then the architecture of the system and its components --- launchers and servers are described. Finally we explain the advantages of this architecture and give some examples of possible student projects and assignments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Nipkow:2001:VBV, author = "T. Nipkow", title = "Verified Bytecode Verifiers", journal = j-LECT-NOTES-COMP-SCI, volume = "2030", pages = "347--363", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Dec 01 06:56:10 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Noble:2001:SCJ, author = "Michael S. Noble and Stoyanka Zlateva", title = "Scientific Computation with {JavaSpaces}", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "657--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100657.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100657.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Oaks:2001:JS, author = "Scott Oaks", title = "{Java} security", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvi + 599", year = "2001", ISBN = "0-596-00157-6", ISBN-13 = "978-0-596-00157-5", LCCN = "QA76.73.J38 O247 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Covers JAAS and JSEE; Writing and deploying secure applications; Covers Java 1.1, Java 2, and JCE 1.2.1.", acknowledgement = ack-nhfb, keywords = "computer security; Java (computer program language)", } @Article{Oestreicher:2001:ECJ, author = "Dan Oestreicher", title = "Experience with a commercial {Java} implementation of group communication using reliable multicast", journal = j-OPER-SYS-REV, volume = "35", number = "4", pages = "21--31", month = oct, year = "2001", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Sat Aug 26 08:55:53 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Article{Ogasawara:2001:SEH, author = "Takeshi Ogasawara and Hideaki Komatsu and Toshio Nakatani", title = "A study of exception handling and its dynamic optimization in {Java}", journal = j-SIGPLAN, volume = "36", number = "11", pages = "83--95", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Oliver:2001:SEE, author = "Jos{\'e} Oliver and Jordi Guitart and Eduard Ayguad{\'e} and Nacho Navarro and Jordi Torres", title = "Strategies for the efficient exploitation of loop-level parallelism in {Java}", journal = j-CCPE, volume = "13", number = "8--9", pages = "663--680", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.573", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503218/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503218&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Olson:2001:BJP, author = "Quentin Olson", title = "Brewing {Java} at the Point of Sale", journal = j-EMBEDDED-LINUX-J, volume = "6", pages = "28--31", month = nov # "\slash " # dec, year = "2001", CODEN = "????", ISSN = "1534-083X", bibdate = "Fri Nov 23 18:22:03 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://embedded.linuxjournal.com/magazine/issue06/; http://www.linuxdevices.com/articles/AT8821374910.html", abstract = "Retail operations can benefit from Java features, especially dynamic class loading.", acknowledgement = ack-nhfb, fjournal = "Embedded Linux Journal", } @Article{Omma:2001:BRS, author = "Mikael Omma", title = "Book Review: {{\em Server Based Java Programming}}", journal = j-PARALLEL-DIST-COMP-PRACT, volume = "4", number = "4", pages = "??--??", month = dec, year = "2001", CODEN = "????", ISSN = "1097-2803", bibdate = "Thu Sep 2 12:08:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/4/4.toc", acknowledgement = ack-nhfb, fjournal = "PDCP: Parallel and Distributed Computing Practices", } @Article{Orleans:2001:DDA, author = "Doug Orleans and Karl Lieberherr", title = "{DJ}: Dynamic Adaptive Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "73--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920073.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920073.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Paleczny:2001:JHS, author = "Michael Paleczny and Christopher Vick and Cliff Click", title = "The {Java HotSpot{\TM}} Server Compiler", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/paleczny.html", acknowledgement = ack-nhfb, } @Article{Pancake:2001:HPJ, author = "Cherri Pancake and Christian Lengauer", title = "{High-performance Java}", journal = j-CACM, volume = "44", number = "10", pages = "98--101", month = oct, year = "2001", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Jan 30 17:44:59 MST 2002", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @InProceedings{Pang:2001:PSR, author = "James Pang and Gholamali Shoja and Eric Manning", title = "Providing Soft Real-time {QoS} Guarantees for {Java} Threads", crossref = "ACM:2001:PAJ", pages = "39--46", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/21.html; http://www.philippsen.com/JGI2001/finalpapers/18500039.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Pang:2001:SSR, author = "James C. Pang and Gholamali C. Shoja and Eric G. Manning", title = "Supporting Soft Real-Time Tasks and {QoS} on the {Java} Platform", journal = j-LECT-NOTES-COMP-SCI, volume = "2026", pages = "86--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:43 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2026.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2026/20260086.htm; http://link.springer-ny.com/link/service/series/0558/papers/2026/20260086.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Park:2001:RRJ, author = "Jung Gyu Park and Arthur H. Lee", title = "Removing Reflection from {Java} Programs Using Partial Evaluation", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "274--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920274.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920274.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Parrish:2001:IAV, author = "Allen Parrish and Joe Hollingsworth and Peter Maurer and Benjamin Shults and Bruce Weide", title = "Identifying an appropriate view of software components for undergraduate education", journal = j-SIGCSE, volume = "33", number = "1", pages = "394--395", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364756", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Software components have existed in one form or another for a number of years. Work in this area can be classified into two broad categories. On the one hand, a number of researchers have approached the concept of software components from a first principles perspective, advancing ideas regarding what constitutes the ideal component paradigm from perspectives of efficiency, verifiability and reusability. On the other hand, recent commercial advances in a number of popular technologies have elevated the software component concept into widespread use within the software practitioner community. Such technologies include a number of technologies made popular by Microsoft (such as Active-X, COM, DCOM and Visual Basic), as well as CORBA and Java Beans. Neither of these perspectives on software components has become a standard cornerstone of software development pedagogy. Yet both perspectives may have an important role in preparing software developers to build high-quality software in the context of modern software development technologies. In particular, teaching students how to design and construct software components from first principles provides students with important guidance as to the ``right way'' to structure correct and efficient software systems (i.e., with emphasis on ``what'' component-based systems should contain). On the other hand, teaching students about current commercial component technologies exposes students to the important dimension of best commercial practice (i.e., with emphasis on ``how'' component-based systems could be built).The participants of this panel are all actively involved in the development of courses and curricula that provide various perspectives on component-based systems. They represent both the first principles and commercial perspectives discussed above. Position statements for each of the panelists appear below.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Pasareanu:2001:FFC, author = "Corina S. Pasareanu and Matthew B. Dwyer and Willem Visser", title = "Finding Feasible Counter-examples when Model Checking Abstracted {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2031", pages = "284--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:48 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2031.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2031/20310284.htm; http://link.springer-ny.com/link/service/series/0558/papers/2031/20310284.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Paulson:2001:NBRb, author = "Linda Dailey Paulson", title = "News Briefs: Researchers Work on Improving Memory: Tracking Your {E}-Mail: Handheld-to-Handheld: Fighting over {Java}; Future Searches; Location, Location, Location; {Michigan} Goes to Cybercourt", journal = j-COMPUTER, volume = "34", number = "7", pages = "19--21", month = jul, year = "2001", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Wed Jul 11 07:52:11 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2001/pdf/r7019.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Pawlak:2001:JFS, author = "Renaud Pawlak and Lionel Seinturier and Laurence Duchien and G{\'e}rard Florin", title = "{JAC}: a Flexible Solution for Aspect-Oriented Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "1--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920001.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Pelrine:2001:MED, author = "Joseph Pelrine and Alan Knight and Adrian Cho", title = "Mastering {ENVY\slash Developer}", volume = "22", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, year = "2001", ISBN = "0-521-66650-3", ISBN-13 = "978-0-521-66650-3", LCCN = "QA76.64 .P46 2001", bibdate = "Mon Apr 02 18:39:25 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95", series = "Advances in object technology", acknowledgement = ack-nhfb, keywords = "Java; Smalltalk", } @Article{Perry:2001:OND, author = "Tekla S. Perry", title = "Operating in neutral [digital music legislation]", journal = j-IEEE-SPECTRUM, volume = "38", number = "10", pages = "52--57", month = oct, year = "2001", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/6.954541", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib4; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "A. J. Nichols; audio signal processing; Cities and towns; digital music legislation; electrical engineer; Engineering profession; entertainment; Helium; hobby computing; IEEE members; Java; judicial advice; legislation; Motion pictures; music; Napster; Neck; neutral expert; Peer to peer computing; Publishing; Testing", } @Article{Philippsen:2001:JHP, author = "Michael Philippsen and Ronald F. Boisvert and Valdimir S. Getov and Roldan Pozo and Jos{\'e} Moreira and Dennis Gannon and Geoffrey C. Fox", title = "{JavaGrande} --- High Performance Computing with {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1947", pages = "20--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:51 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1947.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1947/19470020.htm; http://link.springer-ny.com/link/service/series/0558/papers/1947/19470020.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Pitt:2001:JRR, author = "Esmond Pitt and Kathy McNiff", title = "{Java.RMI}: the remote method invocation guide", publisher = "Pearson Education", address = "Harlow, England", pages = "xxxi + 284", year = "2001", ISBN = "0-201-70043-3", ISBN-13 = "978-0-201-70043-5", LCCN = "QA76.73.J38 P58 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; electronic data processing -- distributed processing; Java (computer program language); RMI (computer architecture)", } @Book{Pohl:2001:JDU, author = "Ira Pohl and Charlie McDowell", title = "{Java} by Dissection: Update with {C} Primer", publisher = pub-AW, address = pub-AW:adr, pages = "????", year = "2001", ISBN = "0-201-72596-7", ISBN-13 = "978-0-201-72596-4", LCCN = "????", bibdate = "Tue Feb 20 18:50:23 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$68", acknowledgement = ack-nhfb, } @Article{Poll:2001:FSJ, author = "Erik Poll and Joachim van den Berg and Bart Jacobs", title = "Formal specification of the {JavaCard API} in {JML}: the {APDU} class", journal = j-COMP-NET-AMSTERDAM, volume = "36", number = "4", pages = "407--421", day = "16", month = jul, year = "2001", CODEN = "????", ISSN = "1389-1286 (print), 1872-7069 (electronic)", ISSN-L = "1389-1286", bibdate = "Wed Jul 25 16:48:14 MDT 2001", bibsource = "http://www.elsevier.com/locate/issn/13891286; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.nl/gej-ng/10/15/22/61/28/28/abstract.html; http://www.elsevier.nl/gej-ng/10/15/22/61/28/28/article.pdf", acknowledgement = ack-nhfb, fjournal = "Computer Networks (Amsterdam, Netherlands: 1999)", journal-URL = "http://www.sciencedirect.com/science/journal/13891286", } @Article{Pollet:2001:DSD, author = "Isabelle Pollet and Baudouin Le Charlier and Agostino Cortesi", title = "Distinctness and Sharing Domains for Static Analysis of {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2072", pages = "77--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:27 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2072.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2072/20720077.htm; http://link.springer-ny.com/link/service/series/0558/papers/2072/20720077.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Pollock:2001:JBG, author = "John Pollock", title = "{JavaScript}: a beginner's guide", publisher = pub-OSBORNE, address = pub-OSBORNE:adr, pages = "xx + 603", year = "2001", ISBN = "0-07-213140-3", ISBN-13 = "978-0-07-213140-6", LCCN = "QA76.73.J39 P65 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Pominville:2001:FOJ, author = "Patrice Pominville and Feng Qian and Raja Vall{\'e}e-Rai and Laurie Hendren and Clark Verbrugge", title = "A Framework for Optimizing {Java} Using Attributes", journal = j-LECT-NOTES-COMP-SCI, volume = "2027", pages = "334--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2027.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2027/20270334.htm; http://link.springer-ny.com/link/service/series/0558/papers/2027/20270334.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Powell:2001:JCR, author = "Thomas A. Powell and Fritz Schneider", title = "{JavaScript}: the complete reference", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xxiv + 1079", year = "2001", ISBN = "0-07-219127-9", ISBN-13 = "978-0-07-219127-1", LCCN = "QA76.73.J39 P69 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Praehofer:2001:BWC, author = "Herbert Praehofer and Johannes Sametinger and Alois Stritzinger", title = "Best of {Websim99}: Concepts and architecture of a simulation framework based on the {JavaBeans} component model", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "5", pages = "539--559", month = mar, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:21 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/30/29/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Prechelt:2001:IMI, author = "Lutz Prechelt and Rainer Typke", title = "An interface for melody input", journal = j-TOCHI, volume = "8", number = "2", pages = "133--149", year = "2001", CODEN = "ATCIF4", ISSN = "1073-0516 (print), 1557-7325 (electronic)", ISSN-L = "1073-0516", bibdate = "Sat Jul 14 12:07:47 MDT 2001", bibsource = "http://www.acm.org/pubs/toc/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/journals/tochi/2001-8-2/p133-prechelt/p133-prechelt.pdf; http://www.acm.org/pubs/citations/journals/tochi/2001-8-2/p133-prechelt/", abstract = "We present a software system, called Tuneserver, which recognizes a musical tune whistled by the user, finds it in a database, and returns its name, composer, and other information. Such a service is useful for track retrieval at radio stations, music stores, etc., and is also a step toward the long-term goal of communicating with a computer much like one would with a human being. Tuneserver is implemented as a public Java-based WWW service with a database of approximately 10,000 motifs. Tune recognition is based on a highly error-resistant encoding, proposed by Parsons, that uses only the direction of the melody, ignoring the size of intervals as well as rhythm. We present the design and implementation of the tune recognition core, outline the design of the Web service, and describe the results obtained in an empirical evaluation of the new interface, including the derivation of suitable system parameters, resulting performance figures, and an error analysis.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Computer-Human Interaction", generalterms = "Algorithms; Human Factors; Performance", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J756", keywords = "input mode; melody; motif; recognition; theme; tune", subject = "Data --- Coding and Information Theory (E.4): {\bf Error control codes}; Information Systems --- Models and Principles --- User/Machine Systems (H.1.2): {\bf Human information processing}; Information Systems --- Information Storage and Retrieval --- Information Search and Retrieval (H.3.3): {\bf Selection process}; Information Systems --- Information Storage and Retrieval --- Online Information Services (H.3.5); Information Systems --- Information Interfaces and Presentation --- Hypertext/Hypermedia (H.5.4); Computing Methodologies --- Artificial Intelligence --- Miscellaneous (I.2.m); Computing Methodologies --- Pattern Recognition --- Applications (I.5.4): {\bf Signal processing}; Information Systems --- Information Interfaces and Presentation --- Hypertext/Hypermedia (H.5.4): {\bf User issues}; Computing Milieux --- Computers and Society --- Miscellaneous (K.4.m); Information Systems --- Information Interfaces and Presentation --- Sound and Music Computing (H.5.5)", } @Book{Price:2001:JPO, author = "Jason Price", title = "{Java} programming with {Oracle SQLJ}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 381", year = "2001", ISBN = "0-596-00087-1 (paperback)", ISBN-13 = "978-0-596-00087-5 (paperback)", LCCN = "QA76.73.J38 P74 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Oracle (computer file); SQL (computer program language)", } @Article{Prochazka:2001:ATE, author = "Marek Prochazka", title = "Advanced Transactions in {Enterprise Java Beans}", journal = j-LECT-NOTES-COMP-SCI, volume = "1999", pages = "215--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:18 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1999.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1999/19990215.htm; http://link.springer-ny.com/link/service/series/0558/papers/1999/19990215.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Radhakrishnan:2001:JRS, author = "R. Radhakrishnan and N. Vijaykrishnan and L. K. John and A. Sivasubramaniam and J. Rubio and J. Sabarinathan", title = "{Java} runtime systems: characterization and architectural implications", journal = j-IEEE-TRANS-COMPUT, volume = "50", number = "2", pages = "131--146", month = feb, year = "2001", CODEN = "ITCOB4", DOI = "https://doi.org/10.1109/12.908989", ISSN = "0018-9340 (print), 1557-9956 (electronic)", ISSN-L = "0018-9340", bibdate = "Tue Oct 24 10:08:12 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Java Virtual Machine (JVM) is the cornerstone of Java technology and its efficiency in executing the portable Java bytecodes is crucial for the success of this technology. Interpretation, Just-in-Time (JIT) compilation, and hardware realization are well-known solutions for a JVM and previous research has proposed optimizations for each of these techniques. However, each technique has its pros and cons and may not be uniformly attractive for all hardware platforms. Instead, an understanding of the architectural implications of JVM implementations with real applications can be crucial to the development of enabling technologies for efficient Java runtime system development on a wide range of platforms. Toward this goal, this paper examines architectural issues from both the hardware and JVM implementation perspectives. The paper starts by identifying the important execution characteristics of Java applications from a bytecode perspective. It then explores the potential of a smart JIT compiler strategy that can dynamically interpret or compile based on associated costs and investigates the CPU and cache architectural support that would benefit JVM implementations. We also study the available parallelism during the different execution modes using applications from the SPECjvm98 benchmarks. At the bytecode level, it is observed that less than 5 out of the 256 bytecodes constitute 90 percent of the dynamic bytecode stream. Method sizes fall into a trinodal distribution with peak of 1, 9, and 26 bytecodes across all benchmarks. The architectural issues explored in this study show that, when Java applications are executed with a JIT compiler, selective translation using good heuristics can improve performance, but the saving is only 10-15 percent at best. The instruction and data cache performance of Java applications are seen to be better than that of C/C++ applications except in the case of data cache performance in the JIT mode. Write misses resulting from installation of JIT compiler output dominate the misses and deteriorate the data cache performance in JIT mode. A study on the available parallelism shows that Java programs executed using JIT compilers have parallelism comparable to C/C++ programs for small window sizes, but falls behind when the window size is increased. Java programs executed using the interpreter have very little parallelism due to the stack nature of the SVM instruction set, which is dominant in the interpreted execution mode. In addition, this work gives revealing insights and architectural proposals for designing an efficient Java runtime system.", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Computers", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=12", } @Article{Raje:2001:CSD, author = "Rajeev R. Raje and Ming Zhong and Tongyu Wang", title = "Case study: a distributed concurrent system with {AspectJ}", journal = j-SIGAPP, volume = "9", number = "2", pages = "17--23", month = jul, year = "2001", CODEN = "????", DOI = "https://doi.org/10.1145/512000.512004", ISSN = "1559-6915 (print), 1931-0161 (electronic)", ISSN-L = "1559-6915", bibdate = "Thu Jan 23 10:21:34 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigapp2000.bib", URL = "https://dl.acm.org/doi/abs/10.1145/512000.512004", abstract = "This paper presents a simple three-tier client/server application using two prototypes. The first prototype makes the use of a traditional OOP language, Java. The second prototype uses the Aspect-Oriented Programming (AOP) language AspectJ. The \ldots{}", acknowledgement = ack-nhfb, fjournal = "ACM SIGAPP Applied Computing Review", journal-URL = "https://dl.acm.org/loi/sigapp", } @Article{Ramirez:2001:IDC, author = "Rafael Ramirez and Andrew E. Santosa and Lee Wei Hong", title = "Implementing Declarative Concurrency in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "700--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19000700.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19000700.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rao:2001:UCJa, author = "Prithvi Rao", title = "Using {CORBA} with {Java}", journal = j-LOGIN, volume = "26", number = "1", pages = "??--??", month = feb, year = "2001", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:45:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2001-02/index.html", URL = "http://www.usenix.org/publications/java/usingjava26.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rao:2001:UCJb, author = "Prithvi Rao", title = "Using {CORBA} with {Java}", journal = j-LOGIN, volume = "26", number = "3", pages = "??--??", month = jun, year = "2001", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:52:00 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2001-06/index.html", URL = "http://www.usenix.org/publications/java/usingjava27.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Rasala:2001:JPT, author = "Richard Rasala and Jeff Raab and Viera K. Proulx", title = "{Java} power tools: model software for teaching object-oriented design", journal = j-SIGCSE, volume = "33", number = "1", pages = "297--301", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364606", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The Java Power Tools or JPT is a Java toolkit designed to enable students to rapidly develop graphical user interfaces in freshman computer science programming projects. Because it is simple to create GUIs using JPT, students can focus on the more fundamental issues of computer science rather than on widget management. In a separate article[4], we will discuss with examples how the JPT can help freshman students to learn about the basics of algorithms, data structures, classes, and interface design. In this article, we will focus on how the JPT itself can be used as an extended case study of object-oriented design principles in a more advanced course. The fundamental design principles of the JPT are that the elements of a graphical user interface should be able to be combined recursively as nested views and that the communication between these views and the internal data models should be as automatic as possible. In particular, in JPT, the totality of user input from a complex view can be easily converted into a corresponding data model and any input errors will be detected and corrected along the way. This ease of communication is achieved by using string objects as a lingua franca for views and models and by using parsing when appropriate to automatically check for errors and trigger recovery. The JPT achieves its power by a combination of computer science and software design principles. Recursion, abstraction, and encapsulation are systematically used to create GUI tools of great flexibility. It should be noted that a much simpler pedagogical package for Java IO was recently presented in [9].", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Reddy:2001:FJP, author = "Achut Reddy", title = "Fast {Java}: Performance Tuning Guide", publisher = pub-PH, address = pub-PH:adr, pages = "????", year = "2001", ISBN = "0-13-081245-5", ISBN-13 = "978-0-13-081245-2", LCCN = "????", bibdate = "Tue Feb 20 18:33:10 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$45", acknowledgement = ack-nhfb, } @Article{Reed:2001:RCJ, author = "David Reed", title = "Rethinking {CS0} with {JavaScript}", journal = j-SIGCSE, volume = "33", number = "1", pages = "100--104", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364552", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Traditional approaches to CS0 have emphasized either breadth, through an overview of computer science, or depth, through intensive programming. This paper describes an alternative teaching method that strikes a balance between these two approaches through the use of JavaScript and the World Wide Web. By taking advantage of JavaScript's simplicity and natural Web-based interfaces, the CS0 course described here is able to maintain a strong emphasis on programming and problem-solving, integrate programming skills with Web technology, and still provide reasonable breadth on general computer science topics. This balance between depth and breadth makes the course attractive to both non-majors and majors alike, providing a broad perspective of the field as well as a foundation for continuing studies in computer science.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rempt:2001:SJP, author = "Boudewijn Rempt", title = "Scripting With {Java} and {Python}: Building a {Python} console window in a {Java} application", journal = j-DDJ, volume = "26", number = "10", pages = "56, 60--61", month = oct, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_10/pyconsol.txt; http://www.ddj.com/ftp/2001/2001_10/pyconsol.zip", abstract = "Boudewijn shows how you can embed a standard language such as Python into a Java application. Additional resources include {\tt pyconsol.txt} (listings) and {\tt pyconsol.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Renaud:2001:JRJ, author = "Karen Renaud and Huw Evans", title = "{JavaCloak}: Reflecting on {Java} Typing for Class Reuse Using Proxies", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "278--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920278.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920278.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Reus:2001:HCV, author = "Bernhard Reus and Martin Wirsing and Rolf Hennicker", title = "A {Hoare} Calculus for Verifying {Java} Realizations of {OCL}-Constrained Design Models", journal = j-LECT-NOTES-COMP-SCI, volume = "2029", pages = "300--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:46 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2029.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2029/20290300.htm; http://link.springer-ny.com/link/service/series/0558/papers/2029/20290300.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Riccardi:2001:PDS, author = "Greg Riccardi", title = "Principles of database systems with {Internet} and {Java} applications", publisher = pub-AW, address = pub-AW:adr, pages = "xxi + 518", year = "2001", ISBN = "0-201-61247-X", ISBN-13 = "978-0-201-61247-9", LCCN = "QA76.9.D3 R52 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "database management; Internet; Java (computer program language)", } @Book{Riggs:2001:PWD, author = "Roger Riggs and Antero Taivalsaari and Mark VandenBrink and Jim Holliday", title = "Programming wireless devices with the {Java 2} platform, micro edition: {J2ME Connected Limited Device Configuration (CLDC)}, {Mobil Information Device Profile (MIDP)}", publisher = pub-AW, address = pub-AW:adr, pages = "xxiii + 345", year = "2001", ISBN = "0-201-74627-1", ISBN-13 = "978-0-201-74627-3", LCCN = "TK5103.2 .R54 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); wireless communication systems", } @InProceedings{Riley:2001:HPJ, author = "Christopher Riley and Siddhartha Chatterjee and Rupak Biswas", title = "High-Performance {Java} Codes for Computational Fluid Dynamics", crossref = "ACM:2001:PAJ", pages = "143--152", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/5.html; http://www.philippsen.com/JGI2001/finalpapers/18500143.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Ritley:2001:DEP, author = "K. A. Ritley and M. Schlestein and H. Dosch", title = "{DataScan}: An extensible program for image analysis in {Java}", journal = j-COMP-PHYS-COMM, volume = "137", number = "2", pages = "300--311", day = "15", month = jun, year = "2001", CODEN = "CPHCBZ", DOI = "https://doi.org/10.1016/S0010-4655(01)00155-2", ISSN = "0010-4655 (print), 1879-2944 (electronic)", ISSN-L = "0010-4655", bibdate = "Tue Feb 14 07:23:49 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/compphyscomm1970.bib; https://www.math.utah.edu/pub/tex/bib/compphyscomm2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0010465501001552", acknowledgement = ack-nhfb, fjournal = "Computer Physics Communications", journal-URL = "http://www.sciencedirect.com/science/journal/00104655", } @Article{Robbins:2001:SPE, author = "Steven Robbins", title = "Starving philosophers: experimentation with monitor synchronization", journal = j-SIGCSE, volume = "33", number = "1", pages = "317--321", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364612", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Textbook discussions of synchronization seldom go beyond a brief introduction in terms of classical problems. This paper presents a simulator for the monitor solution of the dining philosophers problem that students can use to experimentally explore how such a solution might behave in practice. The simulator, which can be run remotely from a browser or can be downloaded for running locally, is written in Java so that it can be run on almost any system.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberts:2001:OM, author = "Eric Roberts", title = "An overview of {MiniJava}", journal = j-SIGCSE, volume = "33", number = "1", pages = "1--5", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364525", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes the implementation of MiniJava, a teaching-oriented programming language closely based on the Java language developed by Sun Microsystems [6]. The core of the MiniJava environment is a restricted subset of the standard Java release and is designed to reduce the intimidation factor introductory students experience when they encounter a system as large as the Java environment. The paper outlines the particular restrictions and extensions that define MiniJava along with pedagogical justifications for each.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Robison:2001:ICE, author = "Arch Robison", title = "Impact of Compiler Economics on Program Optimization", crossref = "ACM:2001:PAJ", pages = "1--10", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/13.html; http://www.philippsen.com/JGI2001/finalpapers/001.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Book{Rockwell:2001:XXJ, author = "Westy Rockwell", title = "{XML}, {XSLT}, {Java} and {JSP}: a case study in developing a {Web} application", publisher = pub-NEW-RIDERS, address = pub-NEW-RIDERS:adr, pages = "xviii + 746", year = "2001", ISBN = "0-7357-1089-9", ISBN-13 = "978-0-7357-1089-4", LCCN = "QA76.76.H94 R62 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "CD-ROM has additional title, ``Exhibit D''. CD-ROM includes: E-book of this book, plus various online information sources, Java files, etc.", keywords = "Java (computer program language); JavaServer pages; Web sites -- authoring programs; XML (document markup language); XSLT (document markup language)", } @Book{Rodrigues:2001:BIA, author = "Lawrence H. Rodrigues", title = "Building imaging applications with {Java} technology: using {AWT} Imaging, {Java 2D}, and {Java Advanced Imaging (JAI)}", publisher = pub-AW, address = pub-AW:adr, pages = "xx + 857", year = "2001", ISBN = "0-201-70074-3 (paperback)", ISBN-13 = "978-0-201-70074-9 (paperback)", LCCN = "QA76.73.J38 R65 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "image processing -- digital techniques; Java (computer program language)", } @Article{Ronthal:2001:WJI, author = "Adam Ronthal", title = "Why {Java} Isn't Appropriate for Everything", journal = j-SYS-ADMIN, volume = "10", number = "7", pages = "52, 54--55", month = jul, year = "2001", CODEN = "SYADE7", ISSN = "1061-2688", bibdate = "Wed Jul 11 07:11:33 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.samag.com/", abstract = "Web Exclusive.", acknowledgement = ack-nhfb, fjournal = "Sys admin: the journal for UNIX system administrators", } @Article{Rose:2001:JAP, author = "Eva Rose and Kristoffer H{\o}gsbro Rose", title = "{Java} access protection through typing", journal = j-CCPE, volume = "13", number = "13", pages = "1125--1132", month = nov, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.599", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Feb 25 14:51:24 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/88011340/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=88011340&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Roth:2001:EJA, author = "Volker Roth and Vania Conan", title = "Encrypting {Java} Archives and Its Application to Mobile Agent Security", journal = j-LECT-NOTES-COMP-SCI, volume = "1991", pages = "229--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:10 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1991.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1991/19910229.htm; http://link.springer-ny.com/link/service/series/0558/papers/1991/19910229.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rountev:2001:PAJ, author = "Atanas Rountev and Ana Milanova and Barbara G. Ryder", title = "Points-to analysis for {Java} using annotated constraints", journal = j-SIGPLAN, volume = "36", number = "11", pages = "43--55", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Rummler:2001:EJF, author = "Andreas Rummler and Gerd Scarbata", title = "{eaLib} --- {A} {Java} Framework for Implementation of Evolutionary Algorithms", journal = j-LECT-NOTES-COMP-SCI, volume = "2206", pages = "92--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:51 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2206.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2206/22060092.htm; http://link.springer-ny.com/link/service/series/0558/papers/2206/22060092.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rumpe:2001:BNP, author = "Bernhard Rumpe", title = "{$ \ll $Java$ \gg $OCL} Based on New Presentation of the {OCL}-Syntax", journal = j-LECT-NOTES-COMP-SCI, volume = "2263", pages = "189--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:03 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2263.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2263/22630189.htm; http://link.springer-ny.com/link/service/series/0558/papers/2263/22630189.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Russell:2001:HSA, author = "Kenneth Russell and Lars Bak", title = "The {HotSpot{\TM}} Serviceability Agent: An Out-of-Process High-Level Debugger for a {Java{\TM} Virtual Machine}", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/russell.html", acknowledgement = ack-nhfb, } @Book{Sahu:2001:JSP, author = "Maneesh Sahu", title = "{Java Server Pages} from scratch", publisher = pub-QUE, address = pub-QUE:adr, pages = "ix + 404", year = "2001", ISBN = "0-7897-2459-6", ISBN-13 = "978-0-7897-2459-5", LCCN = "QA76.73.J38 S25 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "CD-ROM includes: evaluation software for IBM's Websphere Studio 3.0 entry edition, IBM's VisualAge for Java 3.0 entry edition, IBM's DB2 Universal Database professional edition v6.1, Tomcat Reference Implementation v3.1, NetObject's Fusion demo version, NetStudio 2000, Nokia WAP Toolkit product information.", series = "From scratch programming series", acknowledgement = ack-nhfb, keywords = "client/server computing; JavaServer pages; Web site development; Web sites -- design", } @Article{Sakamura:2001:EMJ, author = "Ken Sakamura", title = "{EIC} Message: a {Java}-enabled evolution", journal = j-IEEE-MICRO, volume = "21", number = "4", pages = "2--3, 5", month = jul # "\slash " # aug, year = "2001", CODEN = "IEMIDZ", DOI = "https://doi.org/10.1109/MM.2001.946665", ISSN = "0272-1732 (print), 1937-4143 (electronic)", ISSN-L = "0272-1732", bibdate = "Thu Aug 30 11:09:58 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/mi/books/mi2001/pdf/m4002.pdf; m4002abs.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Micro", journal-URL = "http://www.computer.org/csdl/mags/mi/index.html", } @Article{Saleh:2001:ADC, author = "K. Saleh and A. A. Boujarwah and J. Al-Dallal", title = "Anomaly detection in concurrent {Java} programs using dynamic data flow analysis", journal = j-INFO-SOFTWARE-TECH, volume = "43", number = "15", pages = "973--981", day = "23", month = dec, year = "2001", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", pagecount = "9", } @Article{Samuelsson:2001:JBS, author = "P{\"a}r Samuelsson and Mats Ekman and Bengt Carlsson", title = "A {JAVA} based simulator of activated sludge processes", journal = j-MATH-COMPUT-SIMUL, volume = "56", number = "4--5", pages = "333--346", day = "11", month = jun, year = "2001", CODEN = "MCSIDR", DOI = "https://doi.org/10.1016/S0378-4754(01)00305-6", ISSN = "0378-4754 (print), 1872-7166 (electronic)", ISSN-L = "0378-4754", bibdate = "Sat Aug 16 16:59:47 MDT 2025", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/mathcomputsimul2000.bib", URL = "https://www.sciencedirect.com/science/article/pii/S0378475401003056", acknowledgement = ack-nhfb, ajournal = "Math. Comput. Simul.", fjournal = "Mathematics and Computers in Simulation", journal-URL = "http://www.sciencedirect.com/science/journal/03784754", } @Article{Sanchez:2001:BWA, author = "Miguel S{\'a}nchez and Pietro Manzoni", title = "Best of {Websim99}: {ANEJOS}: a {Java} based simulator for ad hoc networks", journal = j-FUT-GEN-COMP-SYS, volume = "17", number = "5", pages = "573--583", month = mar, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:21 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/45/30/31/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Book{Sanchez:2001:JWC, author = "Julio Sanchez and Maria P. Canton", title = "{Java 2} weekend crash course", publisher = pub-IDG-WORLDWIDE, address = pub-IDG-WORLDWIDE:adr, pages = "xxiv + 427", year = "2001", ISBN = "0-7645-4768-2", ISBN-13 = "978-0-7645-4768-3", LCCN = "QA76.73.J38 S25 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Sarkar:2001:EDA, author = "Vivek Sarkar and Stephen Fink", title = "Efficient Dependence Analysis for {Java} Arrays", journal = j-LECT-NOTES-COMP-SCI, volume = "2150", pages = "273--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:53 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2150.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2150/21500273.htm; http://link.springer-ny.com/link/service/series/0558/papers/2150/21500273.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sarkar:2001:HPS, author = "Vivek Sarkar and Julian Dolby", title = "High-Performance Scalable {Java} Virtual Machines", journal = j-LECT-NOTES-COMP-SCI, volume = "2228", pages = "151--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:14 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2228.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2228/22280151.htm; http://link.springer-ny.com/link/service/series/0558/papers/2228/22280151.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Savitch:2001:JIC, author = "Walter J. Savitch", title = "{Java}: An Introduction to Computer Science and Programming", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Second", pages = "xxxiv + 1049", year = "2001", ISBN = "0-13-031697-0", ISBN-13 = "978-0-13-031697-4", LCCN = "QA76.73.J38 S27 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM with text's programs, icons and TextPad. Study Guide and Slides available on the World Wide Web.", price = "US\$68.00", URL = "http://cw.prenhall.com/bookbind/pubbooks/savitch; http://www.phptr.com/ptrbooks/esm_0130316970.html", acknowledgement = ack-nhfb, keywords = "computer science textbooks; Java (computer program language)", } @Book{Schildt:2001:JCR, author = "Herbert Schildt", title = "{Java 2}: the complete reference", publisher = pub-OSBORNE, address = pub-OSBORNE:adr, edition = "Fourth", pages = "xxvi + 1077", year = "2001", ISBN = "0-07-213084-9", ISBN-13 = "978-0-07-213084-3", LCCN = "QA76.73.J38 S3283 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @InProceedings{Schneider:2001:APM, author = "Daniel Schneider and Bernd Mathiske and Matthias Ernst and Matthew Seidl", title = "Automatic Persistent Memory Management for the {Spotless Java{\TM} Virtual Machine} on the {Palm Connected Organizer}", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/schneider.html", acknowledgement = ack-nhfb, } @Article{Sekkaki:2001:DAM, author = "A. Sekkaki and L. M. C{\'a}ceres Alvarez and W. Tatsuya Watanabe and B. Westphall", title = "Development of Accounting Management Based Service Environment in {Tina}, {Java} and {Corba} Architectures", journal = j-LECT-NOTES-COMP-SCI, volume = "2094", pages = "438--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:54 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2094.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2094/20940438.htm; http://link.springer-ny.com/link/service/series/0558/papers/2094/20940438.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Seymour:2001:ATF, author = "Keith Seymour and Jack Dongarra", title = "Automatic Translation of {Fortran} to {JVM} Bytecode", crossref = "ACM:2001:PAJ", pages = "126--133", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.netlib.org/utk/people/JackDongarra/PAPERS/f2jreport.pdf; http://www.philippsen.com/JGI2001/camerareadyabstracts/51.html; http://www.philippsen.com/JGI2001/finalpapers/18500126.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Shah:2001:JSD, author = "Mehul A. Shah and Michael J. Franklin and Samuel Madden and Joseph M. Hellerstein", title = "{Java} support for data-intensive systems: experiences building the telegraph dataflow system", journal = "SIGMOD", volume = "30", number = "4", pages = "103--114", month = dec, year = "2001", bibdate = "Mon Jan 12 07:43:32 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Shaham:2001:EGJ, author = "Ran Shaham and Elliot K. Kolodner and Mooly Sagiv", title = "On the Effectiveness of {GC} in {Java}", journal = j-SIGPLAN, volume = "36", number = "1", pages = "12--17", month = jan, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "ACM SIGPLAN International Symposium on Memory Management (ISMM'00)", } @Article{Shaham:2001:HPS, author = "Ran Shaham and Elliot K. Kolodner and Mooly Sagiv", title = "Heap Profiling for Space-Efficient {Java}", journal = j-SIGPLAN, volume = "36", number = "5", pages = "104--113", month = may, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:26 MST 2003", bibsource = "http://portal.acm.org/; http://www.acm.org/sigplan/pldi/pldi2001/pldi_program.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Shaofeng:2001:FDW, author = "Wang Shaofeng and Sun Jiaguang", title = "A framework design of workflow management system with {Java RMI}", journal = j-SIGPLAN, volume = "36", number = "9", pages = "86--93", month = sep, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Shaofeng:2001:RJR, author = "Wang Shaofeng", title = "The role of {Java RMI} in designing workflow management system", journal = j-SIGSOFT, volume = "26", number = "2", pages = "49--52", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505789", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of the workflow management system(WfMS) has become one of the most important research areas in information system. The design of the WfMS is a very complicated process, involving many difficult tasks. In this paper, We discuss the design of Java RMI-based workflow management system JWfMS, mainly on the designing framework of the JWfMS. According to our experience, we found that Java RMI is suitable and practical for the design of heterogeneous, distributed system such as WfMS because Java RMI makes the design and maintenance work much simpler.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shapiro:2001:FJR, author = "Joel A. Shapiro and Warren B. Powell and David Bernstein", title = "A Flexible {Java} Representation for Uncertainty in Online Operations-Research Models", journal = j-INFORMS-J-COMPUT, volume = "13", number = "1", pages = "29--55", month = "Winter", year = "2001", CODEN = "????", DOI = "https://doi.org/10.1287/ijoc.13.1.29.9749", ISSN = "1091-9856 (print), 1526-5528 (electronic)", ISSN-L = "1091-9856", bibdate = "Mon Apr 9 08:10:19 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/informs-j-comput.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "https://pubsonline.informs.org/doi/abs/10.1287/ijoc.13.1.29.9749", acknowledgement = ack-nhfb, ajournal = "INFORMS J. Comput.", fjournal = "INFORMS Journal on Computing", journal-URL = "https://pubsonline.informs.org/journal/ijoc", onlinedate = "February 1, 2001", } @Article{Shegalov:2001:XEW, author = "German Shegalov and Michael Gillmann and Gerhard Weikum", title = "{XML}-enabled workflow management for e-services across heterogeneous platforms", journal = j-VLDB-J, volume = "10", number = "1", pages = "91--103", month = aug, year = "2001", CODEN = "VLDBFR", DOI = "https://doi.org/10.1007/s007780100038", ISSN = "1066-8888 (print), 0949-877X (electronic)", ISSN-L = "1066-8888", bibdate = "Mon Jun 23 10:50:56 MDT 2008", bibsource = "http://link.springer.de/link/service/journals/00778/tocs/t1010001.htm; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/journals/00778/bibs/1010001/10100091.htm; http://link.springer.de/link/service/journals/00778/papers/1010001/10100091.pdf", abstract = "Advanced e-services require efficient, flexible, and easy-to-use workflow technology that integrates well with mainstream Internet technologies such as XML and Web servers. This paper discusses an XML-enabled architecture for distributed workflow management that is implemented in the latest version of our Mentor-lite prototype system. The key asset of this architecture is an XML mediator that handles the exchange of business and flow control data between workflow and business-object servers on the one hand and client activities on the other via XML messages over http. Our implementation of the mediator has made use of Oracle's XSQL servlet. The major benefit of the advocated architecture is that it provides seamless integration of client applications into e-service workflows with scalable efficiency and very little explicit coding, in contrast to an earlier, Java-based, version of our Mentor-lite prototype that required much more code and exhibited potential performance problems.", acknowledgement = ack-nhfb, fjournal = "VLDB Journal: Very Large Data Bases", journal-URL = "http://portal.acm.org/toc.cfm?id=J869", keywords = "business processes; information system interoperability; Internet e-services; workflow management; XML/XSL", } @Book{Shelly:2001:JCC, author = "Gary B. Shelly", title = "{JavaScript}: complete concepts and techniques", publisher = pub-COURSE-TECHNOLOGY, address = pub-COURSE-TECHNOLOGY:adr, edition = "Second", pages = "various", year = "2001", ISBN = "0-7895-6233-2", ISBN-13 = "978-0-7895-6233-3", LCCN = "QA76.73.J38 S457 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Shelly Cashman series", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Book{Shelly:2001:JPI, author = "Gary B. Shelly and Thomas J. Cashman and Joy Starks", title = "{Java} programming: introductory concepts and techniques", publisher = pub-COURSE-TECHNOLOGY, address = pub-COURSE-TECHNOLOGY:adr, pages = "various", year = "2001", ISBN = "0-7895-5959-5 (paperback)", ISBN-13 = "978-0-7895-5959-3 (paperback)", LCCN = "QA76.73.J38 S49 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Shelly Cashman series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @InProceedings{Shende:2001:IAT, author = "Sameer Shende and Allen Malony", title = "Integration and Application of the {TAU} Performance System in Parallel {Java} Environments", crossref = "ACM:2001:PAJ", pages = "87--96", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/39.html; http://www.philippsen.com/JGI2001/finalpapers/18500087.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Sheong:2001:BDF, author = "Chang Sau Sheong", title = "Building Dynamic Fail-Over {Java} Servers", journal = j-DDJ, volume = "26", number = "11", pages = "46, 48, 50, 52--54, 57", month = nov, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_11/xander.txt; http://www.ddj.com/ftp/2001/2001_11/xander.zip", abstract = "System outage isn't just a hardware problem. The design and implementation of software must be robust and hardy enough to survive failures of all kinds. Additional resources include {\tt xander.txt} (listings) and {\tt xander.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Shudo:2001:AME, author = "Kazuyuki Shudo and Yoichi Muraoka", title = "Asynchronous migration of execution context in {Java Virtual Machines}", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "2", pages = "225--233", month = oct, year = "2001", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Wed Feb 27 12:41:22 MST 2002", bibsource = "http://www.elsevier.com/locate/issn/0167739X; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.elsevier.com/gej-ng/10/19/19/60/31/30/abstract.html", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @InProceedings{Shuf:2001:CMB, author = "Yefim Shuf and Mauricio J. Serrano and Manish Gupta and Jaswinder Pal Singh", title = "Characterizing the memory behavior of {Java} workloads: a structured view and opportunities for optimizations", crossref = "ACM:2001:SPJ", pages = "194--205", year = "2001", DOI = "https://doi.org/10.1145/378420.378783", bibdate = "Tue Oct 24 10:22:12 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper studies the memory behavior of important Java workloads used in benchmarking Java Virtual Machines (JVMs), based on instrumentation of both application and library code in a state-of-the-art JVM, and provides structured information about these workloads to help guide systems' design. We begin by characterizing the inherent memory behavior of the benchmarks, such as information on the breakup of heap accesses among different categories and on the hotness of references to fields and methods. We then provide detailed information about misses in the data TLB and caches, including the distribution of misses over different kinds of accesses and over different methods. In the process, we make interesting discoveries about TLB behavior and limitations of data prefetching schemes discussed in the literature in dealing with pointer-intensive Java codes. Throughout this paper, we develop a set of recommendations to computer architects and compiler writers on how to optimize computer systems and system software to run Java programs more efficiently. This paper also makes the first attempt to compare the characteristics of SPECjvm98 to those of a server-oriented benchmark, pBOB, and explain why the current set of SPECjvm98 benchmarks may not be adequate for a comprehensive and objective evaluation of JVMs and just-in-time (JIT) compilers.We discover that the fraction of accesses to array elements is quite significant, demonstrate that the number of ``hot spots'' in the benchmarks is small, and show that field reordering cannot yield significant performance gains. We also show that even a fairly large L2 data cache is not effective for many Java benchmarks. We observe that instructions used to prefetch data into the L2 data cache are often squashed because of high TLB miss rates and because the TLB does not usually have the translation information needed to prefetch the data into the L2 data cache. We also find that co-allocation of frequently used method tables can reduce the number of TLB misses and lower the cost of accessing type information block entries in virtual method calls and runtime type checking.", acknowledgement = ack-nhfb, } @InProceedings{Siebert:2001:DEJ, author = "Fridtjof Siebert and Andy Walter", title = "Deterministic Execution of {Java}'s Primitive Bytecode Operations", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/siebert.html", acknowledgement = ack-nhfb, } @Article{Sips:2001:JSC, author = "H. J. Sips and K. van Reeuwijk", title = "Java for Scientific Computation: Prospects and Problems", journal = j-LECT-NOTES-COMP-SCI, volume = "2179", pages = "236--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:22 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2179.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2179/21790236.htm; http://link.springer-ny.com/link/service/series/0558/papers/2179/21790236.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Smiley:2001:LPJ, author = "John Smiley", title = "Learn to program with {Java}", publisher = pub-OSBORNE, address = pub-OSBORNE:adr, pages = "xii + 608", year = "2001", ISBN = "0-07-213189-6", ISBN-13 = "978-0-07-213189-5", LCCN = "QA76.73.J38 S598 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Smith:2001:JQH, author = "Terry Smith", title = "{Java Q\&A}: How Can {I} Simplify {Java} Data Access Objects", journal = j-DDJ, volume = "26", number = "5", pages = "135--136, 138--139", month = may, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Apr 12 06:45:08 MDT 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_05/jqa0501.txt; http://www.ddj.com/ftp/2001/2001_05/jqa0501.zip", abstract = "While writing data access objects (DAO) from scratch in Java can be a daunting task, Terry presents some short cuts that turn the pain to gain. Additional resources include jqa0501.txt (listings) and jqa0501.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InProceedings{Smith:2001:PJG, author = "L. A. Smith and J. M. Bull and J. Obdrz{\'a}lek", title = "A Parallel {Java Grande} Benchmark Suite", crossref = "ACM:2001:SHP", pages = "??--??", year = "2001", bibdate = "Sat Feb 10 14:28:55 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc2001.org/papers/pap.pap158.pdf", acknowledgement = ack-nhfb, pagecount = "10", } @InProceedings{Sohda:2001:IPS, author = "Yukihiko Sohda and Hidemoto Nakada and Hirotaka Ogawa and Satoshi Matsuoka", title = "Implementation of Portable Software {DSM} in {Java}", crossref = "ACM:2001:PAJ", pages = "163--172", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/23.html; http://www.philippsen.com/JGI2001/finalpapers/18500163.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Sooriamurthi:2001:PJE, author = "Raja Sooriamurthi", title = "Prelude to the {Java} event model (poster session)", journal = j-SIGCSE, volume = "33", number = "3", pages = "193--193", month = sep, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/507758.377714", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:50 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Stanchfield:2001:EVJ, author = "Scott Stanchfield and Isabelle Mauny", title = "Effective {VisualAge} for {Java}, version 3: includes coverage of versions 3.02 and 3.5", publisher = pub-WILEY-COMPUTER, address = pub-WILEY-COMPUTER:adr, pages = "xxi + 936", year = "2001", ISBN = "0-471-31730-6 (paperback)", ISBN-13 = "978-0-471-31730-2 (paperback)", LCCN = "QA76.73.J38 S76 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); VisualAge", } @InProceedings{Stankovski:2001:AIJ, author = "Zarko Stankovski", title = "{ARLEQUIN}: An Integrated {Java} Application", crossref = "ACM:2001:PAJ", pages = "183--183", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/47.html; http://www.philippsen.com/JGI2001/finalpapers/18500183.dvi", acknowledgement = ack-nhfb, keywords = "Java", } @Book{Stark:2001:JJV, author = "Robert F. St{\"a}rk and Joachim Schmid and Egon B{\"o}rger", title = "{Java} and the {Java Virtual Machine}: definition, verification, validation", publisher = pub-SV, address = pub-SV:adr, pages = "x + 381", year = "2001", ISBN = "3-540-42088-6", ISBN-13 = "978-3-540-42088-0", LCCN = "QA76.73.J38 S785 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/java2010.bib; https://www.math.utah.edu/pub/tex/bib/mathcw.bib", note = "Includes CD-ROM with the entire text of the book and numerous examples and exercises.", price = "US\$49.95", acknowledgement = ack-nhfb, keywords = "Java (computer program language); virtual computer systems", } @InProceedings{Steele:2001:NMN, author = "Guy Steele", title = "New Models for Numerical Computing in the {Java} Programming Language", crossref = "ACM:2001:PAJ", pages = "??--??", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Stoller:2001:TMC, author = "Scott D. Stoller and Yanhong A. Liu", title = "Transformations for Model Checking Distributed {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2057", pages = "192--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:13 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2057.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2057/20570192.htm; http://link.springer-ny.com/link/service/series/0558/papers/2057/20570192.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Story:TB22-3-161, author = "Donald P. Story", title = "{Techniques of introducing document-level JavaScript into a \acro{PDF} file from a {\LaTeX} source}", journal = j-TUGboat, volume = "22", number = "3", pages = "161--167", month = sep, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; https://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Story:TB22-4-265, author = "D. P. Story", title = "{{\tt execJS}: A new technique for introducing discardable JavaScript into a \acro{PDF} file from a {\LaTeX} source}", journal = j-TUGboat, volume = "22", number = "4", pages = "265--268", month = dec, year = "2001", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; https://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Strohmeier:2001:SSC, author = "Alfred Strohmeier and Stanislav Chachkov", title = "A side-by-side comparison of exception handling in {Ada} and {Java}", journal = j-SIGADA-LETTERS, volume = "21", number = "3", pages = "41--56", month = sep, year = "2001", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:11 MDT 2003", bibsource = "http://portal.acm.org/; http://www.acm.org/sigada/ada_letters/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Strunk:2001:JQJ, author = "Elisabeth Strunk", title = "{Java Q\&A}: {Java} \& {NT} Authentication", journal = j-DDJ, volume = "26", number = "2", pages = "145--146, 148", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/jqa0201.txt", abstract = "Elisabeth builds a JNI wrapper that lets the Java Authentication and Authorization Service and Windows NT authenticate specific users. Additional resources include jqa0201.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Studer:2001:CFF, author = "Thomas Studer", title = "Constructive Foundations for Featherweight {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2183", pages = "202--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:26 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2183.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2183/21830202.htm; http://link.springer-ny.com/link/service/series/0558/papers/2183/21830202.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Stuer:2001:PSA, author = "Gunther Stuer and Jan Broeckhove and Frans Arickx", title = "Performance and Stability Analysis of a Message Oriented Reliable Multicast for Distributed Virtual Environments in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2073", pages = "423--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2073.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2073/20730423.htm; http://link.springer-ny.com/link/service/series/0558/papers/2073/20730423.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Suganuma:2001:DOF, author = "Toshio Suganuma and Toshiaki Yasue and Motohiro Kawahito and Hideaki Komatsu and Toshio Nakatani", title = "A dynamic optimization framework for a {Java} just-in-time compiler", journal = j-SIGPLAN, volume = "36", number = "11", pages = "180--195", month = nov, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 9 14:44:52 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Proceedings of the 2001 ACM SIGPLAN Conference on Object Oriented Programming, Systems, Languages and Applications (OOPSLA'01).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Sung:2001:DSL, author = "K.-Y. Sung", title = "Design of a Specification Language and Real-Time {APIs} for Easy Expression of Soft Real-Time Constraints with {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2093", pages = "530--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:52 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2093.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2093/20930530.htm; http://link.springer-ny.com/link/service/series/0558/papers/2093/20930530.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Suri:2001:SCR, author = "Niranjan Suri", title = "State Capture and Resource Control for {Java}: The Design and Implementation of the {Aroma Virtual Machine}", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/JVM_wips/S15.pdf", acknowledgement = ack-nhfb, } @Article{Swaine:2001:PPA, author = "Michael Swaine", title = "Programming Paradigms: Alternatives to {Java}", journal = j-DDJ, volume = "26", number = "2", pages = "135--137", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "So Java isn't your cup of tea? Michael explores the alternatives.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", keywords = "C\#; Component Pascal; Internet C++; Juice; Lisp; Perl", } @Book{Swan:2001:JJC, author = "Tom Swan", title = "{Java 2} just click! solutions", publisher = pub-HUNGRY-MINDS, address = pub-HUNGRY-MINDS:adr, pages = "xix + 672", year = "2001", ISBN = "0-7645-4823-9", ISBN-13 = "978-0-7645-4823-9", LCCN = "QA76.73.J38 S92 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Accompanying CD-ROM contains source code to over 150 sample Java 2 programs, Microsoft Internet Explorer, Netscape Communicator for Windows and Linux and the author's hyperlinked indexes", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Systa:2001:SER, author = "Tarja Syst{\"a} and Kai Koskimies and Hausi M{\"u}ller", title = "Shimba --- an environment for reverse engineering {Java} software systems", journal = j-SPE, volume = "31", number = "4", pages = "371--394", day = "10", month = apr, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.386", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 13 06:25:28 MST 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/77004439/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=77004439&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Tamassia:2001:JDS, author = "Roberto Tamassia and Michael T. Goodrich and Luca Vismara and Mark Handy and Galina Shubina and Robert Cohen and Beno{\^\i}t Hudson and Ryan S. Baker and Natasha Gelfand and Ulrik Brandes", title = "{JDSL}: The Data Structures Library in {Java}", journal = j-DDJ, volume = "26", number = "4", pages = "21--22, 24, 26, 28, 30--31", month = apr, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 17:39:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_04/jdsl.txt", abstract = "The Data Structures Library in Java (JDSL) is a collection of Java interfaces and classes implementing fundamental data structures and algorithms. Additional resources include jdsl.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Tanter:2001:RTO, author = "{\'E}ric Tanter and Noury M. N. Bouraqadi-Sa{\^a}dani and Jacques Noy{\'e}", title = "{Reflex} --- Towards an Open Reflective Extension of {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2192", pages = "25--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:36 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2192.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2192/21920025.htm; http://link.springer-ny.com/link/service/series/0558/papers/2192/21920025.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Tatsubori:2001:BTD, author = "Michiaki Tatsubori and Toshiyuki Sasaki and Shigeru Chiba and Kozo Itano", title = "A Bytecode Translator for Distributed Execution of ``Legacy'' {Java} Software", journal = j-LECT-NOTES-COMP-SCI, volume = "2072", pages = "236--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:27 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2072.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2072/20720236.htm; http://link.springer-ny.com/link/service/series/0558/papers/2072/20720236.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{TenEyck:2001:JBM, author = "James TenEyck and G. Sampath", title = "A {Java}-Based Model of Resource Sharing among Independent Users on the {Internet}", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "124--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100124.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100124.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Teodorescu:2001:UJC, author = "Radu Teodorescu and Raju Pandey", title = "Using {JIT} Compilation and Configurable Runtime Systems for Efficient Deployment of {Java} Programs on Ubiquitous Devices", journal = j-LECT-NOTES-COMP-SCI, volume = "2201", pages = "76--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:46 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2201.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2201/22010076.htm; http://link.springer-ny.com/link/service/series/0558/papers/2201/22010076.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Todd:2001:LSS, author = "Andrew W. Todd and Jonathan Erickson and Nadine McKenzie and Chris Cleeland and Richard Huang and Ragae Ghaly and {The Editors}", title = "Letters: Shared Source and Shared Secrets; {JavaScript} Fix; {CORBA} Interoperability; {EJB} Application Servers Update; Correction [{``The Delphi XML SAX2 Component and MSXML 3.0''}]", journal = j-DDJ, volume = "26", number = "10", pages = "10, 12", month = oct, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See \cite{Heijl:2001:DXS}.", URL = "http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Ton:2001:EJB, author = "Lee-Ren Ton and Lung-Chung Chang and Chung-Ping Chung", title = "Exploiting {Java} Bytecode Parallelism by Enhanced {POC} Folding Model (Research Note)", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "994--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19000994.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19000994.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Torres:2001:DSD, author = "Mario A. Torres", title = "Developing Scalable Distributed Applications: a generic model implemented in {Java}", journal = j-DDJ, volume = "26", number = "9", pages = "21--22, 24--25", month = sep, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:39 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_09/scalable.txt", abstract = "Mario presents a generic model designed to serve as a blueprint for development of scalable distributed computing applications. Additional resources include {\tt scalable.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Tremblett:2001:IEJ, author = "Paul Tremblett", title = "Instant {Enterprise JavaBeans}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xxi + 550", year = "2001", ISBN = "0-07-212943-3", ISBN-13 = "978-0-07-212943-4", LCCN = "QA76.73.J38 T74 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaBeans", } @Article{Turner:2001:JTV, author = "Joseph A. Turner and Joseph L. Zachary", title = "{Javiva}: a tool for visualizing and validating student-written {Java} programs", journal = j-SIGCSE, volume = "33", number = "1", pages = "45--49", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364535", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The ability to think abstractly about the components of a computer program is critical for computer science students. A student who has not yet developed this ability tends to view a program as an unstructured collection of statements and expressions. Introductory computer science textbooks promote the use of pre-conditions, post-conditions, and abstraction functions as techniques for fostering abstract thinking. Existing programming languages and tools, however, do not generally support these techniques. Consequently, we have built and are beginning to experiment with Javiva. Javiva extracts pre-conditions, post-conditions, and abstraction functions---included as stylized comments in Java source files---and uses them to create instrumented class files. When these instrumented class files are run, they automatically diagnose and report violations by methods of pre- and post-conditions. These classes also exploit abstraction functions to automatically produce abstract visualizations of their objects.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Tyagi:2001:MSM, author = "Satyam Tyagi and Paul Tarau", title = "A Most Specific Method Finding Algorithm for Reflection Based Dynamic {Prolog-to-Java} Interfaces", journal = j-LECT-NOTES-COMP-SCI, volume = "1990", pages = "322--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:09 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1990.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1990/19900322.htm; http://link.springer-ny.com/link/service/series/0558/papers/1990/19900322.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Vakali:2001:JBM, author = "A. I. Vakali and E. D. Terzi", title = "A {Java}-Based Model for {I/O} Scheduling in Tertiary Storage Subsystems", journal = j-INT-J-COMPUT-APPL, volume = "23", number = "1", pages = "45--50", year = "2001", DOI = "https://doi.org/10.1080/1206212X.2001.11441633", ISSN = "1206-212X (print), 1925-7074 (electronic)", ISSN-L = "1206-212X", bibdate = "Sat Apr 21 17:19:36 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ijca.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "https://www.tandfonline.com/doi/full/10.1080/1206212X.2001.11441633", acknowledgement = ack-nhfb, fjournal = "International Journal of Computers and Applications", journal-URL = "https://www.tandfonline.com/loi/tjca20", online-date = "10 Jul 2015", } @Article{vandenBerg:2001:FSV, author = "Joachim van den Berg and Bart Jacobs and Erik Poll", title = "Formal Specification and Verification of {JavaCard}'s Application Identifier Class", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "137--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410137.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410137.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{vandenBerg:2001:LCJ, author = "Joachim van den Berg and Bart Jacobs", title = "The {LOOP} Compiler for {Java} and {JML}", journal = j-LECT-NOTES-COMP-SCI, volume = "2031", pages = "299--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:48 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2031.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2031/20310299.htm; http://link.springer-ny.com/link/service/series/0558/papers/2031/20310299.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{VanderHeyden:2001:CJC, author = "William VanderHeyden and Edward Dendy and Nely Padial-Collins", title = "{CartaBlanca} --- {A} {Java}-Component-based Systems Simulation Tool for Coupled Non-linear Physics on Unstructured Grids", crossref = "ACM:2001:PAJ", pages = "134--142", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/3.html; http://www.philippsen.com/JGI2001/finalpapers/18500134.pdf", acknowledgement = ack-nhfb, keywords = "Java", } @Article{vanNieuwpoort:2001:SEP, author = "Rob V. van Nieuwpoort and Thilo Kielmann and Henri E. Bal", title = "{Satin}: Efficient Parallel Divide-and-Conquer in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "690--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19000690.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19000690.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{vanReeuwijk:2001:SEJ, author = "Cees van Reeuwijk and Frits Kuijlman and Henk J. Sips", title = "{Spar}: an extension of {Java} for scientific computation", crossref = "ACM:2001:PAJ", pages = "58--67", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/11.html; http://www.philippsen.com/JGI2001/finalpapers/18500058.dvi", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Veldema:2001:OJS, author = "Ronald S. Veldema and Thilo Kielmann and Henri E. Bal", title = "Optimizing {Java}-Specific Overheads: {Java} at the Speed of {C}?", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "685--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100685.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100685.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Veldema:2001:ROJ, author = "Ronald Veldema and Rutger Hofman and Raoul Bhoedjang and Henri Bal", title = "Runtime Optimizations for a {Java DSM} Implementation", crossref = "ACM:2001:PAJ", pages = "153--162", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/41.html; http://www.philippsen.com/JGI2001/finalpapers/18500153.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Veldhuizen:2001:JWY, author = "Todd L. Veldhuizen", title = "Just When You Thought Your Little Language Was Safe: ``Expression Templates'' in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2177", pages = "188--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:06:21 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2177.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2177/21770188.htm; http://link.springer-ny.com/link/service/series/0558/papers/2177/21770188.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Vijaykrishnan:2001:EBJ, author = "N. Vijaykrishnan and M. Kandemir and S. Kim and S. Tomar and A. Sivasubramaniam and M. J. Irwin", title = "Energy Behavior of {Java} Applications from the Memory Perspective", crossref = "USENIX:2001:PJV", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 17:45:19 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/jvm01/vijaykrishnan.html", acknowledgement = ack-nhfb, } @Article{Villazon:2001:PRR, author = "Alex Villaz{\'o}n and Walter Binder", title = "Portable Resource Reification in {Java}-Based Mobile Agent Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2240", pages = "213--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:25 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2240.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2240/22400213.htm; http://link.springer-ny.com/link/service/series/0558/papers/2240/22400213.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Vincent:2001:AIB, author = "Regis Vincent and Bryan Horling and Victor Lesser", title = "An Agent Infrastructure to Build and Evaluate Multi-agent Systems: The {Java} Agent Framework and Multi-agent System Simulator", journal = j-LECT-NOTES-COMP-SCI, volume = "1887", pages = "102--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:41 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1887.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1887/18870102.htm; http://link.springer-ny.com/link/service/series/0558/papers/1887/18870102.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Vitek:2001:CTJ, author = "Jan Vitek and Boris Bokowski", title = "Confined types in {Java}", journal = j-SPE, volume = "31", number = "6", pages = "507--532", month = may, year = "2001", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.369", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Jul 14 12:28:45 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/78003101/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=78003101&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{vonLaszewski:2001:GBA, author = "Gregor von Laszewski and Kazuyuki Shudo and Yoichi Muraoka", title = "Grid-Based Asynchronous Migration of Execution Context in {Java} Virtual Machines", journal = j-LECT-NOTES-COMP-SCI, volume = "1900", pages = "22--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:02:44 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t1900.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/1900/19000022.htm; http://link.springer-ny.com/link/service/series/0558/papers/1900/19000022.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{vonLaszewski:2001:JCG, author = "Gregor von Laszewski and Ian Foster and Jarek Gawor and Peter Lane", title = "A {Java} commodity grid kit", journal = j-CCPE, volume = "13", number = "8--9", pages = "645--662", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.572", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503216/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503216&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{vonOheimb:2001:HLJ, author = "David von Oheimb", title = "{Hoare} logic for {Java} in {Isabelle\slash HOL}", journal = j-CCPE, volume = "13", number = "13", pages = "1173--1214", month = nov, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.598", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Feb 25 14:51:24 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/88011338/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=88011338&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Vormoor:2001:QEI, author = "Oliver Vormoor", title = "Quick and Easy Interactive Molecular Dynamics Using {Java3D}", journal = j-COMPUT-SCI-ENG, volume = "3", number = "5", pages = "98--104", month = sep # "\slash " # oct, year = "2001", CODEN = "CSENFA", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat Feb 23 06:37:33 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://computer.org/cise/cs2001/c5098abs.htm; http://dlib.computer.org/cs/books/cs2001/pdf/c5098.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Book{Waldo:2001:JS, author = "Jim Waldo and Ken Arnold", title = "The {Jini} specifications", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxvii + 645", year = "2001", ISBN = "0-201-72617-3", ISBN-13 = "978-0-201-72617-6", LCCN = "QA76.9.D5 J56 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Rev. ed of: The Jini specification / Ken Arnold \ldots{} [et al]. c1999", series = "Jini technology series", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Jini", } @Article{Waldron:2001:IQH, author = "John Waldron and David Gregg", title = "Identification and Quantification of Hotspots in {Java Grande} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "701--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100701.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100701.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Walsh:2001:CW, author = "Aaron E. Walsh and Mikael Bourges-Sevenier", title = "Core {Web $3$D}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "l + 1088 + 16", year = "2001", ISBN = "0-13-085728-9", ISBN-13 = "978-0-13-085728-6", LCCN = "T385 .W364 2001", bibdate = "Fri Apr 13 15:35:32 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.phptr.com/ptrbooks/ptr_0130857289.html; http://www.virtuworlds.com/3DeZine_01/features/art_coreweb3d.html", acknowledgement = ack-nhfb, } @Article{Wang:2001:FDW, author = "Shaofeng Wang and Jiaguang Sun", title = "A Framework Design for Workflow Management System with {Java RMI}", journal = j-SIGPLAN, volume = "36", number = "9", pages = "86--93", month = sep, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Nov 24 07:54:10 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Wang:2001:PCB, author = "Tiejun Wang and Scott F. Smith", title = "Precise Constraint-Based Type Inference for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2072", pages = "99--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:04:27 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2072.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2072/20720099.htm; http://link.springer-ny.com/link/service/series/0558/papers/2072/20720099.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Watt:2001:JCI, author = "David A. (David Anthony) Watt and Deryck F. Brown", title = "{Java} collections: an introduction to abstract data types, data structures, and algorithms", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "549", year = "2001", ISBN = "0-471-89978-X (paperback)", ISBN-13 = "978-0-471-89978-5 (paperback)", LCCN = "QA76.73.J38 W384 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "abstract data types (computer science); computer algorithms; computer science textbooks; data structures (computer science); Java (computer program language)", } @InProceedings{Weerawarana:2001:BML, author = "Sanjiva Weerawarana and Francisco Curbera and Matthew J. Duftler and David A. Epstein and Joseph Kesselman", title = "{Bean Markup Language}: a Composition Language for {JavaBeans} Components", crossref = "USENIX:2001:PUC", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 18:09:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/weerawarana.html", acknowledgement = ack-nhfb, } @Article{Weis:2001:SYH, author = "R{\"u}diger Weis and Bastiaan Bakker and Stefan Lucks", title = "Security on Your Hand: Secure Filesystems with a ``Non-Cryptographic'' {JAVA}-Ring", journal = j-LECT-NOTES-COMP-SCI, volume = "2041", pages = "151--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:03:58 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2041/20410151.htm; http://link.springer-ny.com/link/service/series/0558/papers/2041/20410151.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Weisser:2001:PCL, author = "M. Weisser", title = "Programming for Corpus Linguistics: How to Do Text Analysis with {Java}", journal = j-LIT-LING-COMP, volume = "16", number = "4", pages = "498--500", month = dec, year = "2001", CODEN = "LLCOEI", ISSN = "0268-1145", ISSN-L = "0268-1145", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Literary and Linguistic Computing", pagecount = "3", } @InProceedings{Welch:2001:KUB, author = "Ian Welch and Robert J. Stroud", title = "{Kava} --- Using Byte Code Rewriting to Add Behavioural Reflection to {Java}", crossref = "USENIX:2001:PUC", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 18:09:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/welch.html", acknowledgement = ack-nhfb, } @Article{Welch:2001:SVD, author = "P. H. Welch and G. H. Hilderink and A. W. P. Bakkers and G. S. Stiles", title = "Safe and Verifiable Design of Concurrent {Java} Programs", journal = j-INT-J-COMPUT-APPL, volume = "23", number = "3", pages = "159--165", year = "2001", DOI = "https://doi.org/10.1080/1206212X.2001.11441647", ISSN = "1206-212X (print), 1925-7074 (electronic)", ISSN-L = "1206-212X", bibdate = "Sat Apr 21 17:19:58 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ijca.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "https://www.tandfonline.com/doi/full/10.1080/1206212X.2001.11441647", acknowledgement = ack-nhfb, fjournal = "International Journal of Computers and Applications", journal-URL = "https://www.tandfonline.com/loi/tjca20", online-date = "10 Jul 2015", } @Article{Whitlock:2001:FPE, author = "David Whitlock and Antony L. Hosking", title = "A Framework for Persistence-Enabled Optimization of {Java} Object Stores", journal = j-LECT-NOTES-COMP-SCI, volume = "2135", pages = "4--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:37 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2135.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2135/21350004.htm; http://link.springer-ny.com/link/service/series/0558/papers/2135/21350004.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Williams:2001:JWT, author = "Al Williams", title = "{Java} and the {Waba} Toolkit", journal = j-DDJ, volume = "26", number = "2", pages = "92, 94, 96, 98", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_02/jwaba.txt", abstract = "With Java and the Waba toolkit, you can develop powerful applications for handhelds like the PalmPilot or Windows CE-based systems. Additional resources include jwaba.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2001:PBT, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: Time Warps", journal = j-DDJ, volume = "26", number = "2", pages = "159--160", month = feb, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:41 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "Greg looks at a bunch of books, including Programming Ruby, Program Development in Java, The Interpretation of Object-Oriented Programming Languages, MMIXware: A RISC Computer for the Third Millennium, Essential XML, XML Processing with Python, Presenting C\#, and Women in Computer Sciences: Closing the Gap in Higher Education.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wincelberg:2001:JQH, author = "David Wincelberg", title = "{Java Q\&A}: How Do You Use the {{\tt javax.crypto}} Package?", journal = j-DDJ, volume = "26", number = "4", pages = "139--140", month = apr, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 13 15:22:36 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_04/jqa0401.txt; http://www.ddj.com/ftp/2001/2001_04/jqa0401.zip", abstract = "How do you use the javax.crypto package? David shows you, as he adds security to Java-based e-commerce systems by encrypting/decrypting users' credit-card numbers. Additional resources include jqa0401.txt (listings) and jqa0401.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Winston:2001:J, author = "Patrick Henry Winston and Sundar Narasimhan", title = "On to {Java 2}", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xi + 451", year = "2001", ISBN = "0-201-72593-2 (paperback)", ISBN-13 = "978-0-201-72593-3 (paperback)", LCCN = "QA76.73.J38 W56 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Wirthlin:2001:SRH, author = "Michael J. Wirthlin and Brad L. Hutchings and Carl Worth", title = "Synthesizing {RTL} Hardware from {Java} Byte Codes", journal = j-LECT-NOTES-COMP-SCI, volume = "2147", pages = "123--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:49 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2147.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2147/21470123.htm; http://link.springer-ny.com/link/service/series/0558/papers/2147/21470123.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Wissink:2001:PSA, author = "Andrew Wissink and Richard Hornung and Scott Kohn and Steve Smith", title = "Parallel Structured Adaptive Mesh Refinement Applications Using the {SAMRAI} Library", crossref = "ACM:2001:PAJ", pages = "184--184", year = "2001", bibdate = "Mon May 06 09:31:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.philippsen.com/JGI2001/camerareadyabstracts/57.html; http://www.philippsen.com/JGI2001/finalpapers/18500184.ps", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Wolf:2001:ACH, author = "Armin Wolf", title = "Adaptive Constraint Handling with {CHR} in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2239", pages = "256--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:07:24 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2239.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2239/22390256.htm; http://link.springer-ny.com/link/service/series/0558/papers/2239/22390256.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Wolz:2001:TDP, author = "Ursula Wolz", title = "Teaching design and project management with {Lego RCX} robots", journal = j-SIGCSE, volume = "33", number = "1", pages = "95--99", month = mar, year = "2001", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/366413.364551", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In traditional CS 1 classes students may not develop an appreciation for the planning process in software development. Current IDEs provide such immediate feedback that students can complete courses without an appreciation for the need to plan in advance and design thoughtfully. The course unit described here took time out from a Java-based CS 1 course to give students practical experience in programming a small robot in a highly restricted setting. Outcomes are described in detail. They are based on instructor's notes, and on analysis of both videotaped student demonstrations and student summative essays.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Wootton:2001:JPR, author = "Cliff Wootton", title = "{JavaScript} programmer's reference", publisher = pub-WROX, address = pub-WROX:adr, pages = "xix + 973", year = "2001", ISBN = "1-86100-459-1 (paperback)", ISBN-13 = "978-1-86100-459-8 (paperback)", LCCN = "QA76.76.J39 W66 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Available also in CD-ROM format", series = "Programmer to programmer", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Wraxall:2001:JQH, author = "Jason Wraxall", title = "{Java Q\&A}: How Can {I} Extend the {Swing JComboBox}?", journal = j-DDJ, volume = "26", number = "1", pages = "181--182, 184, 186", month = jan, year = "2001", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Feb 15 12:14:40 MST 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2001/2001_01/jqa0101.txt; http://www.ddj.com/ftp/2001/2001_01/jqa0101.zip", abstract = "The lightweight controls which come with Sun's JFC Swing framework provide a rich set of interfaces for extending the way they look or behave. Jason extends the JComboBox control using Listener interfaces and a custom data model to make it a little smarter and less prone to error. Additional resources include jqa0101.txt (listings) and jqa0101.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Wu:2001:IOO, author = "C. Thomas Wu", title = "An introduction to object-oriented programming with {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, edition = "Second", pages = "xxviii + 863", year = "2001", ISBN = "0-07-239684-9 (softcover)", ISBN-13 = "978-0-07-239684-3 (softcover)", LCCN = "QA76.64. W78 2000", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Xu:2001:DAR, author = "Baowen Xu and Zhenqiang Chen", title = "Dependence Analysis for Recursive {Java} Programs", journal = j-SIGPLAN, volume = "36", number = "12", pages = "70--76", month = dec, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:33 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Yahav:2001:VSP, author = "Eran Yahav", title = "Verifying safety properties of concurrent {Java} programs using $3$-valued logic", journal = j-SIGPLAN, volume = "36", number = "3", pages = "27--40", month = mar, year = "2001", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:23 MST 2003", bibsource = "http://portal.acm.org/; http://www.acm.org/pubs/contents/proceedings/series/popl/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.acm.org/pubs/articles/proceedings/plan/360204/p27-yahav/p27-yahav.pdf; http://www.acm.org/pubs/citations/proceedings/plan/360204/p27-yahav/", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ye:2001:WBP, author = "R. Ye and W.-J. Hsu and Z.-H. Liu", title = "{Web}-Based Parallel Simulation of {AGVs} Using {Java} and {JINI}", journal = j-LECT-NOTES-COMP-SCI, volume = "2127", pages = "379--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:28 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2127.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2127/21270379.htm; http://link.springer-ny.com/link/service/series/0558/papers/2127/21270379.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Yero:2001:JOO, author = "Eduardo J. H. Yero and Marco A. A. Henriques and Javier R. Garc{\"\i}a and Alina C. Leyva", title = "{JOINT}: An Object Oriented Message Passing Interface for Parallel Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2110", pages = "637--??", year = "2001", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Feb 2 13:05:11 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2110.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2110/21100637.htm; http://link.springer-ny.com/link/service/series/0558/papers/2110/21100637.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Zhang:2001:HJAa, author = "Xiaolan Zhang and Margo Seltzer", title = "{HBench:JGC} --- An Application-Specific Benchmark Suite for Evaluating {JVM} Garbage Collector Performance", crossref = "USENIX:2001:PUC", pages = "??--??", year = "2001", bibdate = "Tue Oct 15 18:09:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/zhang.html", acknowledgement = ack-nhfb, } @Article{Zhang:2001:HJAb, author = "Xiaolan Zhang and Margo Seltzer", title = "{HBench:Java}: an application-specific benchmarking framework for {Java Virtual Machines}", journal = j-CCPE, volume = "13", number = "8--9", pages = "775--792", month = jul # "\slash " # aug, year = "2001", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.578", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Wed Jul 25 10:55:47 MDT 2001", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/84503219/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=84503219&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Book{Zukowski:2001:JC, author = "John Zukowski", title = "{Java} collections", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "x + 422", year = "2001", ISBN = "1-893115-92-5", ISBN-13 = "978-1-893115-92-7", LCCN = "QA76.73.J38 Z84 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Abraham-Mumm:2002:VJR, author = "Erika {\'A}brah{\'a}m-Mumm and Frank S. de Boer and Willem-Paul de Roever and Martin Steffen", title = "Verification for {Java}'s Reentrant Multithreading Concept", journal = j-LECT-NOTES-COMP-SCI, volume = "2303", pages = "5--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:21 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2303.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2303/23030005.htm; http://link.springer-ny.com/link/service/series/0558/papers/2303/23030005.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Ahmed:2002:DEJ, author = "Khawar Zaman Ahmed and Cary E. Umrysh", title = "Developing enterprise {Java} applications with {J2EE} and {UML}", publisher = pub-AW, address = pub-AW:adr, pages = "xxiv + 330", year = "2002", ISBN = "0-201-73829-5", ISBN-13 = "978-0-201-73829-2", LCCN = "QA76.73.J38 A35 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "business -- data processing; Java (computer program language)", } @Article{Aires-de-Sousa:2002:JJT, author = "J. Aires-de-Sousa", title = "{JATOON}: {Java} tools for neural networks", journal = j-CHEMO-INTELL-LAB, volume = "61", number = "1", pages = "167--173", day = "28", month = feb, year = "2002", CODEN = "CILSEN", ISSN = "0169-7439", ISSN-L = "0169-7439", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Chemometrics and Intelligent Laboratory Systems", pagecount = "7", } @Article{Akiyama:2002:MEP, author = "S. Akiyama", title = "A modeling of evolution processes on the {Java Class Library} and it's statistical verification", journal = "Report of Researches --- Nippon Institute of Technology", volume = "32", number = "2", publisher = "Nippon Institute of Technology", pages = "145--148", year = "2002", CODEN = "????", ISSN = "0389-2514", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Al-Jaroodi:2002:OPD, author = "Jameela Al-Jaroodi and Nader Mohamed and Hong Jiang and David R. Swanson", title = "An Overview of Parallel and Distributed {Java} for Heterogeneous Systems: Approaches and Open Issues", journal = j-PARALLEL-DIST-COMP-PRACT, volume = "5", number = "4", pages = "??--??", month = dec, year = "2002", CODEN = "????", ISSN = "1097-2803", bibdate = "Thu Sep 2 12:08:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/5/4.toc", acknowledgement = ack-nhfb, fjournal = "PDCP: Parallel and Distributed Computing Practices", } @Article{Aldrich:2002:ARA, author = "Jonathan Aldrich and Craig Chambers and David Notkin", title = "Architectural Reasoning in {ArchJava}", journal = j-LECT-NOTES-COMP-SCI, volume = "2374", pages = "334--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:57 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2374.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2374/23740334.htm; http://link.springer-ny.com/link/service/series/0558/papers/2374/23740334.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Allen:2002:DLP, author = "Eric Allen and Robert Cartwright and Brian Stoler", title = "{DrJava}: a lightweight pedagogic environment for {Java}", journal = j-SIGCSE, volume = "34", number = "1", pages = "137--141", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563395", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "DrJava is a pedagogic programming environment for Java that enables students to focus on designing programs, rather than learning how to use the environment. The environment provides a simple interface based on a ``read-eval-print loop'' that enables a programmer to develop, test, and debug Java programs in an interactive, incremental fashion. This paper gives an overview of DrJava including its pedagogic rationale, functionality, and implementation.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Alouf:2002:FVC, author = "Sara Alouf and Fabrice Huet and Philippe Nain", title = "Forwarders vs. centralized server: an evaluation of two approaches for locating mobile agents", journal = j-SIGMETRICS, volume = "30", number = "1", pages = "278--279", month = jun, year = "2002", CODEN = "????", DOI = "https://doi.org/10.1145/511334.511379", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:38:22 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Internet has allowed the creation of huge amounts of data located on many sites. Performing complex operations on some data requires that the data be transferred first to the machine on which the operations are to be executed, which may require a non-negligible amount of bandwidth and may seriously limit performance if it is the bottleneck. However, instead of moving the data to the code, it is possible to move the code to the data, and perform all the operations locally. This simple idea has led to a new paradigm called {\em code-mobility:\/} a mobile object --- sometimes called an agent --- is given a list of destinations and a series of operations to perform on each one of them. The agent will visit all of the destinations, perform the requested operations and possibly pass the result on to another object. Any mobility mechanism must first provide a way to migrate code from one host to another. It must also ensure that any communication following a migration will not be impaired by it, namely that two objects should still be able to communicate even if one of them has migrated. Such a mechanism is referred to as a {\em location\/} mechanism since it often relies on the knowledge of the location of the objects to ensure communications. Two location mechanisms are widely used: the first one uses a centralized server whereas the second one relies on special objects called {\em forwarders.\/} This paper evaluates and compares the performance of an existing implementation of these approaches in terms of cost of communication in presence of migration. Based on a Markov chain analysis, we will construct and solve two mathematical models, one for each mechanism and will use them to evaluate the cost of location. For the purpose of validation, we have developed for each mechanism a benchmark that uses {\em ProActive\/} [2], a Java library that provides all the necessary primitives for code mobility. Experiments conducted on a LAN and on a MAN have validated both models and have shown that the location server always performs better than the forwarders. Using our analytical models we will nevertheless identify situations where the opposite conclusion holds. However, under most operational conditions location servers will perform better than forwarders.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Article{Alt:2002:ADP, author = "M. Alt and H. Bischof and S. Gorlatch", title = "Algorithm Design and Performance Prediction in a {Java}-Based {Grid} System with Skeletons", journal = j-LECT-NOTES-COMP-SCI, volume = "2400", pages = "899--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:14 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2400.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2400/24000899.htm; http://link.springer-ny.com/link/service/series/0558/papers/2400/24000899.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alvarez:2002:AJT, author = "A. Alvarez and Y. Amghar", title = "Applying {JAVA-Triggers} for {X-Link} Management in the Industrial Framework", journal = j-SIM-SERIES, volume = "34", number = "1", pages = "131--136", year = "2002", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Tue Apr 29 05:13:30 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Article{Amsterdam:2002:JNC, author = "Jonathan Amsterdam", title = "{Java}'s {{\tt new}} Considered Harmful", journal = j-DDJ, volume = "27", number = "4", pages = "19--20, 22, 24, 26", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "Even though Java's new keyword is central to the language, there may be better ways of getting the job done.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Ancona:2002:FFJ, author = "Davide Ancona and Giovanni Lagorio and Elena Zucca", title = "A Formal Framework for {Java} Separate Compilation", journal = j-LECT-NOTES-COMP-SCI, volume = "2374", pages = "609--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:57 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2374.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2374/23740609.htm; http://link.springer-ny.com/link/service/series/0558/papers/2374/23740609.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Andersen:2002:DSJ, author = "Sandra Andersen", title = "Data structures in {Java}: a laboratory course", publisher = pub-JONES-BARTLETT, address = pub-JONES-BARTLETT:adr, pages = "407", year = "2002", ISBN = "0-7637-1816-5", ISBN-13 = "978-0-7637-1816-9", LCCN = "QA76.73.J38 A46 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer science textbooks; data structures (computer science); Java (computer program language)", } @Book{Anderson-Freed:2002:WWP, author = "Susan Anderson-Freed", title = "Weaving a {Website}: programming in {HTML}, {JavaScript}, {Perl} and {Java}", publisher = pub-PH, address = pub-PH:adr, pages = "712", year = "2002", ISBN = "0-13-028220-0", ISBN-13 = "978-0-13-028220-0", LCCN = "QA76.625 .A64 2002", bibdate = "Wed May 8 07:40:44 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "BUY-A-BOOK gift of Michael E. Hayden thanks to Professor Frank Deremer", acknowledgement = ack-nhfb, keywords = "Internet programming; Web sites -- development", } @Book{Anderson:2002:EJC, author = "Gail Anderson and Paul Anderson", title = "{Enterprise JavaBeans} Component Architecture: Designing and Coding Enterprise Applications", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xix + 435", year = "2002", ISBN = "0-13-035571-2", ISBN-13 = "978-0-13-035571-3", LCCN = "QA76.73.J38 A47 2002", bibdate = "Mon Apr 29 16:52:18 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$59.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130355712.html; http://www.sun.com/books/catalog/anderson/", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:CCG, author = "Anonymous", title = "{CICS Commarea} generation for {VisualAge} for {Java} server interface", journal = "Research Disclosure", volume = "462", publisher = "Kenneth Mason Publications", pages = "1958--1959", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:CDG, author = "Anonymous", title = "{CPU\slash DSP} Gains {Java} Accelerator", journal = j-ELECTRONIC-DESIGN, volume = "50", number = "23", pages = "30--31", year = "2002", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Anonymous:2002:CRJ, author = "Anonymous", title = "Conference Report: {{\em 2nd Java Virtual Machine Research and Technology Symposium}}", journal = j-LOGIN, volume = "27", number = "5", pages = "??--??", month = oct, year = "2002", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:52:12 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2002-10/index.html", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/JavaVM2002.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Anonymous:2002:GLN, author = "Anonymous", title = "{Gemplus} launches new {Java} productivity tools", journal = "Card Technology Today", volume = "14", number = "5", pages = "5--6", day = "1", month = may, year = "2002", CODEN = "????", ISSN = "0965-2590", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "2", } @Article{Anonymous:2002:IAJ, author = "Anonymous", title = "Introducing aspects to {Java} programs without a custom {JVM} or application source modification", journal = "Research Disclosure", volume = "462", publisher = "Kenneth Mason Publications", pages = "1907--??", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:IJM, author = "Anonymous", title = "{iPro}: The {Java Message Service} ({JMS}) offers reliable messaging without requiring realtime connections", journal = j-PC-MAGAZINE, volume = "21", number = "21", pages = "80--84", year = "2002", CODEN = "PCMGEP", ISSN = "0888-8507", ISSN-L = "0888-8507", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "PC Magazine", } @TechReport{Anonymous:2002:JGI, author = "Anonymous", title = "{JMFA} --- {A} graphically interactive {Java} program that fits microfibril angle {X}-ray diffraction data", type = "Research note", number = "FPL-RN-0283.", institution = "United States Forest Service", address = "????", year = "2002", LCCN = "A 13.79:FPL-RN-0283 Gov Pubs Microform", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Shipping List number 2002-0228-M. Shipping List Date: 04/05/2002.", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:LAJ, author = "Anonymous", title = "Learn About {Java} Server-Side Development and Programming: a review of {Server-Based Java Programming}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "3", number = "2", year = "2002", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0202/departments/bks_b.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Anonymous:2002:MES, author = "Anonymous", title = "A method for eliminating sign extensions for array bounds checking of {Java} on 64-bit architectures that have no 32-bit compare instruction", journal = "Research Disclosure", volume = "462", publisher = "Kenneth Mason Publications", pages = "1954--??", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:NMD, author = "Anonymous", title = "Naming and metadata design for querying {Enterprise Java Beans} considering different inheritance hierarchy on remote interface and bean interface", journal = "Research Disclosure", volume = "462", publisher = "Kenneth Mason Publications", pages = "1919--??", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:PAU, author = "Anonymous", title = "Products: {Atinav} Upgrades {Bluetooth} Software Suite; New {$3$D} Terrain Modeler from {MultiGen-Paradigm}; {RIM} Introduces {BlackBerry} Development Environment for {J2ME}; {Mercury Interactive} Adds {Forte for Java} to Load-Testing System; {WildPackets}' Real-Time Wireless Analyzer; {Novell} Updates Mobile File Management Software; {Layton Graphics} Unveils {AutoCAD-to-PDF} Translator; {Iomegas} Network Attached Storage Servers", journal = j-COMPUTER, volume = "35", number = "5", pages = "100--101", month = may, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Tue Apr 30 19:04:58 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2002/pdf/r5100.pdf; http://www.computer.org/computer/co2002/r5100abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PEB, author = "Anonymous", title = "Products: Enhanced {Bluetooth} Test Tool from {Tektronix}; {NEXIQ Technologies}'s Intelligent Display Software; {Actel}'s {FGPA} Development {IDE}; {Parasoft}'s Automated {Java} Classes Testing Unit; {Packeteer} Upgrades Central Reporting Application; {VisiComp} Releases {Java} Debugger; {Compuware}'s Driver Development Suite for {Windows}; {Silas Technologies} Upgrades Application-Monitoring Software", journal = j-COMPUTER, volume = "35", number = "9", pages = "82--83", month = sep, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:33 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/09/r9082.htm; http://csdl.computer.org/dl/mags/co/2002/09/r9082.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PIR, author = "Anonymous", title = "Products: {Instantiations} Releases {RAD} Tools for {Java}; {Pencel} Updates {XML} Mobile Application Interface; {LynuxWorks}'s New {Linux} Distribution; {Applied Microsystems}' Embedded Systems Code Tester; {AppForge} Upgrades Cross-Platform Design Tool for Handhelds; {Computer Associates}' {Java}, {XML}, and Wireless Extensions; {TurboPower};s Bug Detection and Performance Analysis Tools", journal = j-COMPUTER, volume = "35", number = "2", pages = "106--108", month = feb, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Feb 8 07:11:47 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2002/pdf/r2106.pdf; http://www.computer.org/computer/co2002/r2106abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:POU, author = "Anonymous", title = "Products: Omnicore Upgrades {Java IDE CodeGuide} {emWare}'s {SDE} for Intelligent Device Management; {Metrowerks}' {CodeWarrior} for {Embedded Linux}; Integrated Software Environment form {Xilinx}; New Version of {InstallShield Professional}; {Motorola}'s 32-Bit {CAN} Reference Design; {Utopia-LVDS} Bridge Reference Design Kit from {National Semiconductor}; {First Silicon Solutions}' Analysis Tool for Flash-Based {FPGAs}", journal = j-COMPUTER, volume = "35", number = "11", pages = "78--79", month = nov, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/11/ry078.htm; http://csdl.computer.org/dl/mags/co/2002/11/ry078.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PPJ, author = "Anonymous", title = "Products: {PrismTech}'s {JDO} Spec for Transparent Persistence; {Altia}'s Graphics Code Generator for Embedded Applications; {Design Science} Upgrades {MathType} for Windows; {PolarLake} Launches {Enterprise XML} Platform for {Java}; {Syware}'s Database Development Software for {PDAs}; Code Generator for {Web} Application Development from {YesSoftware}; {Embarcadero Technologies} Upgrades Cross-Platform Job Scheduler; {Performance Technologies} Introduces Telecom Adapter; {Rational Software}'s Latest {IDE} Enhancement; {Aprisa}'s Online Research and Design Environment", journal = j-COMPUTER, volume = "35", number = "3", pages = "97--99", month = mar, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Sat Mar 9 08:40:40 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/co/books/co2002/pdf/r3097.pdf; http://www.computer.org/computer/co2002/r3097abs.htm", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PPU, author = "Anonymous", title = "Performance Push: An updated version of {webMethods}' integration software supports {Java 2 Enterprise Edition}, which could improve system performance", journal = j-INFORMATION-WEEK, volume = "914", pages = "30--31", year = "2002", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2002:PRS, author = "Anonymous", title = "Products: {Rational Software}'s {.NET} Development Software; {SGI}'s Development {APIs} for Visualization; {Java} Development Tool from {Visual Numerics}; {SUSSMicroTec}'s {MEMS} Testing Vacuum Prober; {FaceTime}'s {IM} Information Security System; {MX} Development Resource Kit from {Macromedia}; {.NET} Data Integration Tool from {XAWare}; {VoiceGenie}'s {VoiceXML} Gateway", journal = j-COMPUTER, volume = "35", number = "10", pages = "70--??", month = oct, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/10/rx070.htm; http://csdl.computer.org/dl/mags/co/2002/10/rx070.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PSS, author = "Anonymous", title = "Products: {SOISIC} Ships Deisgn Kit for {SOI} Structures; Systems and Software Development Tools from {Telelogic}; {RSA Security}'s {Web} Access Management System; {Altera}'s Free Embedded Processor Portfolio; Signal Integrity Measurement Tools from Tektronix; {Oracle} Upgrades {Java} Development Tool; {Xilinx} Delivers {EDK} for {FPGA} Processor; {Westbridge}'s Tool to Sniff Unauthorized {XML}; {SpeechStudio}'s Telephony Development Tools", journal = j-COMPUTER, volume = "35", number = "12", pages = "118--119", month = dec, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/12/rz118.htm; http://csdl.computer.org/dl/mags/co/2002/12/rz118.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:PXO, author = "Anonymous", title = "Products: {XML}-Oriented {FrameMaker} from {Adobe Systems}; {Breeze Factor}'s {XML} Data-Binding Tool for {Java}; {Microsoft}'s Speech-Enabling Tools for {Web} Applications; {Agere Systems}'s Wireless {LAN} Management Tool; {Macromedia} Debuts {ColdFusion MX}; {OpenOffice.org} Unveils Open Source Productivity Suite; {Integrated Measurement Systems}' Validation Tester", journal = j-COMPUTER, volume = "35", number = "6", pages = "82--83", month = jun, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/06/r6082.htm; http://csdl.computer.org/dl/mags/co/2002/06/r6082.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2002:RCJ, author = "Anonymous", title = "Resource constraints in {Java} by means of a classfile modification", journal = "Research Disclosure", volume = "463", publisher = "Kenneth Mason Publications", pages = "2105", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2002:SAC, author = "Anonymous", title = "{SchlumbergerSema} adds on-card applet verification to {Java Cards}", journal = "Card Technology Today", volume = "14", number = "5", pages = "6--7", day = "1", month = may, year = "2002", CODEN = "????", ISSN = "0965-2590", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "2", } @Article{Anonymous:2002:VJU, author = "Anonymous", title = "{VisualAge} for {Java UI} application components for securities and investment trust industry", journal = "Research Disclosure", volume = "463", publisher = "Kenneth Mason Publications", pages = "2236--2237", year = "2002", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Appel:2002:MCI, author = "Andrew W. Appel and Jens Palsberg", title = "Modern compiler implementation in {Java}", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, edition = "Second", pages = "501", year = "2002", ISBN = "0-521-82060-X", ISBN-13 = "978-0-521-82060-8", LCCN = "QA76.73.J38 A65 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "compilers (computer programs); Java (computer program language)", } @Article{Apte:2002:ETM, author = "N. Apte and I. Zeid", title = "Evolution of transparent manufacturing: An architecture for a {Java}-based controller of a {CIM} cell", journal = "Journal of Intelligent Manufacturing", volume = "13", number = "2", pages = "89--100", month = apr, year = "2002", CODEN = "????", ISSN = "0956-5515", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "12", } @Book{Apte:2002:JCA, author = "Atul Apte", title = "{Java} connector architecture: building custom connectors and adapters", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xi + 344", year = "2002", ISBN = "0-672-32310-9", ISBN-13 = "978-0-672-32310-2", LCCN = "QA76.73.J38 A67 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; business -- data processing; Java (computer program language)", } @Book{Apte:2002:WSJ, author = "Naresh Apte and Toral Mehta", title = "{Web} Services: a {Java} Developer's Guide Using {E-Speak}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "540 (est.)", year = "2002", ISBN = "0-13-062338-5", ISBN-13 = "978-0-13-062338-6", LCCN = "QA76.73.J38 A68 2001", bibdate = "Mon Apr 29 16:55:34 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130623385.html", acknowledgement = ack-nhfb, xxtitle = "{E}-speak: a {Java} developer's guide to {E}-services and {Web} services", } @Article{Arnold:2002:OFD, author = "Matthew Arnold and Michael Hind and Barbara G. Ryder", title = "Online Feedback-Directed Optimization of {Java}", journal = j-SIGPLAN, volume = "37", number = "11", pages = "111--129", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bacon:2002:STE, author = "David F. Bacon and Stephen J. Fink and David Grove", title = "Space- and Time-Efficient Implementation of the {Java} Object Model", journal = j-LECT-NOTES-COMP-SCI, volume = "2374", pages = "111--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:57 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2374.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2374/23740111.htm; http://link.springer-ny.com/link/service/series/0558/papers/2374/23740111.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Baek:2002:IMM, author = "J. M. Baek and B. M. Kang and I. S. Hong", title = "Implementation of Mileage Management System using {Java Card}", journal = j-SIM-SERIES, volume = "34", number = "2", pages = "3--8", year = "2002", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Tue Apr 29 05:13:30 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Article{Bagga:2002:JJB, author = "Jay Bagga and Adrian Heinz", title = "{JGraph} --- {A} {Java} Based System for Drawing Graphs and Running Graph Algorithms", journal = j-LECT-NOTES-COMP-SCI, volume = "2265", pages = "459--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:04 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2265.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2265/22650459.htm; http://link.springer-ny.com/link/service/series/0558/papers/2265/22650459.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Bagnall:2002:CLM, author = "Brian Bagnall", title = "Core {LEGO Mindstorms} Programming: Unleash the Power of The {Java} Platform", publisher = pub-PHPTR, address = pub-PHPTR:adr, year = "2002", ISBN = "0-13-009364-5", ISBN-13 = "978-0-13-009364-6", LCCN = "TJ211 .B32 2002", bibdate = "Mon Apr 29 16:54:02 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130093645.html", acknowledgement = ack-nhfb, } @Article{Baiardi:2002:JSD, author = "F. Baiardi and P. Mori and L. Ricci", title = "A {JAVA} Support for Distributed Shared Memory on {COW}", journal = "Applied Informatics", volume = "3", pages = "191--195", year = "2002", CODEN = "????", ISSN = "1027-2666", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Baker:2002:MMD, author = "Jason Baker and Wilson C. Hsieh", title = "Maya: multiple-dispatch syntax extension in {Java}", journal = j-SIGPLAN, volume = "37", number = "5", pages = "270--281", month = may, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:02 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Bales:2002:JPO, author = "Donald Bales", title = "{Java} Programming with {Oracle JDBC}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xv + 477", year = "2002", ISBN = "0-596-00088-X", ISBN-13 = "978-0-596-00088-2", LCCN = "QA76.73.J38 B35 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$39.95", URL = "http://safari.oreilly.com/059600088X; http://www.oreilly.com/catalog/jorajdbc", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Oracle (computer file)", publishersummary = "Learn how to leverage JDBC, a key Java technology used to access relational data from Java programs, in an Oracle environment. Author Donald Bales begins by teaching you the mysteries of establishing database connections, and how to issue SQL queries and get results back. You'll move on to advanced topics such as streaming large objects, calling PL/SQL procedures, and working with Oracle9i's object-oriented features, then finish with a look at transactions, concurrency management, and performance.", } @InProceedings{Barbuti:2002:FJB, author = "R. Barbuti and C. Bernardeschi and N. {De Francesco} and L. Tesei", editor = "Genoveffa Tortora and S. K. (Shi Kuo) Chang", booktitle = "{Proceedings of the 14th international conference on Software engineering and knowledge engineering: 2002, Ischia, Italy, July 15--19, 2002}", title = "Fixing the {Java} Bytecode Verifier by a Suitable Type Domain", publisher = pub-ACM, address = pub-ACM:adr, bookpages = "859", pages = "377--382", year = "2002", ISBN = "1-58113-556-4", ISBN-13 = "978-1-58113-556-5", LCCN = "QA76.758 .I573 2002", bibdate = "Thu Dec 01 07:18:48 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://portal.acm.org/toc.cfm?id=568760", acknowledgement = ack-nhfb, } @Book{Barish:2002:BSH, author = "Greg Barish", title = "Building scalable and high-performance {Java Web} applications using {J2EE} technology", publisher = pub-AW, address = pub-AW:adr, pages = "xviii + 392", year = "2002", ISBN = "0-201-72956-3", ISBN-13 = "978-0-201-72956-6", LCCN = "QA76.73.J38 B36 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Web sites -- design", } @Article{Barnes:2002:TIJ, author = "David J. Barnes", title = "Teaching introductory {Java} through {LEGO MINDSTORMS} models", journal = j-SIGCSE, volume = "34", number = "1", pages = "147--151", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563397", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Innovative teachers are continually looking for creative ideas, both to get their ideas across and to hold the interest of their students. One of the latest trends is the use of LEGO\reg{} MINDSTORMSTM kits [9] in various computing courses. These kits allow a wide variety of physical models to be built, some of which may be programmed via the RCXTM processor integrated into them. Using its standard firmware, the RCX device may be programmed through several different specialist languages. However, the additional availability of bytecode-compatible replacement firmware for the RCX makes the use of JavaTM as the programming language for it a particularly attractive approach. In this paper, we explore some of the issues associated with choosing to program MINDSTORMS models using Java within the context of an introductory programming course. In particular, we consider the impact on the material that is taught, and the use of an appropriate API to support an objects-early programming style.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Barthe:2002:FCB, author = "Gilles Barthe and Guillaume Dufay and Line Jakubiec and Sim{\~a}o Melo de Sousa", title = "A Formal Correspondence between Offensive and Defensive {JavaCard} Virtual Machines", journal = j-LECT-NOTES-COMP-SCI, volume = "2294", pages = "32--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:17 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2294.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2294/22940032.htm; http://link.springer-ny.com/link/service/series/0558/papers/2294/22940032.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Barthe:2002:TAS, author = "Gilles Barthe and Pierre Courtieu and Guillaume Dufay and Sim{\~a}o Melo de Sousa", title = "Tool-Assisted Specification and Verification of the {JavaCard} Platform", journal = j-LECT-NOTES-COMP-SCI, volume = "2422", pages = "41--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:23 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2422.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2422/24220041.htm; http://link.springer-ny.com/link/service/series/0558/papers/2422/24220041.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Basha:2002:ANG, author = "S. Jeelani Basha and Romin Irani", title = "{AXIS}: the next generation of {Java SOAP}", publisher = pub-WROX, address = pub-WROX:adr, pages = "v + 275", year = "2002", ISBN = "1-86100-715-9", ISBN-13 = "978-1-86100-715-5", LCCN = "QA76.76.H94 B37 2002 Bar", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Internet programming; Java (computer program language); object-oriented programming (computer science); simple object access protocol (computer network protocol)", } @Book{Bell:2002:JS, author = "Doug Bell and Mike Parr", title = "{Java} for students", publisher = pub-PH, address = pub-PH:adr, edition = "Third", pages = "xxvi + 634", year = "2002", ISBN = "0-13-032377-2 (paperback)", ISBN-13 = "978-0-13-032377-4 (paperback)", LCCN = "QA76.73.J38 B45 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Bell:2002:VBN, author = "Douglas Bell", title = "Visual basic. Net as a first language: an evaluation", journal = j-SIGCSE, volume = "34", number = "4", pages = "107--108", month = dec, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/820127.820178", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:58 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse34.html#Bell02; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2002.bib", abstract = "This paper assesses the utility of the Microsoft Visual Basic. Net programming language for teaching programming at a first level. The paper shows some comparisons with Java.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bellavista:2002:JLD, author = "Paolo Bellavista and Antonio Corradi and Cesare Stefanelli", title = "{Java} for On-line Distributed Monitoring of Heterogeneous Systems and Services", journal = j-COMP-J, volume = "45", number = "6", pages = "595--607", month = "????", year = "2002", CODEN = "CMPJA6", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Wed Nov 6 11:21:54 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/", URL = "http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/450595.sgm.abs.html; http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/pdf/450595.pdf", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Book{Bergsten:2002:JP, author = "Hans Bergsten", title = "{JavaServer} Pages", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxii + 660", year = "2002", ISBN = "0-596-00317-X", ISBN-13 = "978-0-596-00317-3", LCCN = "TK5105.8885.J38 B47 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$44.95", URL = "http://safari.oreilly.com/059600317X; http://www.oreilly.com/catalog/jserverpages2", acknowledgement = ack-nhfb, annote = "Covers JSP 1.2 and JSTL 1.0.", keywords = "JavaServer pages; Web site development; Web sites -- design", publishersummary = "Filled with useful examples and the depth, clarity, and attention to detail that made the first edition so popular with Web developers, JavaServer Pages, 2nd Edition is completely revised and updated to cover the substantial changes in the 1.2 version of the JSP specifications, and includes coverage of the new JSTL Tag libraries-an eagerly anticipated standard set of JSP elements for the tasks needed in most JSP applications, as well as thorough coverage of Custom Tag Libraries.", } @Article{Bergstra:2002:MOP, author = "J. Bergstra", title = "Molecule-oriented programming in {Java}", journal = j-INFO-SOFTWARE-TECH, volume = "44", number = "11", pages = "617--638", day = "15", month = aug, year = "2002", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", pagecount = "22", } @Article{Bernardeschi:2002:CAI, author = "Cinzia Bernardeschi and Nicoletta {De Francesco}", title = "Combining Abstract Interpretation and Model Checking for Analysing Security Properties of {Java} Bytecode", journal = j-LECT-NOTES-COMP-SCI, volume = "2294", pages = "1--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:17 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2294.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2294/22940001.htm; http://link.springer-ny.com/link/service/series/0558/papers/2294/22940001.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bettini:2002:KJP, author = "L. Bettini and R. DeNicola and R. Pugliese", title = "{KLAVA}: a {Java} package for distributed and mobile applications", journal = j-SPE, volume = "32", number = "14", pages = "1365--1394", year = "2002", CODEN = "SPEXBL", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Betz:2002:BMN, author = "David Betz", title = "{Bob} Meets {Nuon}", journal = j-DDJ, volume = "27", number = "2", pages = "60, 62--64", month = feb, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_02/bob.zip; http://www.ddj.com/ftp/2002/2002_02/bobnuon.txt", abstract = "Bob is a dynamic object-oriented language with syntax similar to C/C++, Java, and JavaScript --- and it is used in NUON, a hardware/software platform for DVD players and set-top boxes. Additional resources include {\tt bobnuon.txt} (listings) and {\tt bob.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Biegel:2002:DPB, author = "Gregory Biegel and Vinny Cahill and Mads Haahr", title = "A Dynamic Proxy Based Architecture to Support Distributed {Java} Objects in a Mobile Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2519", pages = "809--826", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2519.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://link.springer.de/link/service/series/0558/bibs/2519/25190809.htm; http://link.springer.de/link/service/series/0558/papers/2519/25190809.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Biermann:2002:GIC, author = "Alan W. Biermann and Dietolf Ramm", title = "Great ideas in computer science with {Java}", publisher = pub-MIT, address = pub-MIT:adr, pages = "xx + 528", year = "2002", ISBN = "0-262-02497-7 (paperback)", ISBN-13 = "978-0-262-02497-6 (paperback)", LCCN = "QA76.73.J38 B52 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Binder:2002:USJ, author = "Walter Binder and Bal{\'a}zs Lichtl", title = "Using a Secure {Java} Micro-kernel on Embedded Devices for the Reliable Execution of Dynamically Uploaded Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2361", pages = "125--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:50 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2361.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2361/23610125.htm; http://link.springer-ny.com/link/service/series/0558/papers/2361/23610125.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boian:2002:ACT, author = "Florian Mircea Boian and Corina Ferdean", title = "Advanced Collaboration Techniques between {Java} Objects Distributed on Clusters", journal = j-LECT-NOTES-COMP-SCI, volume = "2326", pages = "259--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:32 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2326.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2326/23260259.htm; http://link.springer-ny.com/link/service/series/0558/papers/2326/23260259.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bouchi:2002:JTM, author = "A. Bouchi and R. Olejnik and Bernard Toursel", title = "{Java} Tools for Measurement of the Machine Loads", journal = j-LECT-NOTES-COMP-SCI, volume = "2326", pages = "271--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:32 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2326.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2326/23260271.htm; http://link.springer-ny.com/link/service/series/0558/papers/2326/23260271.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boyapati:2002:KAT, author = "Chandrasekhar Boyapati and Sarfraz Khurshid and Darko Marinov", title = "{Korat}: automated testing based on {Java} predicates", journal = j-SIGSOFT, volume = "27", number = "4", pages = "123--133", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566191", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents Korat, a novel framework for automated testing of Java programs. Given a formal specification for a method, Korat uses the method precondition to automatically generate all (nonisomorphic) test cases up to a given small size. Korat then executes the method on each test case, and uses the method postcondition as a test oracle to check the correctness of each output. To generate test cases for a method, Korat constructs a Java predicate (i.e., a method that returns a boolean) from the method's pre-condition. The heart of Korat is a technique for automatic test case generation: given a predicate and a bound on the size of its inputs, Korat generates all (nonisomorphic) inputs for which the predicate returns true. Korat exhaustively explores the bounded input space of the predicate but does so efficiently by monitoring the predicate's executions and pruning large portions of the search space. This paper illustrates the use of Korat for testing several data structures, including some from the Java Collections Framework. The experimental results show that it is feasible to generate test cases from Java predicates, even when the search space for inputs is very large. This paper also compares Korat with a testing framework based on declarative specifications. Contrary to our initial expectation, the experiments show that Korat generates test cases much faster than the declarative framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brady:2002:JPB, author = "Alyce Brady and R. C. McDowell and Kelly Schultz", title = "{JavaScript} programming basics: a laboratory series for beginning programmers", journal = j-JERIC, volume = "2", number = "2", pages = "1--1", month = jun, year = "2002", CODEN = "????", ISSN = "1531-4278", bibdate = "Tue Feb 3 18:43:37 MST 2004", bibsource = "http://www.acm.org/pubs/contents/journals/jeric/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Journal on Educational Resources in Computing (JERIC)", } @Article{Bretz:2002:NPP, author = "E. A. Bretz", title = "New phones play games and run {Java} applications", journal = j-IEEE-SPECTRUM, volume = "39", number = "2", pages = "62--63", month = feb, year = "2002", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2002.981863", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Application software; Cellular phones; Games; Java; Keyboards; Packaging; Personal digital assistants; Physics computing; Silver; Telephony", } @Article{Breunesse:2002:SVD, author = "Cees-Bart Breunesse and Bart Jacobs and Joachim van den Berg", title = "Specifying and Verifying a Decimal Representation in {Java} for Smart Cards", journal = j-LECT-NOTES-COMP-SCI, volume = "2422", pages = "304--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:23 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2422.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2422/24220304.htm; http://link.springer-ny.com/link/service/series/0558/papers/2422/24220304.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brinkmann:2002:GGG, author = "Peter Brinkmann", title = "{Gumbie}: a {GUI} Generator For {Jython}", journal = j-DDJ, volume = "27", number = "4", pages = "46--50", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/gumbie.txt; http://www.ddj.com/ftp/2002/2002_04/gumbie.zip", abstract = "Jython is a 100 percent pure Java implementation of Python that makes Java scriptable. Peter uses it to build his Gumbie GUI tool. Additional resources include gumbie.txt (listings) and gumbie.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Brooks:2002:BRB, author = "Terrence A. Brooks", title = "Book Review: {{\booktitle{Designing with Javascript: Creating dynamic Web pages}}}", journal = j-J-AM-SOC-INF-SCI-TECHNOL, volume = "53", number = "11", pages = "967--968", month = "????", year = "2002", CODEN = "JASIEF", DOI = "https://doi.org/10.1002/asi.10127", ISSN = "1532-2882 (print), 1532-2890 (electronic)", ISSN-L = "1532-2882", bibdate = "Fri Sep 11 10:42:00 MDT 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/jasist.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Journal of the American Society for Information Science and Technology: JASIST", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1532-2890", onlinedate = "6 Jun 2002", } @Article{Brosgol:2002:ATC, author = "Benjamin M. Brosgol and Ricardo J. {Hassan, II} and Scott Robbins", title = "Asynchronous transfer of control in the real-time specification for {Java}{\TM}", journal = j-SIGADA-LETTERS, volume = "22", number = "4", pages = "95--112", month = dec, year = "2002", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Brosgol:2002:SSU, author = "Ben Brosgol and Michael Gonz{\'a}lez Harbour", title = "Session summary: update on the real-time specification for {Java}", journal = j-SIGADA-LETTERS, volume = "22", number = "4", pages = "128--130", month = dec, year = "2002", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Aug 9 09:06:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Book{Brown:2002:WAW, author = "Kyle Brown", title = "{WebSphere 4.0 AEs} Workbook for {Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "186 (est.)", year = "2002", ISBN = "0-596-00418-4", ISBN-13 = "978-0-596-00418-7", LCCN = "????", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$24.95", URL = "http://www.oreilly.com/catalog/websphereworkbook", acknowledgement = ack-nhfb, publishersummary = "Although EJB applications themselves are portable, the manner in which developers install and run EJB products varies widely from one vendor to the next. The goal of this WebSphere AE workbook is to discuss vendor specific requirements and best practices and introduce tools such as the WebSphere Application Assembly Tool, and the WebSphere Administration Console, all in the context of building and running the example programs for O'Reilly's Enterprise JavaBeans, 3rd edition. The Workbook guides developers step-by-step, explaining how to build and deploy working solutions in a particular application server, and provides useful hints, tips and warnings.\par This WebSphere 4.0 AEs Workbook was originally published by Enterprise JavaBeans author Richard Monson-Haefel's Titan Books publishing company. O'Reilly thought so highly of it, we acquired the rights to publish it ourselves, in order to give more developers access to this critical information.", } @Article{Bruno:2002:JQ, author = "Eric J. Bruno", title = "{Java Q\&A}: So What is a {Java} Event Agent?", journal = j-DDJ, volume = "27", number = "7", pages = "86--91", month = jul, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Fri Sep 13 06:15:52 MDT 2002", bibsource = "http://www.ddj.com/articles/2002/0207/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_07/jqa0702.txt; http://www.ddj.com/ftp/2002/2002_07/jqa0702.zip", abstract = "Additional resources include jqa0702.txt (listings) and jqa0702.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Bubak:2002:MSD, author = "M. Bubak and W. Funika and P. Metel and R. Or{\l}owski and R. Wism{\"u}ller", title = "Monitoring System for Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2330", pages = "874--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:35 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2330.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2330/23300874.htm; http://link.springer-ny.com/link/service/series/0558/papers/2330/23300874.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bubak:2002:TMI, author = "Marian Bubak and W{\l}odzimierz Funika and Piotr M{\c{e}}tel and Rafa{\l} Or{\l}owski and Roland Wism{\"u}ller", title = "Towards a Monitoring Interface Specification for Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2328", pages = "315--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:33 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2328.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2328/23280315.htm; http://link.springer-ny.com/link/service/series/0558/papers/2328/23280315.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Burchfield:2002:UAA, author = "J. Burchfield and S. Lipovaca", title = "Using an {APL} approach with {Java}", journal = j-APL-QUOTE-QUAD, volume = "32", number = "4", pages = "61--68", year = "2002", CODEN = "APLQD9", ISSN = "0163-6006", ISSN-L = "0163-6006", bibdate = "Tue Dec 24 07:09:37 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "APL Quote Quad", } @Article{Burkhalter:2002:JTE, author = "B. Burkhalter", title = "The {JAI Top 10 Engineers} answer questions about {Java Advanced Imaging}", journal = j-ADV-IMAGING, volume = "17", number = "10", publisher = "PTN Publishing Co.", pages = "32--39", year = "2002", CODEN = "ADIMEZ", ISSN = "1042-0711", ISSN-L = "1042-0711", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Advanced Imaging", } @Article{Burrows:2002:JGE, author = "Anthony L. Burrows and David England", title = "{Java $3$D}, {$3$D} graphical environments and behaviour", journal = j-SPE, volume = "32", number = "4", pages = "359--376", day = "10", month = apr, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.441", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Mar 23 17:30:52 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/91016434/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=91016434&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Busko:2002:SJTa, author = "I. Busko", title = "{Specview}: a {Java} Tool for Spectral Visualization and Model Fitting", journal = "Astronomical Society of the Pacific Conference Series", volume = "281", number = "??", pages = "120--124", year = "2002", CODEN = "????", ISSN = "1050-3390", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Busko:2002:SJTb, author = "I. Busko", title = "{Specview}: a {Java} tool for spectral visualization and model fitting of multi-instrument data [4847-51]", journal = j-PROC-SPIE, volume = "4847", publisher = "International Society for Optical Engineering", pages = "410--418", year = "2002", CODEN = "PSISDG", ISSN = "0277-786X (print), 1996-756X (electronic)", ISSN-L = "0277-786X", bibdate = "Tue Feb 18 07:16:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the SPIE --- The International Society for Optical Engineering", } @Article{Butincu:2002:DDA, author = "Cristian Bu{\c{t}}incu and Dan Grigoras", title = "{DisMedJava} --- {A} Distributed Application for Medical Image Processing", journal = j-LECT-NOTES-COMP-SCI, volume = "2326", pages = "308--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:32 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2326.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2326/23260308.htm; http://link.springer-ny.com/link/service/series/0558/papers/2326/23260308.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Cade:2002:SCE, author = "Mark Cade and Simon Roberts", title = "{Sun Certified Enterprise Architect} for {J2EE} Technology Study Guide", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "220 (est.)", year = "2002", ISBN = "0-13-044916-4", ISBN-13 = "978-0-13-044916-0", LCCN = "????", bibdate = "Mon Apr 29 16:56:51 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130449164.html", acknowledgement = ack-nhfb, } @PhdThesis{Callaway:2002:VTR, author = "John Callaway", title = "Visualization of threads in a running {Java} program", type = "Thesis ({M.S.})", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2002", LCCN = "QA76.73.J38 C36 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "academic dissertations -- University of California, Santa Cruz -- 2002; academic dissertations -- University of California, Santa Cruz -- computer; computer science; computer software -- development; Java (computer program language); object-oriented programming (computer science); science; software engineering; visualization", } @Article{Casset:2002:DEV, author = "Ludovic Casset", title = "Development of an Embedded Verifier for {Java} Card Byte Code Using Formal Methods", journal = j-LECT-NOTES-COMP-SCI, volume = "2391", pages = "290--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:10 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2391.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2391/23910290.htm; http://link.springer-ny.com/link/service/series/0558/papers/2391/23910290.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Catano:2002:FSS, author = "N{\'e}stor Cata{\~n}o and Marieke Huisman", title = "Formal Specification and Static Checking of {Gemplus}' Electronic Purse Using {ESC\slash Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2391", pages = "272--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:10 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2391.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2391/23910272.htm; http://link.springer-ny.com/link/service/series/0558/papers/2391/23910272.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Cavalieri:2002:ERT, author = "S. Cavalieri", title = "Exploring Real-Time Features of {Java VM}", journal = "IECON Proceedings", volume = "3", number = "??", pages = "2538--2543", year = "2002", CODEN = "????", ISSN = "????", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Cavaness:2002:PJS, author = "Chuck Cavaness", title = "Programming {Jakarta Struts}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 441", year = "2002", ISBN = "0-596-00328-5", ISBN-13 = "978-0-596-00328-9", LCCN = "QA76.76.A65 C39 2003", bibdate = "Sat Jul 17 07:29:58 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$39.95", URL = "http://www.oreilly.com/catalog/jakarta", acknowledgement = ack-nhfb, publishersummary = "As popular as the Struts Framework for building Web applications with Servlets and JSPs is becoming, the online documentation is inadequate, focusing on the most basic functionality and leaving out information crucial to developers writing today's complex Web applications. O'Reilly's Programming Jakarta Struts was written by Chuck Cavaness after his internet company decided to adopt the framework, then spent months really figuring out how to use it to its fullest potential. He calls the books, ``the culmination of lessons learned (the hard way) while building our application.''\par Readers will benefit from the real-world, ``this is how to do it'' approach Cavaness takes to developing complex enterprise applications using Struts, and his focus on the 1.1 version of the Framework makes this the most up-to-date book available.", } @Book{Cerami:2002:WSE, author = "Ethan Cerami", title = "{Web} Services Essentials: Distributed Applications with {XML-RPC}, {SOAP}, {UDDI} \& {WSDL}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 288", year = "2002", ISBN = "0-596-00224-6", ISBN-13 = "978-0-596-00224-4", LCCN = "TK5105.888 .C47 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$29.95", URL = "http://safari.oreilly.com/0596002246; http://www.oreilly.com/catalog/webservess", acknowledgement = ack-nhfb, keywords = "Java (computer programming language); Web servers -- computer programs; Web site development; XML (document markup language)", publishersummary = "This concise book gives programmers both a concrete introduction and handy reference to XML Web services. It explains the foundations of this new breed of distributed services, demonstrates quick ways to create services with open-source Java tools, and explores four key emerging technologies: XML-RPC, SOAP, UDDI, and WSDL. If you want to break through the Web Services hype and find useful information on these evolving technologies, look no further.", } @Article{Cha:2002:IXB, author = "Si-Ho Cha and Jae-Oh Lee and Young-Keun Choi and Kook-Hyun Cho", title = "Implementing an {XML}-Based Universal Network Management System in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2343", pages = "652--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:12 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2343.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2343/23430652.htm; http://link.springer.de/link/service/series/0558/papers/2343/23430652.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chan:2002:AGF, author = "J. T. Chan and W. Yang", title = "An attribute-grammar framework for specifying the accessibility in {Java} programs", journal = j-COMP-LANGS, volume = "28", number = "2", pages = "203--235", year = "2002", CODEN = "COLADA", ISSN = "0096-0551 (print), 1873-6742 (electronic)", ISSN-L = "0096-0551", bibdate = "Tue Dec 24 07:09:37 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Languages", journal-URL = "http://www.sciencedirect.com/science/journal/00960551", } @Book{Chappell:2002:JWS, author = "David A. Chappell and Tyler Jewell", title = "{Java Web} services", publisher = pub-ORA, address = pub-ORA:adr, pages = "xii + 262", year = "2002", ISBN = "0-596-00269-6", ISBN-13 = "978-0-596-00269-5", LCCN = "QA76.73.J38 C4772 2002", bibdate = "Mon Apr 18 15:04:33 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", note = "Using Java in service-oriented architectures.", URL = "http://www.oreilly.com/catalog/9780596002695", acknowledgement = ack-nhfb, keywords = "Internet programming; Java (computer program language)", remark = "``Using Java in service-oriented architectures'' --- cover.", subject = "Java (Computer program language); Internet programming", } @Article{Chen:2002:FMJ, author = "J. Chen", title = "Formal Modelling of {Java GUI} Event Handling", journal = j-LECT-NOTES-COMP-SCI, volume = "2495", publisher = pub-SV, address = pub-SV:adr, pages = "359--370", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 26 06:24:58 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chen:2002:ILD, author = "J. Chen and H. Zhao", title = "Implement of linked data structure in {Java}", journal = "Journal: Beijing University of Chemical Technology", volume = "29", number = "5", pages = "72--74", year = "2002", CODEN = "????", ISSN = "1007-2640", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2002:JCN, author = "Jiadong Chen", title = "{Java} {E}-Commerce in a Nutshell: a review of {Professional Java E-Commerce}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "3", number = "4", year = "2002", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0204/departments/bks_a.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Chen:2002:JPU, author = "F. Chen and S. Chen and X. Wu", title = "{Java} Program Used in Block Graph Experimental Simulation on {Web}", journal = "Journal- Wuhan University Natural Sciences Edition", volume = "48", number = "5", publisher = "Wuhan University", pages = "621--625", year = "2002", CODEN = "????", ISSN = "0253-9888", bibdate = "Tue Jan 14 08:59:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Chen:2002:POS, author = "Kirk Chen and Li Gong", title = "Programming open service gateways with {Java} embedded server technology", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 456", year = "2002", ISBN = "0-201-71102-8", ISBN-13 = "978-0-201-71102-8", LCCN = "QA76.73.J38 C4775 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "embedded computer systems -- programming; Java (computer program language)", } @Article{Chen:2002:TGC, author = "G. Chen and R. Shetty and M. Kandemir and N. Vijaykrishnan and M. J. Irwin and M. Wolczko", title = "Tuning garbage collection for reducing memory system energy in an embedded {Java} environment", journal = j-TECS, volume = "1", number = "1", pages = "27--55", month = nov, year = "2002", CODEN = "????", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Aug 7 11:26:40 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", } @Article{Chen:2002:UMC, author = "G. Chen and M. Kandemir and N. Vijaykrishnan and M. J. Irwin and W. Wolf", title = "Using Memory Compression for Energy Reduction in an Embedded {Java} System", journal = "Journal of Circuits Systems and Computers", volume = "11", number = "5", publisher = "World Scientific Co. Pte. Ltd.", pages = "537--556", year = "2002", CODEN = "????", ISSN = "0218-1266", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Cheng:2002:JBT, author = "L. Cheng and I. Marsic", title = "{Java}-based tools for accurate bandwidth measurement of {Digital Subscriber Line} networks", journal = "Integrated Computer Aided Engineering", volume = "9", number = "4", publisher = "Wiley-Interscience", pages = "333--344", year = "2002", CODEN = "????", ISSN = "1069-2509", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chiao:2002:EBR, author = "H. T. Chiao and S. H. J. Kao and Y. S. Chang and S. T. Huang and S. M. Yuan", title = "Experience in Building a Real-Time Extension Library for {Java}", journal = j-J-INFO-SCI-ENG, volume = "18", number = "6", pages = "905--928", year = "2002", CODEN = "JINEEY", ISSN = "1016-2364", bibdate = "Tue Jan 14 08:59:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of information science and engineering", } @InProceedings{Chiu:2002:PMM, author = "Kenneth Chiu and Madhusudhan Govindaraju and Dennis Gannon", title = "The {Proteus Multiprotocol Message Library}", crossref = "IEEE:2002:STI", pages = "??--??", year = "2002", bibdate = "Wed Nov 26 07:34:20 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc-2002.org/paperpdfs/pap.pap315.pdf", abstract = "Grid systems span manifold organizations and application domains. Because this diverse environment inevitably engenders multiple protocols, interoperability mechanisms are crucial to seamless, pervasive access. This paper presents the design, rationale, and implementation of the Proteus multiprotocol library for integrating multiple message protocols, such as SOAP and JMS, within one system. Proteus decouples application code from protocol code at run-time, allowing clients to incorporate separately developed protocols without recompiling or halting. Through generic serialization, which separates the transfer syntax from the message type, protocols can also be added independently of serialization routines. We also show performance-enhancing mechanisms for Grid services that examine metadata, but pass actual data through opaquely (such as adapters). The interface provided to protocol implementors is general enough to support protocols as disparate as our current implementations: SOAP, JMS, and binary. Proteus is written in C++; a Java port is planned.", acknowledgement = ack-nhfb, } @Article{Christensen:2002:FCD, author = "Henrik B{\ae}rbak Christensen and Michael E. Caspersen", title = "Frameworks in {CS1}: a different way of introducing event-driven programming", journal = j-SIGCSE, volume = "34", number = "3", pages = "75--79", month = sep, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/637610.544438", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:56 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In this paper we argue that introducing object-oriented frameworks as subject already in the CS1 curriculum is important if we are to train the programmers of tomorrow to become just as much software reusers as software producers. We present a simple, graphical, framework that we have successfully used to introduce the principles of object-oriented frameworks to students at the introductory programming level. Our framework, while simple, introduces central abstractions such as inversion of control, event-driven programming, and variability points/hot-spots. This has provided a good starting point for introducing graphical user interface frameworks such as Java Swing and AWT as the students are not overwhelmed by all the details of such frameworks right away but given a conceptual road-map and practical experience that allow them to cope with the complexity.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cimato:2002:DAP, author = "Stelvio Cimato", title = "Design of an Authentication Protocol for {Gsm Javacards}", journal = j-LECT-NOTES-COMP-SCI, volume = "2288", pages = "355--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:14 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2288.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2288/22880355.htm; http://link.springer-ny.com/link/service/series/0558/papers/2288/22880355.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Clear:2002:ACJ, author = "T. Clear and G. Foot", title = "Avatars in Cyberspace --- {A} {Java} {$3$D} Application to Support Formation of Virtual Groups", journal = j-SIGCSE, volume = "34", number = "3", pages = "222", year = "2002", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cochran:2002:NVR, author = "Shannon Cochran", title = "News and Views: Researchers Tackle {P2P} Network; {Java} Upstarts Push {JEFF}; Computer Science Tests Canceled; The Continuing Voyage", journal = j-DDJ, volume = "27", number = "12", pages = "14--14", month = dec, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:20 MDT 2003", bibsource = "http://www.ddj.com/articles/2002/0212/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7718/ddj0212n/", abstract = "December News and Views", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Cohen:2002:JQH, author = "Tal Cohen", title = "{Java Q\&A}: How Do {I} Correctly Implement the {\tt equals()} Method?", journal = j-DDJ, volume = "27", number = "5", pages = "83--84, 86", month = may, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Apr 4 06:46:15 MST 2002", bibsource = "http://www.ddj.com/articles/2002/0205/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_05/jqa0502.txt", abstract = "Additional resources include jqa0502.txt.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Coleman:2002:OAJ, author = "C. L. Coleman", title = "{Oracle} Angles for {Java} Developers", journal = "E Business Advisor", volume = "20", number = "1", publisher = "Advisor Publications", pages = "12--13", year = "2002", CODEN = "????", ISSN = "1098-8912", bibdate = "Tue Nov 26 06:24:58 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", abstract = "Bill Dwight, Oracle's VP of application development, sets his sights on Java and Web services.", acknowledgement = ack-nhfb, } @Article{ColindeVerdiere:2002:SPS, author = "Vincent {Colin de Verdi{\`e}re} and S{\'e}bastien Cros and Christian Fabre and Romain Guider and Sergio Yovine", title = "Speedup Prediction for Selective Compilation of Embedded {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2491", pages = "227--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:06 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2491.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2491/24910227.htm; http://link.springer.de/link/service/series/0558/papers/2491/24910227.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Comer:2002:TJB, author = "James Comer and Robert Roggio", title = "Teaching a {Java}-based {CS1} course in an academically-diverse environment", journal = j-SIGCSE, volume = "34", number = "1", pages = "142--146", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563396", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "The Texas Christian University (TCU) Computer Science Department was established in 1981. From the outset, the Department's CS1 course has presented significant teaching challenges due to the wide diversity of student's taking the class. Traditionally, only 25-35\% of the students enrolled in the course are computing science majors, the remaining being students from a wide diversity of disciplines, many of which are non-science based. Despite the diversity, it has been necessary for the course, and its content, to be structured to satisfy essential core requirements for students majoring in computer science and computer information science as well as to meet program requirements for the many non-computer science majors taking the course. This paper discusses some of the unique issues associated with teaching a Java-based CS1 course to a very diverse group of students, the majority of which have very unsophisticated problem solving skills, and little or no programming expertise. A representative set of experiments and programming assignments are included.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cook:2002:REJ, author = "Jonathan J. Cook", title = "Reverse Execution of {Java} Bytecode", journal = j-COMP-J, volume = "45", number = "6", pages = "608--619", month = "????", year = "2002", CODEN = "CMPJA6", DOI = "https://doi.org/10.1093/comjnl/45.6.608", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Wed Nov 6 11:21:54 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/", URL = "http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/450608.sgm.abs.html; http://www3.oup.co.uk/computer_journal/hdb/Volume_45/Issue_06/pdf/450608.pdf", abstract = "We demonstrate a model, including operational semantics, for the reverse execution of stack-based code. We discuss our modification of the Kaffe implementation of the Java Virtual Machine, supporting a debugger capable of running Java bytecode backwards. We achieve reverse execution by logging the state lost during each operation or by directly reversing instructions. Our debugger has facilities for stepping, stepping over methods and running to breakpoints, in both directions. Multi-threading is supported. It is also possible to step through the bytecode when the Java source code is not available. The debugger has both a command line user interface and a graphical user interface with facilities for editing code and running the Java compiler.", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Corsaro:2002:DPJ, author = "Angelo Corsaro and Douglas C. Schmidt", title = "The Design and Performance of the {jRate} Real-Time {Java} Implementation", journal = j-LECT-NOTES-COMP-SCI, volume = "2519", pages = "900--921", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2519.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://link.springer.de/link/service/series/0558/bibs/2519/25190900.htm; http://link.springer.de/link/service/series/0558/papers/2519/25190900.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Cruz:2002:SRA, author = "J. L. Cruz and B. Cuesta and M. Sigut and L. Acosta", title = "Simulation, Remote Access, and Monitoring of a Robot in {Java}", journal = j-INT-J-ROBOTICS-AUTOMATION, volume = "17", number = "3", pages = "112--119", year = "2002", CODEN = "IJAUED", ISSN = "0826-8185", ISSN-L = "0826-8185", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "International Journal of Robotics and Automation", } @Article{Daley:2002:FTD, author = "Nigel Daley and Daniel Hoffman and Paul Strooper", title = "A framework for table driven testing of {Java} classes", journal = j-SPE, volume = "32", number = "5", pages = "465--493", day = "25", month = apr, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.452", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat May 18 14:47:19 MDT 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/93513336/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=93513336&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Danelutto:2002:LSP, author = "M. Danelutto and P. Teti", title = "{Lithium}: a Structured Parallel Programming Environment in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2330", pages = "844--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:35 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2330.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2330/23300844.htm; http://link.springer-ny.com/link/service/series/0558/papers/2330/23300844.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{deBeer:2002:MIR, author = "R. deBeer and A. Coron and D. GraveronDemilly and R. Lethmate and S. Nastase and D. vanOrmondt and F. T. Wajer", title = "{MR} image reconstruction algorithms for sparse $k$-space data: a {Java}-based integration", journal = j-MAGMA, volume = "15", number = "1--3", pages = "18--26", year = "2002", CODEN = "MAGMEY", ISSN = "0968-5243", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Magma", } @Book{Deitel:2002:AJP, author = "Harvey M. Deitel and Paul J. Deitel and S. Santry", title = "Advanced {Java 2} platform: how to program", publisher = pub-PH, address = pub-PH:adr, pages = "xxxviii + 1811 + EULA-13", year = "2002", ISBN = "0-13-089560-1", ISBN-13 = "978-0-13-089560-8", LCCN = "QA76.73.J38 D445 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "CD-ROM contains Java TM 2 Software Development Kit Standard Edition Version 1.3.1 for Windows and Linux (Intel x86); Forte for Java, Release 2.0, Community Edition for All Platforms; BEA WebLodge Server TM, Version 6.0 (Windows/Linux) with Service Pack 1 or 2, 30 Day Trial", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Deitel:2002:CJT, author = "Harvey M. Deitel and Paul J. Deitel", title = "The Complete {Java 2} Training Course", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "????", year = "2002", ISBN = "0-13-064931-7", ISBN-13 = "978-0-13-064931-7", LCCN = "????", bibdate = "Tue Mar 12 08:01:33 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$109.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130649317.html", acknowledgement = ack-nhfb, } @Book{Deitel:2002:JHP, author = "Harvey M. Deitel and Paul J. Deitel", title = "{Java}: how to program", publisher = pub-PH, address = pub-PH:adr, edition = "Fourth", pages = "lii + 1546 + 8", year = "2002", ISBN = "0-13-034151-7", ISBN-13 = "978-0-13-034151-8", LCCN = "QA76.73.J38 D45 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "CD-ROM contains Java TM 2 SDK, Standard Edition, 1.3.1, Java Media Framework API 2.1.1, Forte for Java, Release 2.0, Community Edition and Java Plug-in HTML Converter 1.3.", series = "How to program series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Delbourg:2002:JBC, author = "D. Delbourg and G. Penillault and T. K. Tuong and M. Decourt and N. Borome and H. Harroch and B. Lessellier and B. Waast and J. P. Mouffron", title = "A {Java}-based control system for the {Orsay} tandem accelerator", journal = j-PRAMANA, volume = "59", number = "6", publisher = "Indian Academy of Sciences", pages = "1025--1034", year = "2002", CODEN = "PRAMCI", ISSN = "0304-4289", bibdate = "Tue Jan 14 08:59:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Pramana: Journal of Physics", journal-URL = "http://www.springerlink.com/content/0304-4289", } @Book{Dellwig:2002:J, author = "Elmar Dellwig and Ingo Dellwig", title = "{JavaScript}", publisher = pub-AW, address = pub-AW:adr, pages = "xiii + 289", year = "2002", ISBN = "0-201-75875-X (paperback)", ISBN-13 = "978-0-201-75875-7 (paperback)", LCCN = "QA76.73.J39 D45 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Translation of: JavaScript 1.3 Nitty Gritty", series = "Addison-Wesley nitty gritty programming series", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Delsart:2002:JLM, author = "Bertrand Delsart and Vania Joloboff and Eric Paire", title = "{JCOD}: a Lightweight Modular Compilation Technology for Embedded {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2491", pages = "197--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:06 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2491.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2491/24910197.htm; http://link.springer.de/link/service/series/0558/papers/2491/24910197.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Delzanno:2002:TAV, author = "Giorgio Delzanno and Jean-Fran{\c{c}}ois Raskin and Laurent {Van Begin}", title = "Towards the Automated Verification of Multithreaded {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2280", pages = "173--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:09 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2280.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2280/22800173.htm; http://link.springer-ny.com/link/service/series/0558/papers/2280/22800173.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Deng:2002:JUJ, author = "Q. Deng and X. Lu", title = "{JOGR} --- Utilizing {Java} Object Group Relationship to Support Multi-Model Parallel Programming", journal = "Acta Electronica Sinica", volume = "30", number = "11", publisher = "Chinese Institute of Electronics Beijing", pages = "1718--1721", year = "2002", CODEN = "????", ISSN = "0372-2112", bibdate = "Tue Jan 14 08:59:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Denney:2002:CJC, author = "Ewen Denney and Thomas Jensen", title = "Correctness of {Java} card method lookup via logical relations", journal = j-THEOR-COMP-SCI, volume = "283", number = "2", pages = "305--331", month = jun, year = "2002", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Wed Nov 20 18:08:57 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Article{Dershem:2002:AJL, author = "Herbert L. Dershem and Ryan L. McFall and Ngozi Uti", title = "Animation of {Java} linked lists", journal = j-SIGCSE, volume = "34", number = "1", pages = "53--57", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563362", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Linked lists are an important component of the computer science curriculum. JVALL is a software package that provides an animation of linked list operations that is fully compatible with the Java LinkedList class. The animations are driven by a client program that can be either an applet or standalone application. It provides an effective way for students to learn, experiment with, and debug linked list based classes.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Dibble:2002:RTJ, author = "Peter C. Dibble", title = "Real-Time {Java} Platform Programming", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "352 (est.)", year = "2002", ISBN = "0-13-028261-8", ISBN-13 = "978-0-13-028261-3", LCCN = "QA76.73.J38 D53 2002", bibdate = "Mon Apr 29 16:58:06 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130282618.html; http://www.sun.com/books/catalog/dibble", acknowledgement = ack-nhfb, } @Article{Dietrich:2002:JDC, author = "Suzanne W. Dietrich and Susan D. Urban and Ion Kyriakides", title = "{JDBC} demonstration courseware using {Servlets} and {Java Server Pages}", journal = j-SIGCSE, volume = "34", number = "1", pages = "266--270", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563444", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This paper describes the design and functionality of courseware developed to demonstrate the JDBC API. The courseware is used in an advanced undergraduate database course that emphasizes the use of Web access to database systems. The JDBC courseware is written using Java Servlets and Java Server Pages, allowing the user to view the metadata associated with a database, to view and browse the information in a database according to the database metadata, and to query and/or manipulate data using SQL statements. The advantage of the courseware is that it demonstrates the main functionality of the JDBC API in an application-independent manner. The courseware can access any ODBC-compliant database, emphasizing the generality of the JDBC API and helping students understand how JDBC can be used to query the metadata of the database as well as the database contents.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Dmitriev:2002:LSM, author = "Mikhail Dmitriev", title = "Language-Specific Make Technology for the {Java} Programming Language", journal = j-SIGPLAN, volume = "37", number = "11", pages = "373--385", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Dorobonceanu:2002:CFN, author = "Bogdan Dorobonceanu", title = "Comparing Fuzzy Numbers", journal = j-DDJ, volume = "27", number = "12", pages = "38, 40, 42, 44--45", month = dec, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:20 MDT 2003", bibsource = "http://www.ddj.com/articles/2002/0212/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7718/ddj0212e/", abstract = "Fuzzy set theory makes possible the formalization of approximate reasoning. Bogdan presents a fuzzy number comparison method that's implemented in Java.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @InProceedings{Doyle:2002:MEJ, author = "Patrick Doyle and Tarek S. Abdelrahman", title = "A Modular and Extensible {JVM} Infrastructure", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/doyle.html", acknowledgement = ack-nhfb, } @Article{Drofenik:2002:IPE, author = "U. Drofenik and J. W. Kolar", title = "Interactive Power Electronics Seminar ({iPES}) --- {A} {Web}-Based Introductory Power Electronics Course Employing {Java}-Applets", journal = "IEEE Power Electronics Specialists Conference", volume = "CONF33", number = "VOL 2", pages = "443--448", year = "2002", CODEN = "????", ISSN = "0275-9306", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Drossopoulou:2002:FTJ, author = "Sophia Drossopoulou and Susan Eisenbach and Gary T. Leavens and Arnd Poetzsch-Heffter and Erik Poll", title = "Formal Techniques for {Java}-like Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2548", pages = "203--210", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:58:13 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2548.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2548/25480203.htm; http://link.springer.de/link/service/series/0558/papers/2548/25480203.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Dunn:2002:JR, author = "Douglas Dunn", title = "{Java} rules", publisher = pub-AW, address = pub-AW:adr, pages = "xxv + 690", year = "2002", ISBN = "0-201-70916-3", ISBN-13 = "978-0-201-70916-2", LCCN = "QA76.73.J38 D84 2002", bibdate = "Tue Apr 01 15:07:31 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Duplantis:2002:VFA, author = "Willa Duplantis and Eve MacGregor and Maria M. Klawe and Michele Ng", title = "'Virtual family': an approach to introducing {Java} programming", journal = j-SIGCSE, volume = "34", number = "2", pages = "40--43", month = jun, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/543812.543827", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:55 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse34.html#DuplantisMKN02; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Women and Computing.", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2002.bib", abstract = "This paper introduces and discusses Virtual Family (VF): A gender-neutral game-based software that introduces Java programming. VF provides a completely functioning game that students extend and enhance via programming. We discuss the background and context within which Virtual Family was developed and other available multimedia resources for teaching programming. The paper then goes on to describe Virtual Family's concept and design. Finally, feedback received from Virtual Family teaching workshops is related, as well as preliminary results from using VF in high-school teaching units. Virtual Family is under development in a research lab at the University of British Columbia and is an initiative of Supporting Women in InFormation Technology (SWIFT). SWIFT is a five-year research action and implementation project to increase the participation of women in Information Technology. Virtual Family is available free of charge to anyone interested in using it for teaching or outreach purposes, to order email {\tt swift@interchange.ubc.ca}.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Durney:2002:EJC, author = "Brian Durney", title = "The essential {Java} class reference for programmers", publisher = pub-PH, address = pub-PH:adr, pages = "viii + 168", year = "2002", ISBN = "0-13-093385-6 (paperback)", ISBN-13 = "978-0-13-093385-0 (paperback)", LCCN = "QA76.73.J38 D863 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Dutheil:2002:BJE, author = "J. Dutheil and N. Galtier", title = "{BAOBAB}: a {Java} editor for large phylogenetic trees", journal = j-BIOINFORMATICS, volume = "18", number = "6", pages = "892--893", month = jun, year = "2002", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "2", } @Article{Eberhart:2002:AGJ, author = "Andreas Eberhart", title = "Automatic Generation of {Java\slash SQL} Based Inference Engines from {RDF} Schema and {RuleML}", journal = j-LECT-NOTES-COMP-SCI, volume = "2342", pages = "102--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Sep 12 08:35:27 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2342.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2342/23420102.htm; http://link.springer-ny.com/link/service/series/0558/papers/2342/23420102.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Eberhart:2002:JTU, author = "Andreas Eberhart and Stefan Fischer", title = "{Java} tools: using {XML}, {EJB}, {CORBA}, Servlets and {SOAP}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "493", year = "2002", ISBN = "0-471-48666-3", ISBN-13 = "978-0-471-48666-4", LCCN = "QA76.73.J38 E24 2002", bibdate = "Fri Sep 13 06:33:58 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.i-u.de/schools/eberhart/book/", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Java (computer program language)", } @Book{Eckstein:2002:JEB, author = "Robert Eckstein", title = "{Java} Enterprise best practices", publisher = pub-ORA, address = pub-ORA:adr, pages = "x + 277", year = "2002", ISBN = "0-596-00384-6", ISBN-13 = "978-0-596-00384-5", LCCN = "QA76.73.J38 J3662 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "Expert tips and tricks for Java Enterprise programmers", keywords = "application software -- development; Java (computer program language); object-oriented programming (computer science); Web servers", } @Book{Eckstein:2002:JS, author = "Robert Eckstein and Marc Loy", title = "{Java Swing}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxiv + 1252", year = "2002", ISBN = "0-596-00408-7", ISBN-13 = "978-0-596-00408-8", LCCN = "QA76.73.J38 E27 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "graphical user interfaces (computer systems); Java (computer program language); Swing (computer file)", } @Article{Edelstein:2002:MJP, author = "O. Edelstein and E. Farchi and Y. Nir and G. Ratsaby and S. Ur", title = "Multithreaded {Java} program test generation", journal = j-IBM-SYS-J, volume = "41", number = "1", pages = "111--125", month = "????", year = "2002", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Tue Feb 12 17:23:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/", URL = "http://www.research.ibm.com/journal/sj/411/edelstein.html; http://www.research.ibm.com/journal/sj/411/edelstein.pdf", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0144", } @Article{Eichelberger:2002:VJP, author = "H. Eichelberger and J. Wolff von Gudenberg", title = "On the Visualization of {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2269", pages = "295--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:05 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2269.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2269/22690295.htm; http://link.springer-ny.com/link/service/series/0558/papers/2269/22690295.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Eisenbach:2002:EDJ, author = "Susan Eisenbach and Chris Sadler and Shakil Shaikh", title = "Evolution of Distributed {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2370", pages = "51--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:55 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2370.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2370/23700051.htm; http://link.springer-ny.com/link/service/series/0558/papers/2370/23700051.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{ElKharashi:2002:JPJ, author = "M. W. ElKharashi and F. Gebali and K. F. Li and F. Zhang", title = "The {JAFARDD} Processor: a {Java} Architecture Based on a Folding Algorithm, with Reservation Stations, Dynamic Translation, and Dual Processing", journal = j-IEEE-TRANS-CONSUMER-ELECTRONICS, volume = "48", number = "4", pages = "1004--1015", year = "2002", CODEN = "ITCEDA", ISSN = "0098-3063", ISSN-L = "0098-3063", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Consumer Electronics", } @Article{Emory:2002:JDL, author = "David Emory and Roberto Tamassia", title = "{JERPA}: a distance-learning environment for introductory {Java} programming courses", journal = j-SIGCSE, volume = "34", number = "1", pages = "307--311", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563461", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This paper describes a Java-based distance-education tool, called the Environment for Remote Programming Assignments in Java (JERPA), for use in computer science courses with Java programming assignments. JERPA reduces the demand on the university's computing infrastructure while providing instructors with an easy system to deploy and distribute assignments, and allowing students greater flexibility as they work on the assignments. JERPA yields immediate advantages to traditional on-campus CS courses and provides a key functionality to programming courses offered in a distance-education setting.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Englander:2002:JS, author = "Robert Englander", title = "{Java} and {SOAP}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xv + 258", year = "2002", ISBN = "0-596-00175-4", ISBN-13 = "978-0-596-00175-9", LCCN = "QA76.76.H94 E54 2002", bibdate = "Mon Apr 18 15:03:28 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html; z3950.loc.gov:7090/Voyager", price = "US\$39.95", URL = "http://safari.oreilly.com/0596001754; http://www.oreilly.com/catalog/9780596001759; http://www.oreilly.com/catalog/javasoap", acknowledgement = ack-nhfb, keywords = "Internet programming; Java (computer programming language); object-oriented programming; simple object access protocol (computer network protocol)", publishersummary = "Java and SOAP provides Java developers with an in-depth look at SOAP (the Simple Object Access Protocol). Of course, it covers the basics: what SOAP is, why it's soared to a spot on the Buzzwords' Top Ten list, and what its features and capabilities are. And it shows you how to work with some of the more common Java APIs in the SOAP world: Apache SOAP and GLUE.\par Java and SOAP also discusses interoperability between the major SOAP platforms, including Microsoft's .NET, SOAP messaging, SOAP attachments, message routing, and a preview of the forthcoming AXIS APIs and server. If you're a Java developer who would like to start working with SOAP, this is the book you need to get going.", subject = "Internet programming; Object oriented programming; Simple Object Access Protocol (Computer network protocol); Java (Computer program language)", } @Article{Ertl:2002:VGE, author = "M. Anton Ertl and David Gregg and Andreas Krall and Bernd Paysan", title = "{Vmgen} --- a generator of efficient virtual machine interpreters", journal = j-SPE, volume = "32", number = "3", pages = "265--294", month = mar, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.434", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Fri Feb 22 12:06:59 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www.complang.tuwien.ac.at/anton/vmgen/; http://www.complang.tuwien.ac.at/papers/ertl+02.ps.gz; http://www3.interscience.wiley.com/cgi-bin/abstract/90010508/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=90010508&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "byte code; Cacao virtual machine; Forth; generator; GForth virtual machine; interpreter; Java; stack architecture; virtual machine", } @Book{Estrella:2002:WWG, author = "Steven Estrella", title = "The {Web} wizard's guide to {JavaScript}", publisher = pub-AW, address = pub-AW:adr, pages = "x + 198", year = "2002", ISBN = "0-201-75833-4 (paperback)", ISBN-13 = "978-0-201-75833-7 (paperback)", LCCN = "QA76.73.J39 E88 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Fabry:2002:SDE, author = "Johan Fabry", title = "Supporting Development of Enterprise {JavaBeans} through Declarative Meta Programming", journal = j-LECT-NOTES-COMP-SCI, volume = "2425", pages = "280--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:25 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2425.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2425/24250280.htm; http://link.springer-ny.com/link/service/series/0558/papers/2425/24250280.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fang:2002:JJB, author = "Xiang Fang and John A. Miller and Jonathan Arnold", title = "{J3DV}: a {Java}-based {$3$D} database visualization tool", journal = j-SPE, volume = "32", number = "5", pages = "443--463", day = "25", month = apr, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.444", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat May 18 14:47:19 MDT 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/93513335/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=93513335&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Book{Farley:2002:JEN, author = "Jim Farley and William Crawford and David Flanagan", title = "{Java} Enterprise in a Nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xiii + 971", year = "2002", ISBN = "0-596-00152-5", ISBN-13 = "978-0-596-00152-0", LCCN = "QA76.73.J38 J366 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$39.95", URL = "http://safari.oreilly.com/0596001525; http://www.oreilly.com/catalog/jentnut2", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", publishersummary = "Completely revised and updated for the new 2.0 version of Sun Microsystems Java Enterprise Edition software, Java Enterprise in a Nutshell covers all of the J2EE APIs, including RMI, Java IDL, JDBC, JNDI, Java Servlet, and Enterprise JavaBeans, with a fast-paced tutorial and compact reference on each technology. Then Java Enterprise in a Nutshell goes even further, providing a classic O'Reilly-style quick reference for all of the classes in the various packages that comprise the Enterprise APIs - covering the core enterprise APIs as well as numerous standard extensions.", xxauthor = "David Flanagan and Jim Farley and William Crawford", } @Article{Faulkner:2002:JCN, author = "B. R. Faulkner", title = "{Java} classes for nonprocedural variogram modeling", journal = j-COMP-GEOSCI, volume = "28", number = "3", pages = "387--397", month = apr, year = "2002", CODEN = "CGEODT, CGOSDN", ISSN = "0098-3004 (print), 1873-7803 (electronic)", ISSN-L = "0098-3004", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Geosciences", pagecount = "11", } @Article{Fekete:2002:TDS, author = "Alan Fekete", title = "Teaching data structures with multiple collection class libraries", journal = j-SIGCSE, volume = "34", number = "1", pages = "396--400", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563494", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "In recent years, the teaching of data structures has been revolutionised by object-oriented languages, especially Java, in which the concept of each Abstract Data Type is made explicit as an Interface. The existing texts, though, each use a single set of classes: sometimes a standard library such as Sun's SDK, but in other cases these form a library unique to the text. In contrast, this paper advocates an approach which seeks to prepare students for the common situation for software developers, who are asked to regularly adjust to a library they are unfamiliar with. The teaching we describe openly acknowledges the existence of many libraries. A single concept such as Stack is expressed in subtly different ways in each library; these differences are made explicit for the student. We also show examples of assessment tasks that can accompany the teaching.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Felber:2002:ACC, author = "Pascal Felber and Michael K. Reiter", title = "Advanced concurrency control in {Java}", journal = j-CCPE, volume = "14", number = "4", pages = "261--285", day = "10", month = apr, year = "2002", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.635", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 18 14:54:00 MDT 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/93513491/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=93513491{\&}PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Felea:2002:EPJ, author = "Violeta Felea and Nathalie Devesa and Bernard Toursel and Pierre Lecouffe", title = "Expressing Parallelism in {Java} Applications Distributed on Clusters", journal = j-LECT-NOTES-COMP-SCI, volume = "2326", pages = "249--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:32 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2326.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2326/23260249.htm; http://link.springer-ny.com/link/service/series/0558/papers/2326/23260249.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fenton:2002:RTC, author = "F. H. Fenton and E. M. Cherry and H. M. Hastings and S. J. Evans", title = "Real-time computer simulations of excitable media: {Java} as a scientific language and as a wrapper for {C} and {Fortran} programs", journal = j-BIOSYSTEMS, volume = "64", number = "1", pages = "73--96", month = jan, year = "2002", CODEN = "BSYMBO", ISSN = "0303-2647", ISSN-L = "0303-2647", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Biosystems (A6E)", pagecount = "24", } @Book{Ferrari:2002:PLM, editor = "Giulio Ferrari and Dario Laverde", title = "Programming {Lego Mindstorms} with {Java}: the ultimate tool for {Mindstorms} maniacs!", publisher = "Syngress", address = "Rockland, MA, USA", pages = "xxii + 441", year = "2002", ISBN = "1-928994-55-5", ISBN-13 = "978-1-928994-55-8", LCCN = "????", bibdate = "Mon Mar 27 09:01:56 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", price = "US\$19.95", acknowledgement = ack-nhfb, } @Article{Feustel:2002:WSJ, author = "Edward Feustel", title = "Writing Secure {Java} Applications: a review of {Java Security}, 2nd ed.", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "3", number = "3", year = "2002", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0203/departments/bks_a.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Flanagan:2002:ESC, author = "Cormac Flanagan and K. Rustan M. Leino and Mark Lillibridge and Greg Nelson and James B. Saxe and Raymie Stata", title = "Extended static checking for {Java}", journal = j-SIGPLAN, volume = "37", number = "5", pages = "234--245", month = may, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:02 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Flanagan:2002:JDG, author = "David Flanagan", title = "{JavaScript}: the definitive guide", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fourth", pages = "xvii + 916", year = "2002", ISBN = "0-596-00048-0", ISBN-13 = "978-0-596-00048-6", LCCN = "QA76.73.J39 F52 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, contents = "Introduction to JavaScript -- Lexical structure -- Data types and values -- Variables -- Expressions and operators -- Statements -- Functions -- Objects -- Arrays -- Pattern matching with regular expressions -- Further topics in JavaScript -- JavaScript in Web browsers -- Windows and frames -- The document object -- Forms and form elements -- Scripting cookies -- The Document Object Model -- Cascading style sheets and dynamic HTML -- Events and event-handling -- Compatibility techniques -- JavaScript security -- Using Java with JavaScript -- Core JavaScript reference -- W3C DOM reference -- Class, property, method, and event handler index", keywords = "JavaScript (computer program language); object-oriented programming (computer science); programming languages handbooks; Web servers", } @Book{Flanagan:2002:JEN, author = "David Flanagan and Jim Farley and William Crawford", title = "{Java} Enterprise in a nutshell: a desktop quick reference", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xiii + 971", year = "2002", ISBN = "0-596-00152-5", ISBN-13 = "978-0-596-00152-0", LCCN = "QA76.73.J38 J366 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Flanagan:2002:JND, author = "David Flanagan", title = "{Java} in a nutshell: a desktop quick reference", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fourth", pages = "xxi + 969", year = "2002", ISBN = "0-596-00283-1", ISBN-13 = "978-0-596-00283-1", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Covers Java 1.4.", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science); Web servers", } @Book{Flanagan:2002:JPR, author = "David Flanagan", title = "{JavaScript} Pocket Reference", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "136 (est.)", year = "2002", ISBN = "0-596-00411-7", ISBN-13 = "978-0-596-00411-8", LCCN = "????", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$14.95", URL = "http://www.oreilly.com/catalog/jscriptpr2", acknowledgement = ack-nhfb, publishersummary = "The JavaScript Pocket Reference, 2nd Edition provides a complete overview of the core Java language and client-side scripting environment, as well as quick-reference material on core and client-side objects, methods, and properties. The new edition has been revised to cover JavaScript 1.5, and is particularly useful for developers working with the latest standards-compliant Web browsers, such as Internet Explorer 6, Netscape 7, and Mozilla.", } @Article{Foxwell:2002:JX, author = "H. J. Foxwell", title = "{Java} and {XSLT}", journal = j-MARKUP-LANG, volume = "3", number = "4", pages = "446--447", day = "10", month = sep, year = "2002", CODEN = "MLTPFG", ISSN = "1099-6621", ISSN-L = "1099-6621", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Markup languages: theory \& practice", pagecount = "2", } @Article{Freiwald:2002:JBC, author = "Uwe Freiwald and J{\"o}rg R. Weimar", title = "The {Java} based cellular automata simulation system --- {JCASim}", journal = j-FUT-GEN-COMP-SYS, volume = "18", number = "7", pages = "995--1004", month = aug, year = "2002", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", pagecount = "10", } @Article{Fricke:2002:EJO, author = "V. Fricke", title = "Embedded {Java} and {OSGi} --- New Technologies in the Car of the Future", journal = "VDI Berichte", volume = "1728", number = "??", publisher = "VDI", pages = "41--50", year = "2002", CODEN = "????", ISSN = "0083-5560", bibdate = "Tue Jan 14 08:59:22 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Gagne:2002:JNB, author = "Greg Gagne", title = "To {\tt java.net} and beyond: teaching networking concepts using the {Java} networking {API}", journal = j-SIGCSE, volume = "34", number = "1", pages = "406--410", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563497", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This paper covers the use of Java and its API for developing networking programs in an undergraduate computer networks class. Through the use of TCP and UDP sockets provided in the java.net package, students are able to write several client-server applications such as web and mail servers and a chat room. Additionally, the java.rmi API provides a library for invoking methods on remote objects, similar to remote procedure calls. Remote method invocation (RMI) is used to write a distributed version of the Producer-Consumer problem.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Gilliam:2002:PJ, author = "Jason Gilliam and R. Allen Wyke", title = "Pure {JavaScript}", publisher = pub-SAMS, address = pub-SAMS:adr, edition = "Second", pages = "liii + 1545", year = "2002", ISBN = "0-672-32141-6", ISBN-13 = "978-0-672-32141-2", LCCN = "QA76.73.J39 P87 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Rev. ed. of: Pure JavaScript / Jason Gilliam, c1999.", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @InProceedings{Gleim:2002:JPI, author = "Urs Gleim", title = "{JaRTS}: a Portable Implementation of Real-Time Core Extensions for {Java}", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/gleim.html", acknowledgement = ack-nhfb, } @Article{Glossner:2002:JED, author = "C. John Glossner and Michael Schulte and Stamatis Vassiliadis", title = "A {Java}-Enabled {DSP}", journal = j-LECT-NOTES-COMP-SCI, volume = "2268", pages = "307--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:05 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2268.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2268/22680307.htm; http://link.springer-ny.com/link/service/series/0558/papers/2268/22680307.pdf; http://mesa.ece.wisc.edu/publications/cp_2002-01.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Goncalves:2002:JMO, author = "Marcos Andr{\'e} Gon{\c{c}}alves and Paul Mather and Jun Wang and Ye Zhou and Ming Luo and Ryan Richardson and Rao Shen and Liang Xu and Edward A. Fox", title = "{Java} {MARIAN}: From an {OPAC} to a Modern Digital Library System", journal = j-LECT-NOTES-COMP-SCI, volume = "2476", pages = "194--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:37 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2476.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2476/24760194.htm; http://link.springer.de/link/service/series/0558/papers/2476/24760194.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Goodman:2002:DHD, author = "Danny Goodman", title = "Dynamic {HTML}: The Definitive Reference: a Comprehensive Resource for {HTML}, {CSS}, {DOM} \& {JavaScript}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xiii + 1401", year = "2002", ISBN = "0-596-00316-1", ISBN-13 = "978-0-596-00316-6", LCCN = "QA76.76.H94 G657 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$59.95", URL = "http://www.oreilly.com/catalog/dhtmlref2", acknowledgement = ack-nhfb, publishersummary = "Dynamic HTML: The Definitive Reference, 2nd Edition, is an indispensable compendium for Web development. The new edition has been updated to include complete reference material on the latest specifications, including HTML 4.01, CSS Level 2, DOM Level 2, and JavaScript 1.5, as well as the latest browsers, Internet Explorer 6 (Windows), Internet Explorer 5.1 (Mac), Netscape Navigator 6 and 7, and Mozilla 1.0.", } @Article{Goodsen:2002:EJT, author = "John Goodsen", title = "Effective {Java} Testing Strategies", journal = j-LECT-NOTES-COMP-SCI, volume = "2418", pages = "275--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:17 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2418.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2418/24180275.htm; http://link.springer.de/link/service/series/0558/papers/2418/24180275.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gordon:2002:LHQ, author = "O. E. Gordon and T. E. Malloy", title = "On-line {Homework\slash} Quiz\slash Exam applet: Freely available {Java} software for evaluating performance on line", journal = j-BEHAV-RES-METH-INSTR-COMP, volume = "34", number = "2", publisher = "Psychonomic Society Publications", pages = "241--244", day = "1", month = may, year = "2002", CODEN = "BRMCEW", ISSN = "0743-3808 (print), 1532-5970 (electronic)", ISSN-L = "0743-3808", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Behavior Research Methods, Instruments, and Computers", pagecount = "4", } @Book{Griffith:2002:JXJ, author = "Arthur Griffith", title = "{Java}, {XML}, and {JAXP}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xii + 222", year = "2002", ISBN = "0-471-20907-4 (PAPER/WEBSITE)", ISBN-13 = "978-0-471-20907-2 (PAPER/WEBSITE)", LCCN = "QA76.73.J38 G77 2002 Bar", bibdate = "Fri Sep 13 06:33:58 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Article{Grinder:2002:AAC, author = "Michael T. Grinder", title = "Animating automata: a cross-platform program for teaching finite automata", journal = j-SIGCSE, volume = "34", number = "1", pages = "63--67", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563364", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "The FSA Simulator is a Java program created to allow computer science students to experiment with finite state automata. The program is able to simulate both deterministic and nondeterministic automata. Pre-defined automata can be loaded from files or students can create their own. Although this project is similar to others, it has its own unique features. The development history, features, and future plans for this program are discussed.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Groce:2002:HMC, author = "Alex Groce and Willem Visser", title = "Heuristic Model Checking for {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2318", pages = "242--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:29 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2318.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2318/23180242.htm; http://link.springer-ny.com/link/service/series/0558/papers/2318/23180242.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Groce:2002:MCJ, author = "Alex Groce and Willem Visser", title = "Model checking {Java} programs using structural heuristics", journal = j-SIGSOFT, volume = "27", number = "4", pages = "12--21", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566175", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We describe work introducing heuristic search into the Java PathFinder model checker, which targets Java bytecode. Rather than focusing on heuristics aimed at a particular kind of error (such as deadlocks) we describe heuristics based on a modification of traditional branch coverage metrics and other structure measures, such as thread inter-dependency. We present experimental results showing the utility of these heuristics, and argue for the usefulness of structural heuristics as a class.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grosbol:2002:CJC, author = "P. Grosbol", title = "A Compact {Java} Class Library for {FITS}", journal = "Astronomical Society of the Pacific Conference Series", volume = "281", number = "??", pages = "136--139", year = "2002", CODEN = "????", ISSN = "1050-3390", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Grose:2002:MXJ, author = "Timothy J. Grose and Gary C. Doney and Stephen A. Brodsky", title = "Mastering {XMI}: Java programming with {XMI}, {XML}, and {UML}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xli + 434", year = "2002", ISBN = "0-471-38429-1", ISBN-13 = "978-0-471-38429-8", LCCN = "QA76.73.J38 G76 2002 Bar", bibdate = "Fri Sep 13 06:33:58 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, keywords = "document markup languages; Java (computer program language)", } @Book{Grosso:2002:JR, author = "William Grosso", title = "{Java RMI}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxiii + 545", year = "2002", ISBN = "1-56592-452-5", ISBN-13 = "978-1-56592-452-9", LCCN = "QA76.73.J38 G76 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Designing and building distributed applications.", acknowledgement = ack-nhfb, keywords = "application software -- development; electronic data processing -- distributed processing; Java (computer program language); RMI (computer architecture)", } @Book{Grosso:2002:JRD, author = "William Grosso", title = "{Java RMI}: Designing and building distributed applications", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxiii + 545", year = "2002", ISBN = "1-56592-452-5", ISBN-13 = "978-1-56592-452-9", LCCN = "QA76.73.J38 G78 2002", bibdate = "Mon Apr 18 14:55:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", note = "Designing and building distributed applications.", URL = "http://www.oreilly.com/catalog/9781565924529", acknowledgement = ack-nhfb, keywords = "application software -- development; electronic data processing -- distributed processing; Java (computer program language); Java Remote Method Invocation (RMI); RMI (computer architecture)", subject = "Java (Computer program language); RMI (Computer architecture); Electronic data processing; Distributed processing; Application software; Development", } @Article{Guha:2002:DII, author = "S. Guha and B. P. Le and I. Suzuki", title = "Design and Implementation of an Interactive {Java}-Based Tutor", journal = j-SIM-SERIES, volume = "34", number = "1", pages = "9--12", year = "2002", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Tue Apr 29 05:13:30 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Article{Gustedt:2002:TJP, author = "Jens Gustedt and Ole A. M{\ae}hle and Jan Arne Telle", title = "The Treewidth of {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2409", pages = "86--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:18 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2409.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2409/24090086.htm; http://link.springer-ny.com/link/service/series/0558/papers/2409/24090086.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Haggar:2002:JQD, author = "Peter Haggar", title = "{Java Q\&A}: Does {Java} Guarantee Thread Safety?", journal = j-DDJ, volume = "27", number = "6", pages = "91--83", month = jun, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed May 1 15:43:59 MDT 2002", bibsource = "http://www.ddj.com/articles/2002/0206/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Comments on lack of atomic-update guarantee in Java for objects larger than 32 bits, such as {\tt long} and {\tt double}, with sample code to exhibit the failure.", URL = "http://www.ddj.com/ftp/2002/2002_06/jqa0602.txt", abstract = "Additional resources include jqa0602.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Hagimont:2002:NFC, author = "Daniel Hagimont and No{\"e}l {De Palma}", title = "Non-functional Capability-Based Access Control in the {Java} Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2425", pages = "323--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:25 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2425.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2425/24250323.htm; http://link.springer-ny.com/link/service/series/0558/papers/2425/24250323.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Hall:2002:MSJ, author = "Marty Hall", title = "More Servlets and {JavaServer} Pages", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "752 (est.)", year = "2002", ISBN = "0-13-067614-4", ISBN-13 = "978-0-13-067614-6", LCCN = "QA76.73.J38 H3455 2001", bibdate = "Mon Apr 29 16:51:01 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130676144.html", acknowledgement = ack-nhfb, } @Book{Halloway:2002:CDJ, author = "Stuart Dabbs Halloway", title = "Component development for the {Java} platform", publisher = pub-AW, address = pub-AW:adr, pages = "xx + 334", year = "2002", ISBN = "0-201-75306-5", ISBN-13 = "978-0-201-75306-6", LCCN = "QA76.73.J38 H346 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "{DevelopMentor} series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); system design", } @Book{Hammond:2002:PLJ, author = "Michael (Michael T.) Hammond", title = "Programming for linguists: {Java} technology for language researchers", publisher = "Blackwell Publishers", address = "Malden, MA, USA", pages = "xi + 209", year = "2002", ISBN = "0-631-23041-6, 0-631-23042-4 (paperback)", ISBN-13 = "978-0-631-23041-0, 978-0-631-23042-7 (paperback)", LCCN = "P98 .H34 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computational linguistics; Java (computer program language)", } @Article{Hammouda:2002:PBJ, author = "I. Hammouda and K. Koskimies", title = "A Pattern-Based {J2EE} Application Development Environment", journal = j-NORDIC-J-COMPUT, volume = "9", number = "3", pages = "248--??", month = "Fall", year = "2002", CODEN = "NJCOFR", ISSN = "1236-6064", bibdate = "Wed Dec 24 09:24:58 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Selected papers of the Tenth Nordic Workshop on Programming Environment Research (NWPER'2002), August 18--20, 2002.", acknowledgement = ack-nhfb, fjournal = "Nordic Journal of Computing", } @Article{Haneda:2002:LJU, author = "I. Haneda and T. Kiyohara and N. Shiraishi", title = "{Linux\slash Java} --- Unified Platform for the Next-Generation of {Zaurus}", journal = "Sharp Technical Journal", volume = "84", publisher = "Sharp Kabushiki Gaisha Gijutsu Honbu", pages = "18--21", year = "2002", CODEN = "????", ISSN = "0285-0362", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hannemann:2002:DPI, author = "Jan Hannemann and Gregor Kiczales", title = "Design Pattern Implementation in {Java} and {AspectJ}", journal = j-SIGPLAN, volume = "37", number = "11", pages = "161--173", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Hapner:2002:JMS, author = "Mark Hapner", title = "{Java} message service {API} tutorial and reference: messaging for the {J2EE} platform", publisher = pub-AW, address = pub-AW:adr, pages = "xxi + 510", year = "2002", ISBN = "0-201-78472-6 (paperback)", ISBN-13 = "978-0-201-78472-5 (paperback)", LCCN = "QA76.73.J38 J3675 2002 Stacks SEMSTAX-NBKS", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java series", acknowledgement = ack-nhfb, keywords = "electronic mail systems; Java (computer program language)", } @Book{Harkey:2002:WJP, author = "Dan Harkey and Shan Appajodu and Mike Larkin", title = "Wireless {Java} programming for enterprise applications: mobile devices go corporate", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxiv + 690", year = "2002", ISBN = "0-471-21878-2", ISBN-13 = "978-0-471-21878-4", LCCN = "TK5103.2 .H369 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); wireless communication systems", } @Book{Harold:2002:XCB, editor = "Elliotte Rusty Harold", title = "The {XML CD} bookshelf: {XML} in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Version 1.0.", pages = "600 (est.)", year = "2002", ISBN = "0-596-00335-8", ISBN-13 = "978-0-596-00335-7", LCCN = "QA76.76", bibdate = "Mon Apr 18 15:05:16 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html; z3950.loc.gov:7090/Voyager", note = "One CD-ROM.", price = "US\$119.95", URL = "http://www.oreilly.com/catalog/9780596003357; http://www.oreilly.com/catalog/xmlcdbksf", acknowledgement = ack-nhfb, publishersummary = "O'Reilly's ``XML CD Bookshelf'' provides convenient online access to seven indispensable XML books--``XML in a Nutshell, Second Edition'', ``XSLT'', ``XML Schema'', ``SAX2'', ``Java & XML, Second Edition'', ``Java and XSLT'', and ``Perl & XML'' -- all from your CD-ROM drive. The CD has a master index for all seven books and a powerful search engine--and all the text is extensively hyper-linked--so you can find what you're looking for quickly.", remark = "Seven essential references on CD-ROM. Bonus book has title: XML in a nutshell / Elliotte Rusty Harold and W. Scott Means (2nd ed.). XML in a nutshell / Elliotte Rusty Harold -- XSLT / Doug Tidwell -- XML schema / Eric Van der Vlist -- SAX2 / David Brownell -- Java and XML / Brett McLaughlin -- Java and XSLT / Eric M. Burke -- Perl and XML / Erik T. Ray. System requirements: Browser software (such as Netscape Communicator, Internet Explorer, or Lynx) supporting HTML 4.0 or earlier versions. The search engine works with any Java-enabled browser supporting Java version 1.1.2 or later.", subject = "XML (Document markup language); XSLT (Computer program language); Java (Computer program language)", } @Book{Hassler:2002:JCP, author = "Vesna Hassler", title = "{Java} card for e-payment applications", publisher = pub-ARTECH, address = pub-ARTECH:adr, pages = "xvii + 362", year = "2002", ISBN = "1-58053-291-8", ISBN-13 = "978-1-58053-291-4", LCCN = "QA76.73.J38 J3638 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Artech House computer security series", acknowledgement = ack-nhfb, keywords = "Java (computer program language); smart cards", } @Article{Hawblitzel:2002:LFJ, author = "Chris Hawblitzel and Thorsten von Eicken", title = "{Luna}: a flexible {Java} protection system", journal = j-OPER-SYS-REV, volume = "36", number = "5S", pages = "391--403", month = dec, year = "2002", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Sat Aug 26 12:49:42 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Book{Hawlitzek:2002:J, author = "Florian Hawlitzek", title = "{Java 2}", publisher = pub-AW, address = pub-AW:adr, pages = "382", year = "2002", ISBN = "0-201-75880-6", ISBN-13 = "978-0-201-75880-1", LCCN = "QA76.73.J38 H3913 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Addison-Wesley nitty gritty programming series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Heinle:2002:DJC, author = "Nick Heinle and Bill Pena", title = "Designing with {JavaScript}: creating dynamic {Web} pages", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xi + 216", year = "2002", ISBN = "1-56592-360-X", ISBN-13 = "978-1-56592-360-7", LCCN = "QA76.73.J39 H45 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "O'Reilly Web studio", acknowledgement = ack-nhfb, keywords = "Internet programming; JavaScript (computer program language); Web sites -- design", } @Article{Hertz:2002:EFG, author = "Matthew Hertz and Stephen M. Blackburn and J. Eliot B. Moss and Kathryn S. McKinley and Darko Stefanovi{\'c}", title = "Error-free garbage collection traces: how to cheat and not get caught", journal = j-SIGMETRICS, volume = "30", number = "1", pages = "140--151", month = jun, year = "2002", CODEN = "????", DOI = "https://doi.org/10.1145/511334.511352", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:38:22 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Programmers are writing a large and rapidly growing number of programs in object-oriented languages such as Java that require garbage collection (GC). To explore the design and evaluation of GC algorithms quickly, researchers are using simulation based on traces of object allocation and lifetime behavior. The {\em brute force\/} method generates perfect traces using a whole-heap GC at every potential GC point in the program. Because this process is prohibitively expensive, researchers often use {\em granulated\/} traces by collecting only periodically, e.g., every 32K bytes of allocation. We extend the state of the art for simulating GC algorithms in two ways. First, we present a systematic methodology and results on the effects of trace granularity for a variety of copying GC algorithms. We show that trace granularity often distorts GC performance results compared with perfect traces, and that some GC algorithms are more sensitive to this effect than others. Second, we introduce and measure the performance of a new precise algorithm for generating GC traces which is over 800 times faster than the brute force method. Our algorithm, called Merlin, frequently timestamps objects and later uses the timestamps of dead objects to reconstruct precisely when they died. It performs only periodic garbage collections and achieves high accuracy at low cost, eliminating any reason to use granulated traces.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Article{Hibbard:2002:JDO, author = "William Hibbard and Curtis Rueden and Steve Emmerson and Tom Rink and David Glowacki and Tom Whittaker and Don Murray and David Fulker and John Anderson", title = "{Java} Distributed Objects for Numerical Visualization in {VisAD}", journal = j-CACM, volume = "45", number = "4ve", pages = "160--170", month = apr, year = "2002", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Tue Apr 9 14:09:15 MDT 2002", bibsource = "http://www.acm.org/cacm/0402/0402toc.html; http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Web only: not in printed issue.", URL = "http://www.acm.org/cacm/0402/portal.acm.org/cacm/ve2002/p160-hibbard.pdf", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Book{Hightower:2002:JTE, author = "Richard Hightower and Nicholas Lesiecki", title = "{Java} tools for extreme programming: mastering open source tools including {Ant}, {JUnit}, and {Cactus}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxvii + 516", year = "2002", ISBN = "0-471-20708-X", ISBN-13 = "978-0-471-20708-5", LCCN = "QA76.73.J38 H54 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Java open source library", acknowledgement = ack-nhfb, keywords = "extreme programming; Java (computer program language); open source software", } @Article{Hinke:2002:ICS, author = "John Hinke", title = "Implementing {C++} Servlet Containers", journal = j-DDJ, volume = "27", number = "4", pages = "52, 54--56", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/cppserv.txt", abstract = "By combining the performance benefits of C++ and the power of the Java servlet API, you can more easily create robust web applications. Additional resources include cppserv.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Hitchens:2002:JN, author = "Ron Hitchens", title = "{Java NIO}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 282", year = "2002", ISBN = "0-596-00288-2", ISBN-13 = "978-0-596-00288-6", LCCN = "QA76.73.J38 H58 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$34.95", URL = "http://safari.oreilly.com/0596002882; http://www.oreilly.com/catalog/javanio", acknowledgement = ack-nhfb, keywords = "computer input-output equipment; Java (computer program language); object-oriented programming (computer science)", publishersummary = "Java NIO explores the new I/O capabilities of version 1.4 in detail and shows you how to put these features to work to greatly improve the efficiency of the Java code you write. This compact volume examines the typical challenges that Java programmers face with I/O and shows you how to take advantage of the capabilities of the new I/O features. You'll learn how to put these tools to work using examples of common, real-world I/O problems and see how the new features have a direct impact on responsiveness, scalability, and reliability. Because the NIO APIs supplement the I/O features of version 1.3, rather than replace them, you'll also learn when to use new APIs and when the older 1.3 I/O APIs are better suited to your particular application.", } @Book{Horstmann:2002:BJ, author = "Cay S. Horstmann", title = "Big {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xviii + 1202", year = "2002", ISBN = "0-471-40248-6 (cloth)", ISBN-13 = "978-0-471-40248-0 (cloth)", LCCN = "QA76.73.J38 H674 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.loc.gov/catdir/toc/onix06/2001045305.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Horstmann:2002:BJP, author = "Cay S. Horstmann", title = "Big {Java}: programming and practice", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "????", year = "2002", ISBN = "0-471-40248-6 (cloth)", ISBN-13 = "978-0-471-40248-0 (cloth)", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Horstmann:2002:CJV, author = "Cay S. Horstmann and Gary Cornell", title = "Core {Java 2}, Volume {II}: Advanced Features", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Fifth", pages = "1232 (est.)", year = "2002", ISBN = "0-13-092738-4", ISBN-13 = "978-0-13-092738-5", LCCN = "????", bibdate = "Tue Mar 12 07:58:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130927384.html; http://www.sun.com/books/catalog/horstmann9/index.html", acknowledgement = ack-nhfb, } @Article{Hou:2002:PEJ, author = "Y. Hou and Y. Sun", title = "Partial Evaluation of {Java} Byte Code Program", journal = "Journal --- Shanghai Jiaotong University", volume = "36", number = "9", publisher = "Shanghai Jiaotong University Press", pages = "1301--1303", year = "2002", CODEN = "????", ISSN = "1006-2467", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hovemeyer:2002:AIJ, author = "David Hovemeyer and William Pugh and Jaime Spacco", title = "Atomic Instructions in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2374", pages = "133--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:57 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2374.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2374/23740133.htm; http://link.springer-ny.com/link/service/series/0558/papers/2374/23740133.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Huang:2002:JCA, author = "B. Huang and H. Lin", title = "A {Java\slash CGI} approach to developing a geographic virtual reality toolkit on the {Internet}", journal = j-COMP-GEOSCI, volume = "28", number = "1", pages = "13--19", month = feb, year = "2002", CODEN = "CGEODT, CGOSDN", ISSN = "0098-3004 (print), 1873-7803 (electronic)", ISSN-L = "0098-3004", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Geosciences", pagecount = "7", } @Book{Hubert:2002:CAB, author = "Richard Hubert", title = "Convergent architecture: building model-driven {J2EE} systems with {UML}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxv + 276", year = "2002", ISBN = "0-471-10560-0 (paperback)", ISBN-13 = "978-0-471-10560-2 (paperback)", LCCN = "QA76.9.A73 H8 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.convergentarchitecture.com", acknowledgement = ack-nhfb, keywords = "computer architecture; information technology; system design", } @Article{Hughes:2002:HMT, author = "Elliott Hughes", title = "How many trivial getter methods does {Java} have?", journal = j-SIGPLAN, volume = "37", number = "8", pages = "19--24", month = aug, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:06 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Huh:2002:DJB, author = "Moon Yul Huh and Kwangryeol Song", title = "{DAVIS}: A {Java}-based Data Visualization System", journal = j-COMP-STAT, volume = "17", number = "3", pages = "411--423", month = sep, year = "2002", CODEN = "CSTAEB", DOI = "https://doi.org/10.1007/s001800200116", ISSN = "0943-4062 (print), 1613-9658 (electronic)", ISSN-L = "0943-4062", bibdate = "Thu Jun 18 16:19:28 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/compstat.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1007/s001800200116", acknowledgement = ack-nhfb, ajournal = "Comp. Stat.", fjournal = "Computational Statistics", journal-URL = "http://link.springer.com/journal/180", } @Article{Huisman:2002:VJA, author = "Marieke Huisman", title = "Verification of {Java}'s {AbstractCollection} Class: {A} Case Study", journal = j-LECT-NOTES-COMP-SCI, volume = "2386", pages = "175--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:03 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2386.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2386/23860175.htm; http://link.springer-ny.com/link/service/series/0558/papers/2386/23860175.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hummel:2002:UVB, author = "Joe Hummel and Jean Mehta", title = "Using {Visual Basic} in the {CS} curriculum", journal = j-SIGCSE, volume = "34", number = "1", pages = "283--284", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563451", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Visual Basic is currently the most popular programming language in the United States. And yet, it is rarely found in traditional Computer Science (and related) curriculums. Perhaps this is due to the fact that VB is not truly object-oriented, but object-based. Or perhaps because VB is not an open language, instead supported only by tools from Microsoft Corporation and available only on the Windows platform. Or perhaps it is simply Microsoft itself, with its monopolistic tendencies. This panel will argue that Visual Basic --- while it should not replace the use of more traditional languages such as C++, Java, or Scheme --- fulfills an important role in modern CS and related curriculums. The panelists will highlight a few of the cases in which they have found VB to be exceedingly useful, and discuss their rationale for choosing VB over other languages.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Hunt:2002:JOO, author = "John Hunt", title = "{Java} and object orientation: an introduction", publisher = pub-SV, address = pub-SV:adr, edition = "Second", pages = "xxvii + 484", year = "2002", ISBN = "1-85233-569-6, 3-540-76201-9", ISBN-13 = "978-1-85233-569-4, 978-3-540-76201-0", LCCN = "QA76.73.J38 H86 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Ibbett:2002:WVC, author = "Roland N. Ibbett", title = "{WWW} visualisation of computer architecture simulations", journal = j-SIGCSE, volume = "34", number = "3", pages = "247--247", month = sep, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/637610.544516", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:56 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Simulation models of a number of computer architectures have been created using HASE, a Hierarchical Computer Architecture design and Simulation Environment,and automatically translated into WebHASE and JavaHASE applets which can be accessed via the WWW. These applets are being used both as visual aids and or student exercises.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ivancsy:2002:HWJ, author = "R. Ivancsy", title = "How to Write {Java} Applet?", journal = "Elektrotechnika", volume = "95", number = "10", publisher = "Maauar Elektrotechnikai Equesiilet Lapja", pages = "300--302", year = "2002", CODEN = "????", ISSN = "0367-0708", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{Jacob:2002:CAP, author = "Matthias Jacob and Keith Randall", title = "Cross-Architectural Performance Portability of a {Java Virtual Machine} Implementation", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/jacob.html", acknowledgement = ack-nhfb, } @Article{Jacobs:2002:DSD, author = "P. H. M. Jacobs and N. A. Lang and A. Verbraeck", title = "{D-SOL}: a Distributed {Java} based Discrete Event Simulation Architecture", journal = "Winter Simulation Conference", volume = "1", number = "??", pages = "793--800", year = "2002", CODEN = "WSCPDK", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Jenkins:2002:GJP, author = "Stephen B. Jenkins", title = "Generating {JavaScript} from {Perl}", journal = j-DDJ, volume = "27", number = "5", pages = "59--63", month = may, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Apr 4 06:46:15 MST 2002", bibsource = "http://www.ddj.com/articles/2002/0205/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_05/jscript.txt", abstract = "The techniques Stephen presents here help you provide users with a better UI and reduce the load on web servers. Additional resources include jscript.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Jennings:2002:JQ, author = "Mike Jennings", title = "{Java Q\&A}: How Do {I} Use the {Java} Plug-In Tool?", journal = j-DDJ, volume = "27", number = "1", pages = "93--94", month = jan, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_01/jqa0102.zip", abstract = "Sun Microsystems' freely available Java plug-in tool works with operating system/browser combinations ranging from Netscape Navigator and IE on Windows to Netscape Navigator on Linux. Mike shows how to use the tool to deploy Java 1.3-enabled applets. Additional resources include {\tt jqa0102.zip} (source).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Manual{Jibson:2002:JPU, author = "Randall W. Jibson and Matthew W. Jibson", title = "{Java} programs for using Newmark's method to model slope performance during earthquakes", type = "Open-file report", number = "02-201", institution = "U.S. Geological Survey", address = "Denver, CO, USA", edition = "Version 1.0", year = "2002", ISBN = "0-607-99026-0", ISBN-13 = "978-0-607-99026-3", LCCN = "QE539.2.S34 J53 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, annote = "Supersedes Open-file report 01-116. Shipping list number 2002-0030-E. Contains strong-motion data files required to conduct sliding-block analyses on slopes that are potentially susceptible to seismically triggered landslides.", keywords = "CD-ROMs; earthquake hazard analysis -- computer programs; Javaspaces technology; landslides -- mathematical models; slopes (soil mechanics) -- mathematical models", } @Article{Jipping:2002:UJD, author = "Michael J. Jipping and Steve Marlowe and Alexander Sherstov", title = "Using {Java} to design and test hardware circuits over a classroom network", journal = j-SIGCSE, volume = "34", number = "1", pages = "162--166", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563401", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "A crucial part of the Computer Organization course is the design and analysis of hardware circuits. To teach this part of the course efficiently and to involve the entire class in the design of circuits, we have designed the SCAN system. Starting with a textual specification of a circuit, SCAN generates Java classes that can be used to simulate the way the circuit works. These circuits can be simulated locally or can join with other circuits to simulate larger machine function over a network. This paper describes the SCAN system, the Java classes it generates, and the way we use this in the Computer Organization class.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Joisha:2002:EAJ, author = "Pramod G. Joisha and Samuel P. Midkiff and Mauricio J. Serrano and Manish Gupta", title = "Efficiently Adapting {Java} Binaries in Limited Memory Contexts", journal = j-INT-J-PARALLEL-PROG, volume = "30", number = "4", pages = "257--289", month = aug, year = "2002", CODEN = "IJPPE5", DOI = "https://doi.org/10.1023/A:1019851929010", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 6 16:40:00 MDT 2005", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=30&issue=4; http://www.kluweronline.com/issn/0885-7458; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ipsapp009.lwwonline.com/content/getfile/4773/28/3/abstract.htm; http://ipsapp009.lwwonline.com/content/getfile/4773/28/3/fulltext.pdf; http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=30&issue=4&spage=257", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", } @Article{Jones:2002:JMA, author = "M. Tim Jones", title = "{Java} Mobile Agents and the {Aglets SDK}", journal = j-DDJ, volume = "27", number = "1", pages = "42, 44, 46--48", month = jan, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_01/aglet.txt", abstract = "Tim uses the Aglets framework to develop Java mobile agents on Linux. The mobile agent he presents migrates to a number of hosts and performs data collection along the way. Additional resources include {\tt aglet.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Jorelid:2002:JFT, author = "Lennart Jorelid", title = "{J2EE FrontEnd} technologies: a programmer's guide to servlets, {JavaServer} pages, and {Enterprise JavaBeans}", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xiii + 1112", year = "2002", ISBN = "1-893115-96-8", ISBN-13 = "978-1-893115-96-5", LCCN = "TK5105.8885.J38 J67 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Books for professionals by professionals", acknowledgement = ack-nhfb, keywords = "JavaBeans; JavaServer pages; servlets; Web sites -- design", } @Article{Jung:2002:DIS, author = "Jun-Young Jung and Min-Soo Jung", title = "Design and Implementation of Small-Sized {Java Virtual Machine} on {Java} Platform {Jini}", journal = j-LECT-NOTES-COMP-SCI, volume = "2343", pages = "571--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:12 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2343.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2343/23430571.htm; http://link.springer.de/link/service/series/0558/papers/2343/23430571.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Kamin:2002:ICS, author = "Samuel N. Kamin and M. Dennis Mickunas and Edward M. Reingold", title = "An introduction to computer science using {Java}", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, edition = "Second", pages = "xxix + 753", year = "2002", ISBN = "0-07-232305-1", ISBN-13 = "978-0-07-232305-4", LCCN = "QA76 .K262 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer science; computer science textbooks; Java (computer program language)", } @Article{Kanalakis:2002:WSJ, author = "John M. {Kanalakis, Jr.}", title = "{Web} Services and {Java} Server Pages", journal = j-DDJ, volume = "27", number = "1", pages = "28, 30--34", month = jan, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_01/wsjsp.txt; http://www.ddj.com/ftp/2002/2002_01/wsjsp.zip", abstract = "Web services are collections of functions bundled together to deliver specific functionality to Internet-enabled applications. John presents a portal that shows how web applications can tie together distributed web services to offer a single solution. Additional resources include {\tt wsjsp.txt} (listings) and {\tt wsjsp.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Kawachiya:2002:LRJ, author = "Kiyokuni Kawachiya and Akira Koseki and Tamiya Onodera", title = "Lock Reservation: {Java} Locks Can Mostly Do Without Atomic Operations", journal = j-SIGPLAN, volume = "37", number = "11", pages = "130--141", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Kientzle:2002:JQH, author = "Tim Kientzle", title = "{Java Q\&A}: How Can {I} Make My {Java} Servlets Faster?", journal = j-DDJ, volume = "27", number = "4", pages = "97--99", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/jqa0402.txt; http://www.ddj.com/ftp/2002/2002_04/jqa0402.zip", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Kilgore:2002:OOS, author = "R. A. Kilgore", title = "Object-Oriented Simulation with {Java}, {Silk} and {OpenSML1.Net} Languages", journal = "Winter Simulation Conference", volume = "1", number = "??", pages = "227--233", year = "2002", CODEN = "WSCPDK", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @MastersThesis{Kim:2002:DIM, author = "Jong-Hak Kim", title = "Development of intelligent milling machine using {Java} tool: research project", type = "Master of Science, Plan II", school = "Department of Mechanical Engineering, University of California, Berkeley", address = "Berkeley, CA, USA", year = "2002", LCCN = "T7.49.2002 K565", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Kim:2002:SOC, author = "Do-Woo Kim and Min-Soo Jung", title = "A Study on the Optimization of Class File for {Java} Card Platform", journal = j-LECT-NOTES-COMP-SCI, volume = "2343", pages = "563--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:12 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2343.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2343/23430563.htm; http://link.springer.de/link/service/series/0558/papers/2343/23430563.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kniesel:2002:CCC, author = "G{\"u}nter Kniesel and Michael Austermann", title = "{CC4J} --- Code Coverage for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2370", pages = "155--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:55 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2370.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2370/23700155.htm; http://link.springer-ny.com/link/service/series/0558/papers/2370/23700155.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Knoernschild:2002:JDO, author = "Kirk Knoernschild", title = "{Java} design: objects, {UML}, and process", publisher = pub-AW, address = pub-AW:adr, pages = "xxiv + 277", year = "2002", ISBN = "0-201-75044-9 (paperback)", ISBN-13 = "978-0-201-75044-7 (paperback)", LCCN = "QA76.73.J38 K57 2002 Bar", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); UML (computer science)", } @Article{Ko:2002:CBA, author = "Ren-Song Ko and Matt W. Mutka", title = "A Component-Based Approach for Adaptive Soft Real-Time {Java} within Heterogeneous Environments", journal = j-PARALLEL-DIST-COMP-PRACT, volume = "5", number = "1", pages = "89--104", month = mar, year = "2002", CODEN = "????", ISSN = "1097-2803", bibdate = "Thu Sep 2 12:08:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/5/1.toc", acknowledgement = ack-nhfb, fjournal = "PDCP: Parallel and Distributed Computing Practices", } @Article{Komodromos:2002:UJD, author = "P. I. Komodromos and J. R. Williams", title = "Utilization of {Java} and Database Technology in the Development of a Combined Discrete and Finite Element Multibody Dynamics Simulator", journal = "Geotechnical Special Publication", volume = "117", pages = "118--124", year = "2002", CODEN = "????", ISSN = "0895-0563", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Koved:2002:ARA, author = "Larry Koved and Marco Pistoia and Aaron Kershenbaum", title = "Access Rights Analysis for {Java}", journal = j-SIGPLAN, volume = "37", number = "11", pages = "359--372", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Kozen:2002:ECI, author = "Dexter Kozen and Matt Stillerman", title = "Eager Class Initialization for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2469", pages = "71--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:34 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2469.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2469/24690071.htm; http://link.springer.de/link/service/series/0558/papers/2469/24690071.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kumar:2002:DPP, author = "R. V. Kumar and B. L. Narayanan and R. Govindarajan", title = "Dynamic Path Profile Aided Recompilation in a {Java} Just-In-Time Compiler", journal = j-LECT-NOTES-COMP-SCI, volume = "2552", pages = "495--505", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Feb 11 05:32:25 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Kumaran:2002:JTO, author = "S. Ilango Kumaran", title = "{Jini} Technology: An Overview", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xix + 358", year = "2002", ISBN = "0-13-033385-9", ISBN-13 = "978-0-13-033385-8", LCCN = "QA76.9.D5 K83 2002", bibdate = "Tue Mar 12 07:52:38 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$34.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130333859.html", acknowledgement = ack-nhfb, } @InProceedings{Kunkle:2002:WBI, author = "Wanda Kunkle", title = "A {Web}-Based Integral Evaluator: a Demonstration of the Successful Integration of {WebEQ}, {Maple}, and {Java}", crossref = "Anonymous:2002:MIC", pages = "??--??", year = "2002", bibdate = "Tue May 14 15:44:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.mathmlconference.org/2002/presentations.html", acknowledgement = ack-nhfb, } @Article{Kurtz:2002:EIE, author = "Barry L. Kurtz and Dee Parks and Eric Nicholson", title = "Effective {Internet} education: a progress report", journal = j-SIGCSE, volume = "34", number = "1", pages = "312--316", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563462", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Our Internet-based project is developing two courses to demonstrate the viability of a virtual classroom environment where the on-line student can interact both with the instructor and ``virtual classmates.'' Other course components include a hyperlinked textbook and laboratory experiences that stress learning-by-doing. We use Java on both the server side and the client side to support the classroom interaction and the laboratory activities. This paper illustrates some of the particular software technologies used. We discuss problems encountered, solutions found, and the ongoing development of materials.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kurzyniec:2002:MBT, author = "D. Kurzyniec and V. Sunderam", title = "The {MICROBE} Benchmarking Toolkit for {Java}: a Component-Based Approach", journal = j-LECT-NOTES-COMP-SCI, volume = "2330", pages = "709--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:35 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2330.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2330/23300709.htm; http://link.springer-ny.com/link/service/series/0558/papers/2330/23300709.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Lakshman:2002:OJD, author = "Bulusu Lakshman", title = "{Oracle} and {Java} development", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xv + 438", year = "2002", ISBN = "0-672-32117-3", ISBN-13 = "978-0-672-32117-7", LCCN = "QA76.9.D3 L35 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; Java (computer program language); Oracle (computer file)", } @Article{Laneve:2002:TSJ, author = "Cosimo Laneve", title = "A type system for {JVM} threads", journal = j-THEOR-COMP-SCI, volume = "290", number = "1", pages = "741--778", month = oct, year = "2002", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Wed Nov 20 18:15:29 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Book{Laszlo:2002:OOP, author = "Michael Jay Laszlo", title = "Object-oriented programming featuring graphical applications in {Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xii + 468", year = "2002", ISBN = "0-201-72627-0 (paperback)", ISBN-13 = "978-0-201-72627-5 (paperback)", LCCN = "QA76.73.C153 L396 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Lawton:2002:MJM, author = "George Lawton", title = "Moving {Java} into Mobile Phones", journal = j-COMPUTER, volume = "35", number = "6", pages = "17--20", month = jun, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/06/r6017.htm; http://csdl.computer.org/dl/mags/co/2002/06/r6017.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Book{Lea:2002:HEE, author = "Rodger Lea", title = "{HAVi}: example by example: {Java} programming for home entertainment devices", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxix + 451", year = "2002", ISBN = "0-13-060035-0", ISBN-13 = "978-0-13-060035-6", LCCN = "TK7881.3 .H39 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Prentice Hall PTR example by example series", acknowledgement = ack-nhfb, keywords = "home entertainment systems; Java (computer program language)", } @Article{League:2002:TPC, author = "Christopher League and Zhong Shao and Valery Trifonov", title = "Type-preserving compilation of {Featherweight Java}", journal = j-TOPLAS, volume = "24", number = "2", pages = "112--152", month = mar, year = "2002", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Aug 1 06:48:02 MDT 2002", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Leavens:2002:FTJ, author = "Gary T. Leavens and Sophia Drossopoulou and Susan Eisenbach and Arnd Poetzsch-Heffter and Erik Poll", title = "Formal Techniques for {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2323", pages = "30--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:31 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2323.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2323/23230030.htm; http://link.springer-ny.com/link/service/series/0558/papers/2323/23230030.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{LEcuyer:2002:SFS, author = "P. L'Ecuyer and L. Meliani and J. Vaucher", title = "{SSJ}: a Framework for Stochastic Simulation in {Java}", journal = "Winter Simulation Conference", volume = "1", number = "??", pages = "234--242", year = "2002", CODEN = "WSCPDK", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lee:2002:AOI, author = "Ji-Hyun Lee and Cheol-Jung Yoo and Ok-Bae Chang", title = "Analysis of object interaction during the enterprise {JavaBeans} lifecycle using formal specification technique", journal = j-SIGPLAN, volume = "37", number = "6", pages = "82--92", month = jun, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:04 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Lee:2002:POO, author = "Richard C. Lee and William M. Tepfenhart", title = "Practical object-oriented development with {UML} and {Java}", publisher = pub-PH, address = pub-PH:adr, pages = "xxv + 468", year = "2002", ISBN = "0-13-067238-6", ISBN-13 = "978-0-13-067238-4", LCCN = "QA76.64 .L448 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language); object-oriented programming (computer science); UML (computer science)", } @Article{Lefranc:2002:CPA, author = "S. Lefranc and D. Naccache", title = "{Cut-\&-Paste} Attacks with {JAVA}", journal = j-LECT-NOTES-COMP-SCI, volume = "2587", pages = "1--15", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lehrbaum:2002:FESb, author = "Rick Lehrbaum", title = "Focus on Embedded Systems: Embedded {Linux} and {Java} --- Wave of the Future?", journal = j-LINUX-J, volume = "94", pages = "54, 56", month = feb, year = "2002", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Fri Feb 8 16:59:02 MST 2002", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue94/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Leroy:2002:BVJ, author = "Xavier Leroy", title = "Bytecode verification on {Java} smart cards", journal = j-SPE, volume = "32", number = "4", pages = "319--340", day = "10", month = apr, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.438", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Mar 23 17:30:52 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/91016433/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=91016433&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Lex:2002:EVN, author = "M. Lex", title = "{Einf{\"u}hrung, Vorteil und N{\"u}tzen eines JAVA-basierten Betriebsmanagementsystems am Beispiel einer M{\"u}llverbrennungsanlage}. ({German}) {Introduction, advantages, and use of a Java-based business management system with example of a waste incinerator}", journal = "VDI Berichte", volume = "1711", publisher = "VDI", pages = "23--32", year = "2002", CODEN = "????", ISSN = "0083-5560", bibdate = "Tue Dec 17 05:55:18 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Article{Li:2002:AIF, author = "Bixin Li", title = "Analyzing information-flow in {Java} program based on slicing technique", journal = j-SIGSOFT, volume = "27", number = "5", pages = "98--103", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571683", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditional information-flow analysis is mainly based on dataflow and control-flow analysis. In object-oriented program, because of pointer aliasing, inheritance, and polymorphism, information-flow analysis become very complicated. Especially, it is difficult to rely only on normal data and control-flow analysis techniques. some new approaches are required to analyze the information-flow between components in object-oriented program. In this paper, object-oriented program slicing technique is introduced. By this technique, the amount of information-flow, the width of information-flow and correlation coefficient between components can be computed. Some applications of the information-flow are also discussed and analyzed in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2002:RBA, author = "T. Li and R. Bhargava and L. K. John", title = "Rehashable {BTB}: An Adaptive Branch Target Buffer to Improve the Target Predictability of {Java} Code", journal = j-LECT-NOTES-COMP-SCI, volume = "2552", pages = "597--608", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Feb 11 05:32:25 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Liang:2002:EPS, author = "Donglin Liang and Maikel Pennings and Mary Jean Harrold", title = "Evaluating the precision of static reference analysis using profiling", journal = j-SIGSOFT, volume = "27", number = "4", pages = "22--32", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566176", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program analyses and optimizations of Java programs require reference information that determines the instances that may be accessed through dereferences. Reference information can be computed using reference analysis. This paper presents a set of studies that evaluate the precision of two existing approaches for identifying instances and one approach for computing reference information in a reference analysis. The studies use dynamic reference information collected during run-time as a lower bound approximation to the precise reference information. The studies measure the precision of an existing approach by comparing the information computed using the approach with the lower bound approximation. The paper also presents case studies that attempt to identify the cases under which an existing approach is not effective. The presented studies provide information that may guide the usage of existing reference-analysis techniques and the development of new reference analysis techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Liang:2002:IJP, author = "Y. Daniel Liang", title = "Introduction to {Java} programming with {Jbuilder 4}", publisher = pub-PH, address = pub-PH:adr, pages = "xxxii + 939", year = "2002", ISBN = "0-13-033364-6", ISBN-13 = "978-0-13-033364-3", LCCN = "QA76.73.J38 L5313 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Jbuilder", } @Article{Lind:2002:RPH, author = "L. Lind and E. Sundvall and D. Karlsson and N. Shahsavar and H. Ahlfeldt", title = "Requirements and prototyping of a home health care application based on emerging {Java} technology", journal = "International Journal of Medical Informatics", volume = "68", number = "1--3", pages = "129--139", year = "2002", CODEN = "????", ISSN = "1386-5056", bibdate = "Tue Dec 24 07:09:37 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2002:JIA, author = "J. Liu and A. C. Myers", title = "{JMatch}: Iterable Abstract Pattern Matching for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2562", pages = "110--127", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Feb 11 05:32:25 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lobosco:2002:JHP, author = "M. Lobosco and C. Amorim and O. Loques", title = "{Java} for high-performance network-based computing: a survey", journal = j-CCPE, volume = "14", number = "1", pages = "1--31", month = jan, year = "2002", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.614", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Thu Apr 11 06:53:47 MDT 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/91014114/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=91014114&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Long:2002:BSM, author = "Carol A. Long and V. V. S. Raveendra and Tope Omitola", title = "Bookshelf: Software Manufacturing Manager's Handbook; Inside {Java 2} Platform Security; So You Want to Build an Operating System", journal = j-IEEE-SOFTWARE, volume = "19", number = "4", pages = "131--133", month = jul # "\slash " # aug, year = "2002", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2002.1020300", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Fri Oct 24 16:31:55 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Review of {\em Software Product Lines: Practices and Patterns\/} by Paul Clements and Linda Northrop, {\em Inside Java 2 Platform Security: Architecture, API Design and Implementation\/} by Li Gong, and {\em Applied Operating Systems Concepts\/} by Avi Silberschatz, Peter B. Galvin, Abraham Silberschatz, and Greg Gagne.", URL = "http://dlib.computer.org/so/books/so2002/pdf/s4131.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Lorenzen:2002:CCW, author = "T. Lorenzen and W. Heilman", title = "{CS1} and {CS2}: Write Computer Games in {Java}!", journal = j-SIGCSE, volume = "34", number = "4", pages = "99--100", year = "2002", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Loton:2002:WCM, author = "Tony Loton", title = "{Web} content mining with {Java}: techniques for exploiting the {World Wide Web}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xviii + 305", year = "2002", ISBN = "0-470-84311-X", ISBN-13 = "978-0-470-84311-6", LCCN = "QA76.9.D343 L68 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data mining; Java (computer program language)", } @Book{Loy:2002:JS, author = "Marc Loy and Robert Eckstein and David Wood and James E. lliott and Brian Cole", title = "{Java} Swing", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxiv + 1252", year = "2002", ISBN = "0-596-00408-7", ISBN-13 = "978-0-596-00408-8", LCCN = "QA76.73.J38 J3855 2003", bibdate = "Sat Jul 17 07:27:35 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$54.95", URL = "http://www.oreilly.com/catalog/jswing2", acknowledgement = ack-nhfb, publishersummary = "This second edition of Java Swing thoroughly covers all the features available in Java 2 SDK 1.3 and 1.4. More than simply a reference, this new edition takes a practical approach. It is a book by developers for developers, with hundreds of useful examples, from beginning level to advanced, covering every component available in Swing.\par Whether you're a seasoned Java developer or just trying to find out what Java can do, you'll find Java Swing, 2nd edition an indispensable guide.", } @Article{Lutz:2002:BAN, author = "Michael J. Lutz", title = "Bookshelf: Architecture by the Numbers [{Computer Architecture: A Quantitative Approach}]; Half a {Java} Tone [{Algorithms in Java}]; Embedded Systems Simulation [{Embedded Systems and Computer Architecture}]; Brand-Name Multicasting [{Interdomain Multicast Routing: Practical Juniper Networks and Cisco Systems Solutions}]", journal = j-COMPUTER, volume = "35", number = "11", pages = "77--77", month = nov, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/11/ry077.htm; http://csdl.computer.org/dl/mags/co/2002/11/ry077.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Lykins:2002:SYB, author = "D. Lykins", title = "Should You Bet Your Business on {Java} or {.NET}?", journal = "E Business Advisor", volume = "20", number = "1", publisher = "Advisor Publications", pages = "18--24", year = "2002", CODEN = "????", ISSN = "1098-8912", bibdate = "Tue Nov 26 06:24:58 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lyon:2002:SMI, author = "Douglas Lyon", title = "Simulating multiple inheritance in {Java}", journal = j-CCPE, volume = "14", number = "12", pages = "987--1008", month = oct, year = "2002", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.703", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat Nov 9 12:24:20 MST 2002", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/98516164/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=98516164{\&}PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Book{Mahmoud:2002:LWJ, author = "Qusay H. Mahmoud", title = "Learning Wireless {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 245", year = "2002", ISBN = "0-596-00243-2", ISBN-13 = "978-0-596-00243-5", LCCN = "QA76.73.J38 M323 2002; TK5103.2 .M33 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", note = "Help for new J2ME developers. Covers Motorola and Palm hardware.", price = "US\$34.95", URL = "http://safari.oreilly.com/0596002432; http://www.oreilly.com/catalog/wirelessjava", acknowledgement = ack-nhfb, keywords = "Java (computer program language); wireless communication systems", publishersummary = "Learning Wireless Java is for Java developers who want to create applications for the Micro Edition audience using the Connected, Limited Device Configuration and the Mobile Information Device Profile (MIDP). These APIs specifically for devices such as mobile phones and pagers, allowing programmers to create MIDlet applications. This book offers a solid introduction to J2ME and MIDP, including the javax.microedition classes, as well as classes surrounding the features of the various platforms that the J2ME supports.", } @Article{Marques:2002:BSJ, author = "Paulo Marques", title = "Building Secure {Java RMI} Servers", journal = j-DDJ, volume = "27", number = "11", pages = "36, 38, 40--42, 44", month = nov, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:19 MDT 2003", bibsource = "http://www.ddj.com/articles/2002/0211/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7644/ddj0211d/", abstract = "Paulo uses the proxy pattern along with the Java Authentication and Authorization Service API to build secure Java Remote Method Invocation servers that allow only properly authenticated users access to systems.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Masala:2002:JBG, author = "S. Masala and D. Chan and H. Lu and R. Chalaturnyk", title = "A {Java}-Based Graphical User Interface for a {$2$-D} Discrete Element Program", journal = "Geotechnical Special Publication", volume = "117", pages = "125--132", year = "2002", CODEN = "????", ISSN = "0895-0563", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Maurer:2002:CPL, author = "W. Douglas Maurer", title = "The comparative programming languages course: a new chain of development", journal = j-SIGCSE, volume = "34", number = "1", pages = "336--340", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563472", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "The programming language concepts which ought to be presented in the comparative programming languages course (either graduate or undergraduate) are all covered by choosing C++, Java, Perl, and Python as the languages to be compared. These include dynamic typing, object orientation, multiple inheritance, interpreters and compilers, keyword and default parameters, generics, operator overloading, complex numbers, universal hierarchies, exceptions, and garbage collection. We describe such a course, which we have given.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Mazumdar:2002:JBC, author = "S. Mazumdar and J. F. Leathrum and O. R. Gonzalez", title = "A {JAVA} Based Circuit Diagram Tool for An Intelligent Questioning and Problem Solving System", journal = j-SIM-SERIES, volume = "34", number = "1", pages = "3--8", year = "2002", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Tue Apr 29 05:13:30 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Book{McLaughlin:2002:BJE, author = "Brett McLaughlin", title = "Building {Java} enterprise applications: vol. 1: architecture", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 302", year = "2002", ISBN = "0-596-00123-1", ISBN-13 = "978-0-596-00123-0", LCCN = "QA76.73.J38 M38 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Designing with EJBs, databases, and directory servers.", acknowledgement = ack-nhfb, keywords = "database design; Java (computer program language); Web servers", } @Book{McLaughlin:2002:JXD, author = "Brett McLaughlin", title = "{Java} and {XML} data binding", publisher = pub-ORA, address = pub-ORA:adr, pages = "xi + 200", year = "2002", ISBN = "0-596-00278-5", ISBN-13 = "978-0-596-00278-7", LCCN = "QA76.73.J38 M39 2002 Stacks", bibdate = "Fri Sep 13 06:33:58 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Nutshell handbook", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Article{Mehner:2002:JUB, author = "Katharina Mehner", title = "{JaVis}: a {UML}-Based Visualization and Debugging Environment for Concurrent {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2269", pages = "163--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:05 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2269.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2269/22690163.htm; http://link.springer-ny.com/link/service/series/0558/papers/2269/22690163.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Metsker:2002:DPJ, author = "Steven John Metsker", title = "Design patterns {Java} workbook", publisher = pub-AW, address = pub-AW:adr, pages = "xviii + 475", year = "2002", ISBN = "0-201-74397-3 (paperback)", ISBN-13 = "978-0-201-74397-5 (paperback)", LCCN = "QA76.73.J38 M483 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "The software patterns series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Miecznikowski:2002:DJB, author = "Jerome Miecznikowski and Laurie Hendren", title = "Decompiling {Java} Bytecode: Problems, Traps and Pitfalls", journal = j-LECT-NOTES-COMP-SCI, volume = "2304", pages = "111--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:22 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2304.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2304/23040111.htm; http://link.springer-ny.com/link/service/series/0558/papers/2304/23040111.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Mikheev:2002:EEL, author = "Vitaly V. Mikheev and Stanislav A. Fedoseev and Vladimir V. Sukharev and Nikita V. Lipsky", title = "Effective Enhancement of Loop Versioning in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2304", pages = "293--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:22 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2304.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2304/23040293.htm; http://link.springer-ny.com/link/service/series/0558/papers/2304/23040293.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Mikheev:2002:OEJ, author = "V. Mikheev and N. Lipsky and D. Gurchenkov and P. Pavlov and V. Sukharev and A. MarkovS. Kuksenko and S. Fedoseev and D. Leskov and A. Yeryomin", editor = "", booktitle = "Proceedings of the third international workshop on Software and performance: WOSP '02, July 24--26, 2002 Rome, Italy", title = "Overview of {Excelsior JET}, a High Performance Alternative to {Java Virtual Machines}", publisher = pub-ACM, address = pub-ACM:adr, pages = "104--113", year = "2002", ISBN = "", ISBN-13 = "", LCCN = "", bibdate = "Mon Apr 18 15:13:51 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Milanova:2002:POS, author = "Ana Milanova and Atanas Rountev and Barbara G. Ryder", title = "Parameterized object sensitivity for points-to and side-effect analyses for {Java}", journal = j-SIGSOFT, volume = "27", number = "4", pages = "1--11", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566174", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The goal of points-to analysis for Java is to determine the set of objects pointed to by a reference variable or a reference objet field. Improving the precision of practical points-to analysis is important because points-to information has a wide variety of client applications in optimizing compilers and software engineering tools. In this paper we present object sensitivity, a new form of context sensitivity for flow-insensitive points-to analysis for Java. The key idea of our approach is to analyze a method separately for each of the objects on which this method is invoked. To ensure flexibility and practicality, we propose a parameterization framework that allows analysis designers to control the tradeoffs between cost and precision in the object-sensitive analysis. Side-effect analysis determines the memory locations that may be modified by the execution of a program statement. This information is needed for various compiler optimizations and software engineering tools. We present a new form of side-effect analysis for Java which is based on object-sensitive points-to analysis. We have implemented one instantiation of our parameterized object-sensitive points-to analysis. We compare this instantiation with a context-insensitive points-to analysis for Java which is based on Andersen's analysis for C [4]. On a set of 23 Java programs, our experiments show that the two analyses have comparable cost. In some cases the object-sensitive analysis is actually faster than the context-insensitive analysis. Our results also show that object sensitivity significantly improves the precision of side-effect analysis, call graph construction, and virtual call resolution. These experiments demonstrate that object-sensitive analyses can achieve significantly better precision than context-insensitive ones, while at the same time remaining efficient and practical.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Moore:2002:BED, author = "Thomas K. Moore", title = "Bringing the enterprise into a database systems course", journal = j-SIGCSE, volume = "34", number = "1", pages = "262--265", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563443", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Most database systems courses concentrate on teaching the principles of relational databases. An alternative approach is one in which those principles are taught within the context of emerging enterprise systems. A description is given in this paper of a course that has been successfully taught at the undergraduate level that uses the Java 2 Enterprise Edition (J2EE) model, and its services, to illustrate basic database principles.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Moreau:2002:MOJ, author = "Luc Moreau and Daniel Ribbens", title = "Mobile objects in {Java}", journal = j-SCI-PROG, volume = "10", number = "1", pages = "91--100", year = "2002", CODEN = "SCIPEV", ISSN = "1058-9244 (print), 1875-919X (electronic)", ISSN-L = "1058-9244", bibdate = "Sat Oct 26 14:52:27 MDT 2002", bibsource = "http://www.iospress.nl/site/html/10589244.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://iospress.metapress.com/app/home/contribution.asp%3Fwasp=9ejnuvwuvby9737jte27%26referrer=parent%26backto=issue%2C9%2C9%3Bjournal%2C2%2C12%3Blinkingpublicationresults%2C1%2C1", acknowledgement = ack-nhfb, fjournal = "Scientific Programming", journal-URL = "http://iospress.metapress.com/content/1058-9244", } @Article{Moreira:2002:NJH, author = "Jos{\'e} E. Moreira and Samuel P. Midkiff and Manish Gupta and others", title = "{NINJA}: {Java} for high performance numerical computing", journal = j-SCI-PROG, volume = "10", number = "1", pages = "19--33", year = "2002", CODEN = "SCIPEV", ISSN = "1058-9244 (print), 1875-919X (electronic)", ISSN-L = "1058-9244", bibdate = "Sat Oct 26 14:52:27 MDT 2002", bibsource = "http://www.iospress.nl/site/html/10589244.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://iospress.metapress.com/app/home/contribution.asp%3Fwasp=9ejnuvwuvby9737jte27%26referrer=parent%26backto=issue%2C3%2C9%3Bjournal%2C2%2C12%3Blinkingpublicationresults%2C1%2C1", acknowledgement = ack-nhfb, fjournal = "Scientific Programming", journal-URL = "http://iospress.metapress.com/content/1058-9244", } @Article{Morris:2002:AGJ, author = "D. S. Morris", title = "Automatically grading {Java} programming assignments via reflection, inheritance, and regular expressions", journal = j-FRONTIERS-EDU-CONF, volume = "1", number = "??", pages = "T3G-22--??", year = "2002", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Book{Muchow:2002:CJT, author = "John W. Muchow", title = "Core {J2ME} Technology and {MIDP}", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxiii + 710", year = "2002", ISBN = "0-13-066911-3", ISBN-13 = "978-0-13-066911-7", LCCN = "QA76.73.J38 M83 2002", bibdate = "Tue Mar 12 07:50:58 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", series = "Sun Microsystems Press Java series", URL = "http://www.phptr.com/ptrbooks/ptr_0130669113.html; http://www.sun.com/books/catalog/muchow/", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Wireless communication systems", } @Article{Nagasaki:2002:GON, author = "M. Nagasaki and A. Doi and M. Sasaki and C. J. Savoie and H. Matsuno and S. Miyano", title = "Genomic Object Net in {Java}: a Platform for Biopathway Modeling and Simulation", journal = "Genome Informatics Series", volume = "SERS13", publisher = "Universal Academy Press Inc.", pages = "252--253", year = "2002", CODEN = "????", bibdate = "Tue Apr 22 09:22:21 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Narayanan:2002:JM, author = "Vijaykrishnan Narayanan and Mario I. Wolczko", title = "{Java} microarchitectures", number = "SECS 679", publisher = pub-KLUWER, address = pub-KLUWER:adr, pages = "xiv + 252", year = "2002", ISBN = "1-4020-7034-9", ISBN-13 = "978-1-4020-7034-1", LCCN = "QA76.73.J38 J376 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "The Kluwer international series in engineering and computer science", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Naumovich:2002:CAC, author = "Gleb Naumovich", title = "A conservative algorithm for computing the flow of permissions in {Java} programs", journal = j-SIGSOFT, volume = "27", number = "4", pages = "33--43", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566178", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open distributed systems are becoming increasingly popular. Such systems include components that may be obtained from a number of different sources. For example, Java allows run-time loading of software components residing on remote machines. One unfortunate side-effect of this openness is the possibility that ``hostile'' software components may compromise the security of both the program and the system on which it runs. Java offers a built-in security mechanism, using which programmers can give permissions to distributed components and check these permissions at run-time. This security model is flexible, but using it is not straightforward, which may lead to insufficiently tight permission checking and therefore breaches of security. In this paper, we propose a data flow algorithm for automated analysis of the flow of permissions in Java programs. Our algorithm produces, for a given instruction in the program, a set of permissions that are checked on all possible executions up to this instruction. This information can be used in program understanding tools or directly for checking properties that assert what permissions must always be checked before access to certain functionality is allowed. The worst-case complexity of our algorithm is low-order polynomial in the number of program statements and permission types, while comparable previous approaches have exponential costs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neelands:2002:UDJ, author = "K. Neelands and R. Ledbetter and S. Foti and E. Alkazemi", title = "Using {DHTML} and {Java} to Synergistically Combine Text-Based and Interactive Instructional Materials", journal = "Journal of Interactive Instruction Development", volume = "15", number = "1", pages = "19--26", year = "2002", CODEN = "????", ISSN = "1040-0370", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Newhall:2002:CPC, author = "Tia Newhall and Lisa Meeden", title = "A comprehensive project for {CS2}: combining key data structures and algorithms into an integrated {Web} browser and search engine", journal = j-SIGCSE, volume = "34", number = "1", pages = "386--390", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563492", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/hash.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "We present our experience using a large, real-world application as a course project for the second half of the semester of a CS2 course. Our primary goal for the project was to create an engaging application that incorporated most of the key data structures and algorithms introduced in the course. Specifically, the project uses binary search trees, priority queues, hash tables, and graphs. The project consisted of four parts combined to build an integrated web browser and search engine in Java. A key benefit of an incremental, long-term project of this type is that students quickly learn that their initial design and implementation decisions have a significant impact on the eventual extensibility and performance of their software. This provides numerous opportunities for students to recognize the importance of software engineering techniques and complexity analysis in the development of a successful application. We present students' responses to the project which show that they overwhelmingly enjoyed the project and felt that it helped them to see how the data structures and algorithms discussed in the course are used in real software.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Newsome:2002:PCD, author = "Matt Newsome and Des Watson", title = "Proxy compilation of dynamically loaded {Java} classes with {MoJo}", journal = j-SIGPLAN, volume = "37", number = "7", pages = "204--212", month = jul, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:05 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Nicholas:2002:CID, author = "Nicholas Galbreath", title = "Cryptography for {Internet} and database applications: developing secret and public key techniques with {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "400", year = "2002", ISBN = "0-471-21029-3", ISBN-13 = "978-0-471-21029-0", LCCN = "QA76.9.A25 G35 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer security; cryptography; database security; Internet -- security measures; Java (computer program language)", } @Book{Niemeyer:2002:LJ, author = "Pat Niemeyer and Jonathan Knudsen", title = "Learning Java", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvii + 807", year = "2002", ISBN = "0-596-00285-8", ISBN-13 = "978-0-596-00285-5", LCCN = "QA76.73.J38 N545 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$44.95", URL = "http://safari.oreilly.com/0596002858; http://www.oreilly.com/catalog/learnjava2", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", publishersummary = "This new edition of Learning Java has been expanded and updated for Java 2 Standard Edition SDK 1.4. It comprehensively addresses important topics such as Web applications, servlets, and XML that are increasingly driving enterprise applications. This edition provides full coverage of all Java 1.4 language features including assertions and exception chaining as well as new APIs such as regular expressions and NIO, the new I/O package. New Swing features and components are described along with updated coverage of the JavaBeans component architecture using the open source NetBeans IDE the latest information about Applets and the Java Plug-in for all major Web browsers.", } @Book{Nino:2002:IPO, author = "Jaime Nino and Frederick A. Hosch", title = "An introduction to programming and object-oriented design using {JAVA}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxx + 733", year = "2002", ISBN = "0-471-35489-9 (paperback)", ISBN-13 = "978-0-471-35489-5 (paperback)", LCCN = "QA76.64 .N57 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.loc.gov/catdir/toc/onix05/2001017636.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Nishiyama:2002:SCA, author = "A. Nishiyama and K. Miyoshi and T. Hikita and K. Tsukamoto and M. Tsujigado", title = "A Study on {CORBA} Applications for Sequence Control in {Ada95} and {Java}", journal = "IECON Proceedings", volume = "3", number = "??", pages = "2397--2402", year = "2002", CODEN = "????", ISSN = "????", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Nisley:2002:ES, author = "Ed Nisley", title = "Embedded Space: {Java}: Stirring the Cup", journal = j-DDJ, volume = "27", number = "2", pages = "90, 92--93", month = feb, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "So, is embedded-systems development a cup you can pour Java into? That's the question Ed examines this month.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Nisley:2002:ESJ, author = "Ed Nisley", title = "Embedded Space: {Java}: The Mix", journal = j-DDJ, volume = "27", number = "3", pages = "83--84, 86", month = mar, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:42 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Noonan:2002:UTF, author = "Robert E. Noonan and Richard H. Prosl", title = "Unit testing frameworks", journal = j-SIGCSE, volume = "34", number = "1", pages = "232--236", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563429", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "In this paper we explore frameworks for performing unit testing in Java. The vehicle for this exploration is a student-written, skeleton program developed for the Computer Graphics course. Our analysis of this one experiment leads us to speculate what benefits in program development and design might accrue by requiring students to unit test their own programs.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Nyberg:2002:WSW, author = "Greg Nyberg", title = "{WebLogic 6.1} Server Workbook for {Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "256 (est.)", year = "2002", ISBN = "0-596-00417-6", ISBN-13 = "978-0-596-00417-0", LCCN = "????", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$24.95", URL = "http://www.oreilly.com/catalog/weblogicworkbook", acknowledgement = ack-nhfb, publishersummary = "Although EJB applications themselves are portable, the manner in which developers install and run EJB products varies widely from one vendor to the next. The goal of this WebLogic workbook is to discuss vendor specific requirements and best practices and introduce tools like the WebLogic Administration Console, all in the contest of building and running the example programs for O'Reilly's Enterprise JavaBeans, 3rd edition.\par The Workbook guides you step-by-step, explaining how to build and deploy working solutions in a particular application server, and provides useful hints, tips and warnings. This WebLogic 6.1 Workbook was originally published by Enterprise JavaBeans author Richard Monson-Haefel's Titan Books publishing company. O'Reilly thought so highly of it, we bought the rights to publish it ourselves, in order to give more developers access to this critical information.", } @Book{Oaks:2002:JN, author = "Scott Oaks and Li Gong and Bernard Traversat", title = "{JXTA} in a Nutshell", publisher = pub-ORA, address = pub-ORA:adr, pages = "xii + 401", year = "2002", ISBN = "0-596-00236-X", ISBN-13 = "978-0-596-00236-7", LCCN = "TK5105.525 .O255 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$34.95", URL = "http://www.oreilly.com/catalog/jxtaian", acknowledgement = ack-nhfb, keywords = "Java (computer program language); peer-to-peer architecture (computer networks)", publishersummary = "O'Reilly's pioneering reference is the first and last word on this powerful distributed computing technology. JXTA in a Nutshell delivers all the information you need to get started, including an overview of P2P distributed computing, an explanation of the JXTA Project's new platform, and ways that developers can become a part of the development effort.\par JXTA in a Nutshell introduces major concepts in a hands-on way by explaining them in context to the shell, and contains a complete reference to the JXTA application bindings. Also included is the full JXTA protocol specification. The book covers important topics such as security, and how the JXTA technology fits into the standard Java classes.", xxauthor = "Bernard Traversat and Scott Oaks and Li Gong", xxnote = "Check author order??", } @Article{Oechsle:2002:JAP, author = "Rainer Oechsle and Thomas Schmitt", title = "{JAVAVIS}: Automatic Program Visualization with Object and Sequence Diagrams Using the {Java} Debug Interface {(JDI)}", journal = j-LECT-NOTES-COMP-SCI, volume = "2269", pages = "176--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:05 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2269.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2269/22690176.htm; http://link.springer-ny.com/link/service/series/0558/papers/2269/22690176.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ogata:2002:BFOa, author = "Kazunori Ogata and Hideaki Komatsu and Toshio Nakatani", title = "Bytecode fetch optimization for a {Java} interpreter", journal = j-COMP-ARCH-NEWS, volume = "30", number = "5", pages = "58--67", month = dec, year = "2002", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:41:23 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Ogata:2002:BFOb, author = "Kazunori Ogata and Hideaki Komatsu and Toshio Nakatani", title = "Bytecode Fetch Optimization for a {Java} Interpreter", journal = j-OPER-SYS-REV, volume = "36", number = "5", pages = "58--67", month = dec, year = "2002", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Sat Aug 26 08:55:56 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Article{Ogata:2002:BFOc, author = "Kazunori Ogata and Hideaki Komatsu and Toshio Nakatani", title = "Bytecode Fetch Optimization for a {Java} Interpreter", journal = j-SIGPLAN, volume = "37", number = "10", pages = "58--67", month = oct, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", note = "Also published as Computer Architecture News (ACM SIGARCH) {\bf 37}(5) 58--67 (2002).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Oheimb:2002:HLN, author = "David von Oheimb and Tobias Nipkow", title = "{Hoare} Logic for {NanoJava}: Auxiliary Variables, Side Effects, and Virtual Methods Revisited", journal = j-LECT-NOTES-COMP-SCI, volume = "2391", pages = "89--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:10 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2391.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2391/23910089.htm; http://link.springer-ny.com/link/service/series/0558/papers/2391/23910089.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ourosoff:2002:PTJ, author = "Nick Ourosoff", title = "Technical opinion: Primitive types in {Java} considered harmful", journal = j-CACM, volume = "45", number = "8", pages = "105--106", month = aug, year = "2002", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Thu Aug 1 07:05:19 MDT 2002", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Owens:2002:JIW, author = "Barbara Boucher Owens and Rich Pattis and Chris Stephenson and Jack Rehder and Dean Sanders", title = "{JAVA IDEs}: why and how we use what we do", journal = j-SIGCSE, volume = "34", number = "1", pages = "213--214", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563421", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This panel reflects the experiences of several faculty who each use a different Java Interactive Development Environment (IDE). Panelists will discuss the salient features of the IDEs that are used at their particular institutions. Each panelist will discuss system requirements, ease of installation, strengths and weaknesses of each IDE and pointers for successful adaptation to the classroom.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Paal:2002:CDC, author = "Stefan Paal and Reiner Kamm{\"u}ller and Bernd Freisleben", title = "Customizable Deployment, Composition, and Hosting of Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2519", pages = "845--865", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Dec 7 10:05:42 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2519.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://link.springer.de/link/service/series/0558/bibs/2519/25190845.htm; http://link.springer.de/link/service/series/0558/papers/2519/25190845.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pacios:2002:JBG, author = "L. Pacios and A. DeLaPena and R. Carrasco and F. Lapayese", title = "{Java}-Based Gas Inlet Control System for the {Stellarator TJ-II}", journal = "VTT Symposium", volume = "220", number = "??", publisher = "VTT", pages = "243", year = "2002", CODEN = "????", ISSN = "0357-9387", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Palmer:2002:JEH, author = "Grant Palmer", title = "{Java} event handling", publisher = pub-PH, address = pub-PH:adr, pages = "xix + 590", year = "2002", ISBN = "0-13-041802-1", ISBN-13 = "978-0-13-041802-9", LCCN = "QA76.73.J38 P33 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Accompanying CD-ROM includes all of the examples described in the book. It contains not only the Java source code but also the associated HTML and JPEG files", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Park:2002:ASJ, author = "Jung Gyu Park and Myong-Soon Park", title = "Automatic Specialization of {Java} Programs in the Distributed Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2344", pages = "757--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:13 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2344.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2344/23440757.htm; http://link.springer.de/link/service/series/0558/papers/2344/23440757.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Park:2002:SJP, author = "J. G. Park and M. S. Park", title = "Specializing {Java} Programs in a Distributed Environment", journal = j-J-INFO-SCI-ENG, volume = "18", number = "5", publisher = "Institute of Information Science Academia Sinica", pages = "787--802", year = "2002", CODEN = "JINEEY", ISSN = "1016-2364", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of information science and engineering", } @Article{Pauw:2002:VEJ, author = "Wim {De Pauw} and Erik Jensen and Nick Mitchell and Gary Sevitsky and John Vlissides and Jeaha Yang", title = "Visualizing the Execution of {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2269", pages = "151--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:05 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2269.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2269/22690151.htm; http://link.springer-ny.com/link/service/series/0558/papers/2269/22690151.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Pedroni:2002:JE, author = "Samuele Pedroni and Noel Rappin", title = "Jython Essentials", publisher = pub-ORA, address = pub-ORA:adr, pages = "xx + 277", year = "2002", ISBN = "0-596-00247-5", ISBN-13 = "978-0-596-00247-3", LCCN = "QA76.73.J38 P43 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$24.95", URL = "http://www.oreilly.com/catalog/jythoness", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Python (computer program language)", publishersummary = "Jython is an implementation of the Python programming language written in Java, allowing Python programs to integrate seamlessly with any Java code. The secret to Jython's popularity lies in the combination of Java's libraries and tools with Python's rapid development capabilities. Jython Essentials provides a solid introduction to the language, numerous examples of Jython/Java interaction, and valuable reference material on modules and libraries of use to Jython programmers.", } @Book{Perry:2002:JME, author = "J. Steven (James Steven) Perry", title = "{Java} Management Extensions", publisher = pub-ORA, address = pub-ORA:adr, pages = "x + 300", year = "2002", ISBN = "0-596-00245-9", ISBN-13 = "978-0-596-00245-9", LCCN = "QA76.73.J38 P472 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$34.95", URL = "http://safari.oreilly.com/0596002459; http://www.oreilly.com/catalog/javamngext", acknowledgement = ack-nhfb, keywords = "computer software -- development -- management; Java (computer program language)", publishersummary = "Java Management Extensions is a practical, hands-on guide to using the JMX APIs, Sun Microsystems new Java-based tool for managing enterprise applications. This one-of-a kind book is a complete treatment of the JMX architecture (both the instrumentation level and the agent level), and its loaded with real-world examples for implementing Management Extensions. It also contains useful information at the higher level about JMX (the big picture) to help technical managers and architects who are evaluating various application management approaches and are considering JMX.", } @InProceedings{Pike:2002:BTA, author = "Geoff Pike and Paul N. Hilfinger", title = "Better Tiling and Array Contraction for Compiling Scientific Programs", crossref = "IEEE:2002:STI", pages = "??--??", year = "2002", bibdate = "Wed Nov 26 07:34:20 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc-2002.org/paperpdfs/pap.pap260.pdf", abstract = "Scientific programs often include multiple loops over the same data; interleaving parts of different loops may greatly improve performance. We exploit this in a compiler for Titanium, a dialect of Java. Our compiler combines reordering optimizations such as loop fusion and tiling with storage optimizations such as array contraction (eliminating or reducing the size of temporary arrays). The programmers we have in mind are willing to spend some time tuning their code and their compiler parameters. Given that, and the difficulty in statically selecting parameters such as tile sizes, it makes sense to provide automatic parameter searching alongside the compiler. Our strategy is to optimize aggressively but to expose the compiler's decisions to external control. We double or triple the performance of Gauss--Seidel relaxation and multigrid (versus an optimizing compiler without tiling and array contraction), and we argue that ours is the best compiler for that kind of program.", acknowledgement = ack-nhfb, } @Book{Piroumian:2002:WJP, author = "Vartan Piroumian", title = "Wireless {J2ME} platform programming", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xxv + 374", year = "2002", ISBN = "0-13-044914-8", ISBN-13 = "978-0-13-044914-6", LCCN = "QA76.73.J38 P575 2002", bibdate = "Fri Apr 11 17:10:07 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", URL = "http://www.sun.com/books/catalog/piroumian/", acknowledgement = ack-nhfb, } @Article{Pleumann:2002:MP, author = "J{\"o}rg Pleumann", title = "The {Mail4Me Project}", journal = j-DDJ, volume = "27", number = "6", pages = "36, 38, 40, 42, 44", month = jun, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed May 1 15:43:59 MDT 2002", bibsource = "http://www.ddj.com/articles/2002/0206/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_06/mail4me.txt", abstract = "Mail4ME is a lightweight implementation of the POP3 and SMTP protocols and --- including MIME support and with IMAP support to come and --- allowing Java-based wireless devices to access e-mail services at any time, from any place. Additional resources include {\tt mail4me.txt} (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Pol:2002:FSJ, author = "Jaco van de Pol and Miguel Valero Espada", title = "Formal Specification of {JavaSpaces$^{\rm TM}$ Architecture} Using {$ \mu $CRL}", journal = j-LECT-NOTES-COMP-SCI, volume = "2315", pages = "274--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:27 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2315.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2315/23150274.htm; http://link.springer-ny.com/link/service/series/0558/papers/2315/23150274.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Prodan:2002:CJC, author = "A. Prodan and R. Prodan", title = "A Collection of {Java} Class Libraries for Stochastic Modeling and Simulation", journal = j-LECT-NOTES-COMP-SCI, volume = "2329", pages = "1040--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:34 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2329.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2329/23291040.htm; http://link.springer-ny.com/link/service/series/0558/papers/2329/23291040.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Proulx:2002:OBG, author = "Viera K. Proulx and Jeff Raab and Richard Rasala", title = "Objects from the beginning --- with {GUIs}", journal = j-SIGCSE, volume = "34", number = "3", pages = "65--69", month = sep, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/637610.544436", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:56 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We describe a way to introduce objects at the beginning of the first CS course through the use of objects that have significant nontrivial behavior and interactions with other objects. We will describe four introductory laboratory projects and an outline for introductory lectures on object oriented programming that illustrate the need for private member data, constructors and accessor member functions, and prepare students for writing object oriented programs in Java with graphical user interfaces.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Qian:2002:CAA, author = "Feng Qian and Laurie Hendren and Clark Verbrugge", title = "A Comprehensive Approach to Array Bounds Check Elimination for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2304", pages = "325--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:22 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2304.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2304/23040325.htm; http://link.springer-ny.com/link/service/series/0558/papers/2304/23040325.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Rajan:2002:CPJ, author = "A. S. Rajan and Shiwen Hu and J. Rubio", title = "Cache performance in {Java} virtual machines: a study of constituent phases", crossref = "IEEE:2002:WII", pages = "81--90", year = "2002", bibdate = "Tue Oct 24 10:13:38 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper studies the level 1 cache performance of Java programs by analyzing memory reference traces of the SPECjvm98 applications executed by the Latte Java virtual machine. We study in detail Java programs' cache performance of different access types in three JVM phases, under two execution modes, using three cache configurations and two application data sets. We observe that the poor data cache performance in the JIT execution mode is caused by code installation, when the data write miss rate in the execution engine can be as high as 70\%. In addition, code installation also deteriorates instruction cache performance during execution of translated code. High cache miss rate in garbage collection is mainly caused by large working set and pointer chasing of the garbage collector. A larger data cache works better on eliminating data cache read misses than write misses, and is more efficient on improving cache performance in the execution engine than in the garbage collection. As application data set increases in the JIT execution mode, instruction cache and data cache write miss rates of the execution engine decrease, while data cache read miss rate of the execution engine increases. On the other hand, impact of varying data set on cache performance is not as pronounced in the interpreted mode as in the JIT mode.", acknowledgement = ack-nhfb, } @InProceedings{Raner:2002:LJV, author = "Mirko Raner", title = "A Lightweight {Java Virtual Machine} for a Stack-Based Microprocessor", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/raner.html", acknowledgement = ack-nhfb, } @Article{Rao:2002:JQ, author = "Surlu Rao", title = "{Java Q\&A}: How Do Message-Driver Beans Work in {EJB 2.0}?", journal = j-DDJ, volume = "27", number = "2", pages = "94--96", month = feb, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_02/jqa0202.txt; http://www.ddj.com/ftp/2002/2002_02/jqa0202.zip", abstract = "Message-driven beans combine the features of container-managed EJB and the Java Messaging Service (JMS). Additional resources include {\tt jqa0202.txt} (listings) and {\tt jqa0202.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Rasala:2002:SMD, author = "Richard Rasala and Jeff Raab and Viera K. Proulx", title = "The {SIGCSE 2001 Maze Demonstration} program", journal = j-SIGCSE, volume = "34", number = "1", pages = "287--291", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563455", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This article will describe the SIGCSE 2001 Maze Demo program that may be used as a CS2 laboratory exercise on traversal algorithms. The article will also describe the object-oriented design of the program and the Java Power Tools that were used to enable rapid development of its graphical user interface. Finally, the quality of the program and the speed of its development shows that it is now practical to teach freshmen using full graphical user interfaces rather than interfaces that use the console or a small restricted set of interface widgets.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rayside:2002:EJL, author = "Derek Rayside and Kostas Kontogiannis", title = "Extracting {Java} library subsets for deployment on embedded systems", journal = j-SCI-COMPUT-PROGRAM, volume = "45", number = "2--3", pages = "245--270", month = nov # "\slash " # dec, year = "2002", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Sun Jan 11 10:42:00 MST 2004", bibsource = "http://www.elsevier.com/locate/issn/01676423; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Book{Reed:2002:DAJ, author = "Paul R. Reed", title = "Developing applications with {Java} and {UML}", publisher = pub-AW, address = pub-AW:adr, pages = "xxvi + 463", year = "2002", ISBN = "0-201-70252-5", ISBN-13 = "978-0-201-70252-1", LCCN = "QA76.73.J38 R44 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language); object-oriented methods (computer science); UML (computer science)", } @Article{Reges:2002:CCR, author = "S. Reges", title = "Can {C\#} Replace {Java} in {CS1} and {CS2}?", journal = j-SIGCSE, volume = "34", number = "3", pages = "4--8", year = "2002", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Reges:2002:SFI, author = "Stuart Reges", title = "{SIGCSE} 2002 forum: industry in the ivory tower", journal = j-SIGCSE, volume = "34", number = "1", pages = "367--367", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563482", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/csharp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "The intent of this forum is to generate a really lively discussion on the gamut of our relationship --- as computer science educators --- to industry. How dependent are we/should we be on specific industry software and platforms? (Many examples come to mind --- Microsoft Visual Studio. NET, Red Hat Linux, C\#, Sun's version of Java.)How obligated are we to jump on board the newest upgraded software version of whatever we might be using?How does our desire for good job placement of our graduates square with our oft-repeated claim that we are educators, not trainers?Pursuing this issue of ``where do we fall on the spectrum between training and education,'' what to do about all these industry certification programs --- Cisco, Novell, Oracle, Microsoft. Do we teach these curricula? Do we give credit to students who take it, say at a community college, and then transfer?What about a service course in, say, Photoshop? Is this college-level material?Do opportunities for summer internships or research projects in an industry setting place some special obligations on us with respect to that company?", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Reilly:2002:JNP, author = "David Reilly and Michael Reilly", title = "{Java} network programming and distributed computing", publisher = pub-AW, address = pub-AW:adr, pages = "xvii + 464", year = "2002", ISBN = "0-201-71037-4", ISBN-13 = "978-0-201-71037-3", LCCN = "QA76.73.J38 R45 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing; Internet programming; Java (computer program language)", } @Article{Renaud:2002:ESG, author = "K. Renaud", title = "Experience with statically-generated proxies for facilitating {Java} runtime specialisation", journal = "IEE Proceedings Software", volume = "149", number = "6", pages = "169--178", year = "2002", CODEN = "????", ISSN = "1462-5970", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Revetria:2002:UJA, author = "R. Revetria and F. Tonelli", title = "Using {Java} Applet-Based Application to Improve Practices in Environmental Production Monitoring", journal = j-SIM-SERIES, volume = "34", number = "1", pages = "13--16", year = "2002", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Tue Apr 29 05:13:30 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Book{Riley:2002:OJI, author = "David D. Riley", title = "The object of {Java}: introduction to programming using software engineering principles", publisher = pub-AW, address = pub-AW:adr, pages = "xxvi + 673", year = "2002", ISBN = "0-201-71585-6 (paperback)", ISBN-13 = "978-0-201-71585-9 (paperback)", LCCN = "QA76.73.J38 R54 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language)", } @Article{Riordan:2002:TIL, author = "Denis Riordan", title = "Towards an integrated learning laboratory environment for first-year computer science students", journal = j-SIGCSE, volume = "34", number = "4", pages = "112--116", month = dec, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/820127.820180", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:58 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse34.html#Riordan02; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2002.bib", abstract = "This paper describes an evolving attempt to provide an integrated learning laboratory environment (ILLE) to enhance the learning goals and strategies for first-year computer science students using Java as a first language. The proposed ILLE models a real computer-learning laboratory in which instructors walk around watching and helping students on request. In essence, the system consists of a Java development environment centered round a live communicator with a facility for an instructor to focus and work on the desk top of a particular student. The system is written in 4000 lines of Java and runs in exactly the same way on Windows, UNIX and MacOS. The ILLE gathers usage information that is being used to improve the learning for first year students. It has been used twice with large first year classes. Examples show how extracts from dialogue files enhanced the ILLE.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Robbins:2002:EPI, author = "Steven Robbins", title = "Exploration of process interaction in operating systems: a pipe-fork simulator", journal = j-SIGCSE, volume = "34", number = "1", pages = "351--355", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563476", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This paper examines the use of a simulator to explore process interaction in Unix. The simulator allows instructors to trace through a variety of programs and to show how the processes and pipes are connected. Students can create C language programs and see how changes in their code or changes in process scheduling affect the configuration of the processes and pipes as well as the output of the program. Students can also see the consequences of not protecting critical sections in an executing program. The simulator is flexible enough to allow the creation of process fans, chains and trees as well as unidirectional and bidirectional rings. The program is written in Java and can be run as a standalone application or as an applet from a browser.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Roman:2002:MEJ, author = "Ed Roman and Scott Ambler and Tyler Jewell", title = "Mastering {Enterprise JavaBeans}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xxxii + 639", year = "2002", ISBN = "0-471-41711-4 (PAPER/WEBSITE)", ISBN-13 = "978-0-471-41711-8 (PAPER/WEBSITE)", LCCN = "QA76.73.J38 R658 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); JavaBeans", } @Article{Romero:2002:VAR, author = "Pablo Romero and Richard Cox and Benedict du Boulay and Rudi Lutz", title = "Visual Attention and Representation Switching During {Java} Program Debugging: a Study Using the Restricted Focus Viewer", journal = j-LECT-NOTES-COMP-SCI, volume = "2317", pages = "221--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:28 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2317.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2317/23170221.htm; http://link.springer-ny.com/link/service/series/0558/papers/2317/23170221.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rose:2002:OJM, author = "J. F. Rose", title = "The {OPUS Java} Managers", journal = "Astronomical Society of the Pacific Conference Series", volume = "281", number = "??", pages = "445--448", year = "2002", CODEN = "????", ISSN = "1050-3390", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Ross:2002:GST, author = "J. M. Ross", title = "Guiding Students through Programming Puzzles: Value and Examples of {Java} Game Assignments", journal = j-SIGCSE, volume = "34", number = "4", pages = "94--98", year = "2002", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roth:2002:JSA, author = "Volker Roth", title = "{Java} Security Architecture And Extensions", journal = j-DDJ, volume = "27", number = "4", pages = "34, 36--38", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/jca.txt; http://www.ddj.com/ftp/2002/2002_04/jca.zip", abstract = "The Java Cryptography Architecture is a framework that attempts to provide a common interface for accessing basic cryptographic primitives. Additional resources include jca.txt (listings) and jca.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Roumani:2002:DGL, author = "Hamzeh Roumani", title = "Design guidelines for the lab component of objects-first {CS1}", journal = j-SIGCSE, volume = "34", number = "1", pages = "222--226", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563426", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "We adopt the view that CS1 labs are not programming assignments, and that they should not be used for grading students or assessing their level of understanding. Instead, we think of them as teaching instruments that complement lectures by teaching the same material but in an exploratory fashion. But for labs to play this pedagogical role, certain conditions must be met in terms of how they are written and the complexity they expose. In this paper we present guidelines for designing the labs and the Java packages that must accompany them, with special emphasis on software engineering. Our own experience with implementing these guidelines, together with a few samples, is included.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rousselle:2002:IJP, author = "Philip Rousselle", title = "Implementing the {JMS} Publish\slash Subscribe {API}", journal = j-DDJ, volume = "27", number = "4", pages = "28, 30--32", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "The Java Message Service API provides a powerful message-passing API for distributed computing.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Rutherford:2002:REJ, author = "Matthew J. Rutherford and Kenneth Anderson and Antonio Carzaniga and Dennis Heimbigner and Alexander L. Wolf", title = "Reconfiguration in the Enterprise {JavaBean} Component Model", journal = j-LECT-NOTES-COMP-SCI, volume = "2370", pages = "67--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:55 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2370.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2370/23700067.htm; http://link.springer-ny.com/link/service/series/0558/papers/2370/23700067.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{S:2002:SPI, author = "Venugopal K. S. and Geetha Manjunath and Venkatesh Krishnan", title = "{sEc}: a Portable Interpreter Optimizing Technique for Embedded {Java Virtual Machine}", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/venugopal.html", acknowledgement = ack-nhfb, } @Book{Safonov:2002:VVJ, author = "V. O. (Vladimir Olegovich) Safonov", title = "Vvedenie v {Java}-tekhnologiiu", publisher = "``Nauka''", address = "Sankt-Peterburg, Russia", pages = "187", year = "2002", ISBN = "5-02-024985-8", ISBN-13 = "978-5-02-024985-1", LCCN = "????", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Saha:2002:RLP, author = "Prasenjit Saha", title = "{Rambutan: Literate programming in Java}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "304--309", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; https://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saha:TB23-3-304, author = "Prasenjit Saha", title = "{Rambutan: Literate programming in Java}", journal = j-TUGboat, volume = "23", number = "3/4", pages = "304--309", year = "2002", ISSN = "0896-3207", bibdate = "Fri Jul 13 10:24:20 MDT 2007", bibsource = "ftp://ftp.math.utah.edu/pub/tex/bib/tugboat.bib; https://www.math.utah.edu/pub/tex/bib/index-table-t.html#tugboat; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-bnb # " and " # ack-nhfb, } @Article{Saini:2002:JMD, author = "S. P. Saini and F. Ahmad", title = "{Java} Model of {DSA} ({Digital Signature Algorithm})", journal = j-IETE-TECH-REV, volume = "19", number = "4", publisher = "Institute of Electronics \& Telecommunication", pages = "189--194", year = "2002", CODEN = "ITREEI", ISSN = "0256-4602", ISSN-L = "0256-4602", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IETE Technical Review", } @Article{Sanchez:2002:FTU, author = "Pedro S{\'a}nchez and Patricio Letelier and Juan A. Pastor and Juan A. Ortega", title = "A Framework to Translate {UML} Class Generalization into {Java} Code", journal = j-LECT-NOTES-COMP-SCI, volume = "2425", pages = "173--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:25 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2425.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2425/24250173.htm; http://link.springer-ny.com/link/service/series/0558/papers/2425/24250173.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Sanchez:2002:JPE, author = "Julio Sanchez and Maria P. Canton", title = "{Java} Programming for Engineers", publisher = pub-CRC, address = pub-CRC:adr, pages = "xvi + 338", year = "2002", ISBN = "0-8493-0810-0", ISBN-13 = "978-0-8493-0810-9", LCCN = "QA76.76.J38 S26 2002", bibdate = "Sat Jul 27 11:56:25 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$59.95, UK\pounds 41.99", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Mechanical engineering; Data processing", } @Article{Sanden:2002:RTP, author = "Bo I. Sand{\'e}n", title = "Real-time Programming Safety in {Java} and {Ada}", journal = j-ADA-USER-J, volume = "23", number = "2", pages = "105--??", month = jun, year = "2002", CODEN = "AUJOET", ISSN = "1381-6551", bibdate = "Wed Sep 1 09:00:38 MDT 2010", bibsource = "http://www.ada-europe.org/AUJ/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Ada User Journal", journal-URL = "http://www.ada-europe.org/auj/archive", } @Article{Santoro:2002:JTT, author = "K. Santoro", title = "2002-21-0002 {Java} Telematics Technology --- Building and Leveraging a Market Ecosystem", journal = "SAE Conference Proceedings", volume = "381", publisher = pub-SAE, address = pub-SAE:adr, pages = "13--18", year = "2002", CODEN = "????", ISSN = "????", bibdate = "Tue Nov 26 06:24:58 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Sato:2002:SJL, author = "Y. Sato", title = "A Study of {Java} Language for Effective Thread Migration", journal = "Record of Electrical and Communication Engineering Conversazione Tohoku University", volume = "71", number = "1", publisher = "Tohoku Daigaku Dentsu Danwakai", pages = "597--598", year = "2002", CODEN = "????", ISSN = "0385-7719", bibdate = "Tue Dec 24 07:09:37 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Schneck:2002:LCP, author = "Paul Schneck and Jeffrey Lotspiech and Christopher Bird and Jeffrey R. Carter and Eric A. Weiss and Neville Holmes and Mario L. Epp", title = "Letters: Content Protection Alternatives; Software Development Viewpoints; {Java} Questions; Seven Great Blunders; Technological Musings", journal = j-COMPUTER, volume = "35", number = "10", pages = "8--??", month = oct, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/10/rx008.htm; http://csdl.computer.org/dl/mags/co/2002/10/rx008.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Schreiner:2002:JTT, author = "W. Schreiner", title = "A {Java} Toolkit for Teaching Distributed Algorithms", journal = j-SIGCSE, volume = "34", number = "3", pages = "111--115", year = "2002", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Nov 12 06:13:25 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Scime:2002:LIS, author = "Anthony Scime and Bob Pedigo and Curtis Sjolander and Bob Colwell and Dick Brodine and Ted Lewis and Bruce D. Wilner and Gary McGraw and Jay Dearien and Neville Holmes and Peter Stern", title = "Letters: Information System Engineering; Quantum Questions; Is {Murphy's Law} Wrong?; {Java} Questions for {Ted}; Software Security Concerns; Insightful Observations on Computers and Society", journal = j-COMPUTER, volume = "35", number = "6", pages = "6--9", month = jun, year = "2002", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2002/06/r6006.htm; http://csdl.computer.org/dl/mags/co/2002/06/r6006.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Scott:2002:MMI, author = "Kirk Scott", title = "{MISC}: the minimal instruction set computer", journal = j-SIGCSE, volume = "34", number = "3", pages = "223--223", month = sep, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/637610.544491", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:56 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The minimal instruction set computer (MISC) is a simulation of a simple hardware machine written in the Java language. The architecture represented is register-oriented. MISC has been used by the author in several classes at the undergraduate level. It is under further development at the present time.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Seaman:2002:JQH, author = "Mark Seaman", title = "{Java Q\&A}: How Can {I} Generate {Java} Code for Tables in My Database?", journal = j-DDJ, volume = "27", number = "8", pages = "??--??", month = aug, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Aug 27 06:06:12 2003", bibsource = "http://www.ddj.com/articles/2002/0208/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_08/jqa0802.txt; http://www.ddj.com/ftp/2002/2002_08/jqa0802.zip", abstract = "Additional resources include jqa0802.txt (listings) and jqa0802.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Serpette:2002:CSJ, author = "Bernard Paul Serpette and Manuel Serrano", title = "Compiling scheme to {JVM} bytecode: a performance study", journal = j-SIGPLAN, volume = "37", number = "9", pages = "259--270", month = sep, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Sestoft:2002:JP, author = "Peter Sestoft", title = "{Java} Precisely", publisher = pub-MIT, address = pub-MIT:adr, pages = "vii + 118", year = "2002", ISBN = "0-262-69276-7", ISBN-13 = "978-0-262-69276-2", LCCN = "QA76.73.J38 S435 2002", bibdate = "Tue Mar 11 14:56:11 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$14.95, UK\pounds 9.95", acknowledgement = ack-nhfb, } @Article{Shay:2002:MMC, author = "William Shay", title = "A multiplatform\slash multilanguage client\slash server project", journal = j-SIGCSE, volume = "34", number = "1", pages = "401--405", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563496", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "This paper introduces a more general client/server example than is typically described. Whereas many client/server examples often involve communication between two C programs or two Java programs, this paper describes a program demo containing two clients (one in C and one in Java) and two servers (one in C and one in Java). Furthermore, either client is capable of connecting to and downloading a file from either server using a socket connection over the TCP/IP protocol. None of these programs make any assumptions regarding what language or platform supports the program at the remote end.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Shen:2002:JBD, author = "J. Shen and G. Gu", title = "{Java}-based Design and Implementation of the {XML} Parser", journal = j-MINI-MICRO-SYSTEMS, volume = "23", number = "12", pages = "1449--1452", year = "2002", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Mon Jan 27 06:53:51 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Shuf:2002:CPL, author = "Yefim Shuf and Manish Gupta and Hubertus Franke and Andrew Appel and Jaswinder Pal Singh", title = "Creating and Preserving Locality of {Java} Applications at Allocation and Garbage Collection Times", journal = j-SIGPLAN, volume = "37", number = "11", pages = "13--25", month = nov, year = "2002", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:10 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Silveira:2002:DDI, author = "Ricardo Azambuja Silveira and Rosa Maria Vicari", title = "Developing Distributed Intelligent Learning Environment with {JADE} --- {Java} Agents for Distance Education Framework", journal = j-LECT-NOTES-COMP-SCI, volume = "2363", pages = "105--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:51 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2363.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2363/23630105.htm; http://link.springer-ny.com/link/service/series/0558/papers/2363/23630105.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @PhdThesis{Sivasubramanian:2002:JCM, author = "Madhumathi Sivasubramanian", title = "{Java} compiler modification for multiple return types", type = "Thesis (M.S.)", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2002", LCCN = "QA76.73.J38 S58 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "academic dissertations -- University of California, Santa Cruz -- 2002; academic dissertations -- University of California, Santa Cruz -- computer; compilers (computer programs); computer science; Java (computer program language); object-oriented programming (computer science); science", } @Article{Skotiniotis:2002:EIM, author = "T. Skotiniotis and J. Chang", title = "Estimating internal memory fragmentation for {Java} programs", journal = j-J-SYST-SOFTW, volume = "64", number = "3", pages = "235--246", year = "2002", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Mar 4 09:14:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Snoep:2002:JWS, author = "J. L. Snoep and B. G. Olivier", title = "{Java Web Simulation} ({JWS}); {A} {Web} Based Database of Kinetic Models", journal = "Molecular Biology Reports", volume = "29", number = "1--2", pages = "259--263", year = "2002", CODEN = "????", ISSN = "0301-4851", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "5", } @Article{Soldar:2002:UWS, author = "G. Soldar and B. Spencer and D. Smith", title = "Using {Web} Services and {Java} Distributed Components to Develop Distributed Applications", journal = "Applied Informatics", volume = "2", pages = "388--394", year = "2002", CODEN = "????", ISSN = "1027-2666", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Speegle:2002:JPG, author = "Gregory D. (Gregory David) Speegle", title = "{JDBC}: practical guide for {Java} programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xiii + 113", year = "2002", ISBN = "1-55860-736-6", ISBN-13 = "978-1-55860-736-1", LCCN = "QA76.73.J38 S64 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Morgan Kaufmann practical guides series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Stelting:2002:AJP, author = "Stephen Stelting and Olav Maassen", title = "Applied {Java} Patterns", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxi + 574", year = "2002", ISBN = "0-13-093538-7", ISBN-13 = "978-0-13-093538-0", LCCN = "QA76.73.J38 S845 2002", bibdate = "Tue Mar 12 07:56:57 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.99", series = "Sun Microsystems Press Java series", URL = "http://www.phptr.com/ptrbooks/ptr_0130935387.html; http://www.sun.com/books/catalog/stelting/", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Software patterns", } @Article{Stoller:2002:DPO, author = "Scott D. Stoller", title = "Domain partitioning for open reactive systems", journal = j-SIGSOFT, volume = "27", number = "4", pages = "44--54", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566179", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Testing or model-checking an open reactive system often requires generating a model of the environment. We describe a static analysis for Java that computes a partition of a system's inputs: inputs in the same equivalence class lead to identical behavior. The partition provides a basis for generation of code for a most general environment of the system, i.e., one that exercises all possible behaviors of the system. The partition also helps the generated environment avoid exercising the same behavior multipletimes. Many distributed systems with security requirements can be regarded as open reactive systems whose environment is an adversary-controlled network. We illustrate our approach by applying it to a fault-tolerant and intrusion-tolerant distributed voting system and model-checking the system together with the generated environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stoller:2002:MCM, author = "Scott D. Stoller", title = "Model-checking multi-threaded distributed {Java} programs", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "4", number = "1", pages = "71--91", month = oct, year = "2002", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-002-0077-2", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Nov 23 15:01:41 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Article{Strecker:2002:FVJ, author = "Martin Strecker", title = "Formal Verification of a {Java} Compiler in {Isabelle}", Journal = j-LECT-NOTES-COMP-SCI, volume = "2392", pages = "63--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:10 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2392.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2392/23920063.htm; http://link.springer-ny.com/link/service/series/0558/papers/2392/23920063.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Suganuma:2002:ESM, author = "Toshio Suganuma and Toshiaki Yasue and Toshio Nakatani", title = "An Empirical Study of Method In-lining for a {Java} Just-in-Time Compiler", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/suganuma.html", acknowledgement = ack-nhfb, } @Manual{Sun:2002:BJP, author = "{Sun Microsystems}", title = "{BigDecimal (Java 2 Platform SE v1.4.0)}", organization = "Sun Microsystems", address = "Mountain View, CA, USA", pages = "17", year = "2002", bibdate = "Fri Nov 28 11:16:16 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://java.sun/com/products", abstract = "Immutable, arbitrary-precision signed decimal numbers. A BigDecimal consists of an arbitrary precision integer unscaled value and a non-negative 32-bit integer scale, which represents the number of digits to the right of the decimal point. The number represented by the BigDecimal is $ (\mbox {unscaledValue} / 10^{\mbox {scale}}) $. BigDecimal provides operations for basic arithmetic, scale manipulation, comparison, hashing, and format conversion.", acknowledgement = ack-nhfb, keywords = "decimal floating-point arithmetic", } @Article{Sung:2002:CPE, author = "Minyoung Sung and Soyoung Kim and Sangsoo Park and Naehyuck Chang and Heonshik Shin", title = "Comparative performance evaluation of {Java} threads for embedded applications: {Linux Thread} vs. {Green Thread}", journal = j-INFO-PROC-LETT, volume = "84", number = "4", pages = "221--225", day = "30", month = nov, year = "2002", CODEN = "IFPLAT", ISSN = "0020-0190 (print), 1872-6119 (electronic)", ISSN-L = "0020-0190", bibdate = "Mon Jan 26 08:44:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/00200190", acknowledgement = ack-nhfb, fjournal = "Information Processing Letters", journal-URL = "http://www.sciencedirect.com/science/journal/00200190", } @Article{Suppi:2002:PDP, author = "R. Suppi and M. Solsona and E. Luque", title = "Parasite: Distributing Processing Using {Java} Applets (Research Note)", journal = j-LECT-NOTES-COMP-SCI, volume = "2400", pages = "598--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:14 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2400.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2400/24000598.htm; http://link.springer-ny.com/link/service/series/0558/papers/2400/24000598.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Surdeanu:2002:DPA, author = "Mihai Surdeanu and Dan Moldovan", title = "Design and Performance Analysis of a Distributed {Java Virtual Machine}", journal = j-IEEE-TRANS-PAR-DIST-SYS, volume = "13", number = "6", pages = "611--627", month = jun, year = "2002", CODEN = "ITDSEO", DOI = "https://doi.org/10.1109/TPDS.2002.1011415", ISSN = "1045-9219 (print), 1558-2183 (electronic)", ISSN-L = "1045-9219", bibdate = "Wed Oct 23 15:36:27 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dlib.computer.org/td/books/td2002/pdf/l0611.pdf; http://www.computer.org/tpds/td2002/l0611abs.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Parallel and Distributed Systems", journal-URL = "http://www.computer.org/tpds/archives.htm", } @Article{Tanter:2002:AJS, author = "{\'E}ric Tanter and Marc S{\'e}gura-Devillechaise and Jacques Noy{\'e} and Jos{\'e} Piquer", title = "Altering {Java} Semantics via Bytecode Manipulation", journal = j-LECT-NOTES-COMP-SCI, volume = "2487", pages = "283--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:39 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2487.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2487/24870283.htm; http://link.springer.de/link/service/series/0558/papers/2487/24870283.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Tate:2002:BJ, author = "Bruce Tate", title = "Bitter {Java}", publisher = "Manning", address = "Greenwich, CT, USA", pages = "xxviii + 339", year = "2002", ISBN = "1-930110-43-X", ISBN-13 = "978-1-930110-43-4", LCCN = "QA76.73.J38 T38 2002", bibdate = "Mon Mar 27 09:10:38 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Book{Taylor:2002:JJC, author = "Art Taylor", title = "{JSP} and {Java}: the complete guide to {Website} development", publisher = pub-PH, address = pub-PH:adr, pages = "xxii + 518", year = "2002", ISBN = "0-13-091813-X", ISBN-13 = "978-0-13-091813-0", LCCN = "QA76.73.J38 T39 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Web sites -- design", } @Article{Thiruvathukal:2002:JMA, author = "George K. Thiruvathukal", title = "{Java} at Middle Age: Enabling {Java} for Computational Science", journal = j-COMPUT-SCI-ENG, volume = "4", number = "1", pages = "74--84", month = jan # "\slash " # feb, year = "2002", CODEN = "CSENFA", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat Feb 23 06:37:34 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://computer.org/cise/cs2001/c1074abs.htm; http://dlib.computer.org/cs/books/cs2002/pdf/c1074.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Tilevich:2002:JOA, author = "Eli Tilevich and Yannis Smaragdakis", title = "{J}-Orchestra: Automatic {Java} Application Partitioning", journal = j-LECT-NOTES-COMP-SCI, volume = "2374", pages = "178--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:57 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2374.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2374/23740178.htm; http://link.springer-ny.com/link/service/series/0558/papers/2374/23740178.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Tilly:2002:ADG, author = "Jesse E. Tilly and Eric M. Burke", title = "{Ant}: The Definitive Guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xviii + 269", year = "2002", ISBN = "0-596-00184-3", ISBN-13 = "978-0-596-00184-1", LCCN = "QA76.73.J38 T57 2002", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$34.95", URL = "http://safari.oreilly.com/0596001843; http://www.oreilly.com/catalog/anttdg", acknowledgement = ack-nhfb, keywords = "Ant (computer file); Java (computer program language)", publishersummary = "Ant is the premier build-management tool for Java environments. Ant is part of Jakarta, the Apache Software Foundation's open source Java project repository. Ant is written entirely in Java, and is platform independent. Using XML, a Java developer describes the modules involved in a build, and the dependencies between those modules. Ant then does the rest, compiling components as necessary in order to build the application.", } @Article{Tip:2002:PET, author = "Frank Tip and Peter F. Sweeney and Chris Laffra and Aldo Eisma and David Streeter", title = "Practical Extraction Techniques for {Java}", journal = j-TOPLAS, volume = "24", number = "6", pages = "625--666", month = nov, year = "2002", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Apr 9 18:34:46 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Ton:2002:APS, author = "L.-R. Ton and L.-C. Chang and C.-P. Chung", title = "An analytical {POC} stack operations folding for continuous and discontinuous {Java} bytecodes", journal = j-J-SYST-ARCH, volume = "48", number = "1", pages = "1--16", month = sep, year = "2002", CODEN = "JSARFB", ISSN = "1383-7621 (print), 1873-6165 (electronic)", ISSN-L = "1383-7621", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Systems Architecture", pagecount = "16", } @Article{Ton:2002:DOF, author = "L.-R. Ton and L.-C. Chang and J.-J. Shann and C.-P. Chung", title = "Design of an optimal folding mechanism for {Java} processors", journal = j-MICROPROC-MICROSYS, volume = "26", number = "8", pages = "341--352", day = "10", month = nov, year = "2002", CODEN = "MIMID5", ISSN = "0141-9331 (print), 1872-9436 (electronic)", ISSN-L = "0141-9331", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Microprocessors and Microsystems", pagecount = "12", } @Article{Tonella:2002:CSC, author = "P. Tonella and A. Potrich", title = "{Cjj}: a subset of {C++} compliant with {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "42", number = "2", pages = "229--271", month = feb, year = "2002", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", pagecount = "43", } @Book{Topley:2002:CJJ, author = "Kim Topley", title = "Core {JFC}: {Java} foundation classes", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Second", pages = "xli + 1655", year = "2002", ISBN = "0-13-090581-X", ISBN-13 = "978-0-13-090581-9", LCCN = "QA76.73.J38 T67 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", price = "US\$49.99", series = "Prentice Hall PTR core series", URL = "http://www.phptr.com/ptrbooks/ptr_013090581X.html", acknowledgement = ack-nhfb, keywords = "Java (computer program language); Java foundation classes", } @Book{Topley:2002:JND, author = "Kim Topley", title = "{J2ME} in a nutshell: a desktop quick reference", publisher = pub-ORA, address = pub-ORA:adr, pages = "xv + 450", year = "2002", ISBN = "0-596-00253-X", ISBN-13 = "978-0-596-00253-4", LCCN = "QA76.73.J38 T67 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Nutshell handbook", acknowledgement = ack-nhfb, keywords = "Java (computer program language); wireless communication systems", } @Article{Tozawa:2002:FAC, author = "A. Tozawa and M. Hagiya", title = "Formalization and Analysis of Class Loading in {Java}", journal = j-HIGHER-ORDER-SYMB-COMPUT, volume = "15", number = "1", pages = "7--55", month = mar, year = "2002", CODEN = "LSCOEX", ISSN = "1388-3690 (print), 2212-0793 (electronic)", ISSN-L = "1388-3690", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Higher-Order and Symbolic Computation", pagecount = "49", } @Article{Tremblett:2002:JUR, author = "Paul Tremblett", title = "{Java} and {UDDI} Registries", journal = j-DDJ, volume = "27", number = "9", pages = "34, 37--40", month = sep, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Fri Sep 13 06:15:52 MDT 2002", bibsource = "http://www.ddj.com/articles/2002/0209/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_09/juddi.txt; http://www.ddj.com/ftp/2002/2002_09/juddi.zip; http://www.ddj.com/ftp/2002/2002_09/uddi.war", abstract = "Applications that require web services send requests to services at advertised URLs. Paul shows how your Java applications can contact business registries, such as UDDI, and retrieve information from them. Additional resources include juddi.txt (listings) and juddi.zip , uddi.war (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Tremblett:2002:PTJ, author = "Paul Tremblett", title = "Programmer's Toolchest: {Java}'s {Generic Connection Framework}: Wireless networking for mobile devices", journal = j-DDJ, volume = "27", number = "4", pages = "75--78, 80", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/javagcf.txt; http://www.ddj.com/ftp/2002/2002_04/javagcf.zip", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Trentini:2002:JBF, author = "Andrea Trentini", title = "A {Java}-based framework to support computer-assisted creation of structured {XML} documents", journal = j-SIGAPP, volume = "10", number = "1", pages = "48--53", month = apr, year = "2002", CODEN = "????", DOI = "https://doi.org/10.1145/568235.568245", ISSN = "1559-6915 (print), 1931-0161 (electronic)", ISSN-L = "1559-6915", bibdate = "Thu Jan 23 10:21:35 MST 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigapp2000.bib", URL = "https://dl.acm.org/doi/abs/10.1145/568235.568245", abstract = "In the management of document-based information, the structure of the document itself is very important. In the XML world you can use a DTD (Document Type Definition) or XMLSchema to define that structure. But not everything can be described (and forced). \ldots{}", acknowledgement = ack-nhfb, fjournal = "ACM SIGAPP Applied Computing Review", journal-URL = "https://dl.acm.org/loi/sigapp", } @Book{Tulachan:2002:DEC, author = "Pravin V. Tulachan", title = "Developing {EJB 2.0} Components", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "xxx + 622", year = "2002", ISBN = "0-13-034863-5", ISBN-13 = "978-0-13-034863-0", LCCN = "QA76.73.J38T85 2002", bibdate = "Fri Apr 11 15:40:33 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", URL = "http://www.sun.com/books/catalog/tulachan/", acknowledgement = ack-nhfb, } @Article{Umar:2002:ERT, author = "S. Umar", title = "Embedded Real-Time {Java} in an {MPU}", journal = "Circuit Cellar", volume = "148", pages = "12--22", year = "2002", CODEN = "????", ISSN = "1528-0608", bibdate = "Tue Nov 26 06:24:58 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @TechReport{USFS:2002:JGI, author = "{United States Forest Service}", title = "{JMFA} --- {A} Graphically Interactive {Java} Program That Fits Microfibril Angle {X}-Ray Diffraction Data", type = "Research Note", number = "FPL-RN-0283", institution = "U.S. Department of Agriculture", address = "Washington, DC, USA", year = "2002", LCCN = "DOC A 13.79:FPL-RN-0283 mf11 Microcopy", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Shipping List number 2002-0228-M. Shipping List Date: 5-Apr-2002", acknowledgement = ack-nhfb, } @Book{vanderLinden:2002:JJ, author = "Peter van der Linden", title = "Just {Java 2}", publisher = pub-PHPTR, address = pub-PHPTR:adr, edition = "Fifth", pages = "xxxv + 1098", year = "2002", ISBN = "0-13-032072-2", ISBN-13 = "978-0-13-032072-8", LCCN = "QA76.73.J38 V3625 2002b", bibdate = "Tue Mar 12 07:54:07 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", URL = "http://www.phptr.com/ptrbooks/ptr_0130320722.html; http://www.sun.com/books/catalog/vanderlinden6/index.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Vandewoude:2002:JID, author = "Y. Vandewoude and D. Urting and K. Pelckmans and Y. Berbers", title = "A {Java}-Interface to Digital Cameras", journal = "Applied Informatics", volume = "2", pages = "113--118", year = "2002", CODEN = "????", ISSN = "1027-2666", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{vonLaszewski:2002:FJC, author = "Gregor von Laszewski and Jarek Gawor and Peter Lane and Nell Rehn and Mike Russell", title = "Features of the {Java Commodity Grid Kit}", journal = j-CCPE, volume = "14", number = "13--15", pages = "1045--1055", month = nov # "\slash " # dec, year = "2002", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.674", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:02 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "8 Jan 2003", } @Article{vonOheimb:2002:HLN, author = "David von Oheimb and Tobias Nipkow", title = "{Hoare} Logic for {NanoJava}: Auxiliary Variables, Side Effects, and Virtual Methods Revisited", journal = j-LECT-NOTES-COMP-SCI, volume = "2391", pages = "89--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:10:10 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2391.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2391/23910089.htm; http://link.springer-ny.com/link/service/series/0558/papers/2391/23910089.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Walsh:2002:JAJ, author = "Aaron E. Walsh and Doug Gehringer", title = "{Java 3D API} jump-start", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xviii + 245 + 16", year = "2002", ISBN = "0-13-034076-6", ISBN-13 = "978-0-13-034076-4", LCCN = "QA76.73.J38 W35 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Prentice Hall PTR jump-start series", URL = "http://www.sun.com/books/catalog/walsh/", acknowledgement = ack-nhfb, keywords = "computer graphics; Java (computer program language)", } @Article{Walsh:2002:MJA, author = "Aaron E. Walsh", title = "The {MPEG-4 Java API} and {MPEGlets}", journal = j-DDJ, volume = "27", number = "4", pages = "40, 42--45", month = apr, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Mar 5 07:08:41 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_04/jmpeg.txt; http://www.ddj.com/ftp/2002/2002_04/jmpeg.zip", abstract = "Aaron introduces a suite of Java APIs for MPEG-4 and shows how you can use them to build highly dynamic and interactive content. Additional resources include jmpeg.txt (listings) and jmpeg.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Walsh:2002:USG, author = "Aaron E. Walsh", title = "Understanding Scene Graphs", journal = j-DDJ, volume = "27", number = "7", pages = "17, 20--26", month = jul, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Fri Sep 13 06:15:52 MDT 2002", bibsource = "http://www.ddj.com/articles/2002/0207/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_07/scene.txt; http://www.ddj.com/ftp/2002/2002_07/scene.zip", abstract = "Scene graphs are data structures used to organize and manage a variety of media types, including those supported by VRML, Extensible 3D, MPEG-4, and Java 3D. Additional resources include scene.txt (listings) and scene.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Wampler:2002:EOO, author = "Bruce E. Wampler", title = "The essence of object-oriented programming with {Java} and {UML}", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 290", year = "2002", ISBN = "0-201-73410-9", ISBN-13 = "978-0-201-73410-2", LCCN = "QA76.64 .W359 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science); UML (computer science)", } @Article{Wang:2002:CSP, author = "G. Wang", title = "{Ch} solves portability headaches", journal = j-IEEE-SPECTRUM, volume = "39", number = "6", pages = "59--59", month = jun, year = "2002", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2002.1049264", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Computer languages; Expert systems; ISO standards; Java; Microcomputers; Numerical analysis; Operating systems; Systems engineering and theory; Web server; Workstations", } @Article{Wang:2002:JEC, author = "L. Wang and B. Wong and W. Shen and S. Lang", title = "A {Java} {$3$D}-Enabled Cyber Workspace", journal = j-CACM, volume = "45", number = "11", pages = "45--49", month = nov, year = "2002", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Tue Nov 19 09:39:05 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Wang:2002:UJH, author = "A. J. A. Wang", title = "Using {Java Hartstone} benchmark in a real-time systems course", journal = j-FRONTIERS-EDU-CONF, volume = "3", number = "??", pages = "S2F-25--??", year = "2002", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Warnes:2002:HJL, author = "Gregory R. Warnes", title = "{HYDRA}: a {Java} library for {Markov} Chain {Monte Carlo}", journal = j-J-STAT-SOFT, volume = "7", number = "4", pages = "1--32", year = "2002", CODEN = "JSSOBK", ISSN = "????", bibdate = "Sun Nov 17 22:35:43 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://software.biostat.washington.edu/statsoft/MCMC/Hydra; http://software.biostat.washington.edu/statsoft/MCMC/Hydra/INSTALL.html; http://www.jstatsoft.org/v07/i04; http://www.jstatsoft.org/v07/i04/Description.pdf; http://www.jstatsoft.org/v07/i04/Hydra_1.0.0.jar; http://www.jstatsoft.org/v07/i04/Hydra_1.0.0.tgz; http://www.jstatsoft.org/v07/i04/updates; http://www.jstatsoft.org/v07/i04/UserGuide.pdf", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", } @Article{Watari:2002:FTU, author = "S. Watari", title = "A Forecast Tool using {JavaScript} for Predicting Arrival Time of Interplanetary Disturbances to the {Earth}", journal = "Journal --- Communications Research Laboratory", volume = "49", number = "4", pages = "47--54", year = "2002", CODEN = "????", ISSN = "0914-9260", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Weiss:2002:DSP, author = "Mark Allen Weiss", title = "Data structures and problem solving using {Java}", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxxiv + 886", year = "2002", ISBN = "0-201-74835-5", ISBN-13 = "978-0-201-74835-2", LCCN = "QA76.73.J38 W45 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language); problem solving -- data processing", } @Book{Weissinger:2002:DJC, author = "A. Keyton Weissinger", title = "Developing {JSP} custom tag libraries", publisher = pub-ORA, address = pub-ORA:adr, pages = "????", year = "2002", ISBN = "0-596-00155-X", ISBN-13 = "978-0-596-00155-1", LCCN = "QA76.73.J38 W46 2002", bibdate = "Mon Apr 18 15:03:13 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596001551", acknowledgement = ack-nhfb, subject = "Java (Computer program language); JavaServer pages, angela@oreilly.com", } @Article{Welch:2002:CNJ, author = "P. H. Welch and J. R. Aldous and J. Foster", title = "{CSP} Networking for {Java} {(JCSP.net)}", journal = j-LECT-NOTES-COMP-SCI, volume = "2330", pages = "695--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:35 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2330.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2330/23300695.htm; http://link.springer-ny.com/link/service/series/0558/papers/2330/23300695.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Welch:2002:POD, author = "P. H. Welch", title = "Process Oriented Design for {Java}: Concurrency for All", journal = j-LECT-NOTES-COMP-SCI, volume = "2330", pages = "687--??", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 10 19:09:35 MDT 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2330.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer-ny.com/link/service/series/0558/bibs/2330/23300687.htm; http://link.springer-ny.com/link/service/series/0558/papers/2330/23300687.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Whaley:2002:AEO, author = "John Whaley and Michael C. Martin and Monica S. Lam", title = "Automatic extraction of object-oriented component interfaces", journal = j-SIGSOFT, volume = "27", number = "4", pages = "218--228", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Component-based software design is a popular and effective approach to designing large systems. While components typically have well-defined interfaces, sequencing information---which calls must come in which order---is often not formally specified. This paper proposes using multiple finite statemachine (FSM) submodels to model the interface of a class. A submodel includes a subset of methods that, for example, implement a Java interface, or access some particular field. Each state-modifying method is represented as a state in the FSM, and transitions of the FSMs represent allow able pairs of consecutive methods. In addition, state-preserving methods are constrained to execute only under certain states. We have designed and implemented a system that includes static analyses to deduce illegal call sequences in a program, dynamic instrumentation techniques to extract models from execution runs, and a dynamic model checker that ensures that the code conforms to the model. Extracted models can serve as documentation; they can serve as constraints to be enforced by a static checker; they can be studied directly by developers to determine if the program is exhibiting unexpected behavior; or they can be used to determine the completeness of a test suite. Our system has been run on several large code bases, including the joeq virtual machine, the basic Java libraries, and the Java 2 Enterprise Edition library code. Our experience suggests that this approach yields useful information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wick:2002:UEC, author = "Michael R. Wick and Daniel E. Stevenson and Andrew T. Phillips", title = "Using an environment chain model to teach inheritance in {C++}", journal = j-SIGCSE, volume = "34", number = "1", pages = "297--301", month = mar, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/563517.563458", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:52 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Inroads: paving the way towards excellence in computing education.", abstract = "Inheritance is a central topic in most introductory object-oriented programming courses and frequently the most challenging for students to comprehend. The difficulties students experience often center around the rather complicated and obscure dynamic method invocation algorithms used in languages like C++ and Java. We present a visual model for teaching inheritance that captures the essential aspects of these algorithms yet is easy for students to comprehend and apply.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @MastersThesis{Wildmoser:2002:SJB, author = "M. Wildmoser", title = "Subroutines and {Java} bytecode verification", type = "Master's Thesis", school = "Institut f{\"u}r Informatik, Technische Universit{\"a}t M{\"u}nchen", address = "Munich, Germany", year = "2002", bibdate = "Thu Dec 01 07:15:41 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Willrich:2002:MAH, author = "R. Willrich and P. {De Saqui-Sannes} and P. Senac and M. Diaz", title = "Multimedia Authoring with Hierarchical Timed Stream {Petri} Nets and {Java}", journal = j-MULTIMEDIA-TOOLS-APPLIC, volume = "16", number = "1--2", pages = "7--27", month = jan, year = "2002", CODEN = "MTAPFB", ISSN = "1380-7501", ISSN-L = "1380-7501", bibdate = "Fri Nov 8 05:39:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Multimedia Tools and Applications", pagecount = "21", } @Article{Winiecki:2002:NJB, author = "W. Winiecki and M. Karkowski", title = "A New {Java}-Based Software Environment for Distributed Measuring Systems Design", journal = j-IEEE-TRANS-INSTRUM-MEAS, volume = "51", number = "6", pages = "1340--1346", year = "2002", CODEN = "IEIMAO", ISSN = "0018-9456 (print), 1557-9662 (electronic)", ISSN-L = "0018-9456", bibdate = "Tue Mar 4 09:14:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Instrumentation and Measurement", } @Article{Winkler:2002:SVU, author = "J{\"u}rgen F. H. Winkler", title = "A safe variant of the unsafe integer arithmetic of {Java$^{TM}$}", journal = j-SPE, volume = "32", number = "7", pages = "669--701", month = jun, year = "2002", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.454", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 16 18:25:58 MDT 2002", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www3.interscience.wiley.com/cgi-bin/abstract/94515736/START; http://www3.interscience.wiley.com/cgi-bin/fulltext?ID=94515736&PLACEBO=IE.pdf", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "arithmetics in programming languages; divide-by-zero; floating-point arithmetic; IEEE 754; Java; overflow; program structure; range limitation; rounding; safe arithmetic operations; underflow; zero-divide", } @Article{Witten:2002:DMP, author = "Ian H. Witten and Eibe Frank", title = "Data mining: practical machine learning tools and techniques with {Java} implementations", journal = "SIGMOD", volume = "31", number = "1", pages = "76--77", month = mar, year = "2002", bibdate = "Mon Jan 12 07:43:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{Wood:2002:JPS, author = "Jo Wood", title = "{Java} programming for spatial sciences", publisher = "Taylor and Francis", address = "New York, NY, USA", pages = "320", year = "2002", ISBN = "0-415-26098-1 (paperback), 0-415-26097-3 (cloth)", ISBN-13 = "978-0-415-26098-5 (paperback), 978-0-415-26097-8 (cloth)", LCCN = "QA76.73.J38 W6615 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "geographic information systems; Java (computer program language)", } @Article{Workman:2002:CMT, author = "David A. Workman", title = "A class and method taxonomy for object-oriented programs", journal = j-SIGSOFT, volume = "27", number = "2", pages = "53--58", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511161", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The object-oriented approach to software design together with the programming languages (C++, Java, and Ada95) and design notations (e.g. UML) that support this paradigm, have precipitated new interest in developing and tailoring software metrics to more effectively quantify properties of OO systems. To be specific, this research on OO software is motivated by two related problems. (1) In many computer science courses instructors are torn between two conflicting goals: (a) increasing the number and difficulty of programming assignments to raise students' problem solving skills and maturity, while on the other hand, (b) giving meaningful feedback on the correctness and quality of programs they write. To address this problem, we are developing an automated Java program grading system. This system will compare student programs to an oracle program prepared by the instructor for a given assignment. The oracle program represents the ``ideal'' solution. In addition to computing a quantitative score for a student program, the grading program will also provide feedback on modifications or changes the student could or should make to improve the quality of the design of his or her solution. (2) A problem that is all too common in the computing industry is software theft. This has led to much copyright infringement litigation within our court system. As an expert witness in such cases, one of the tasks I have been frequently asked to perform is evaluate two programs to determine the nature and extent of their similarity. A tool, such as our planned program grading system, is needed to facilitate the kind of analysis required in such cases. In the academic world, the equivalent to software theft is plagiarism. Therefore, as an application complementary to program grading, our proposed system will also serve as a tool for identifying ``cheaters'' by comparing two student programs to one another, rather than to the oracle. So, in summary, our goal is to develop the key algorithms and eventually a program analysis system that will effectively determine the similarity of two programs written in the same language. Since Java is becoming one of the most widely used programming languages, and because of its relatively ``clean'' syntax and semantics, Java will provide the focus for our initial investigation. Java programs are composed of three essential building blocks: packages, classes, and methods. Methods are the functional or procedural units that perform or realize the algorithms necessary to solve a computational problem. Methods are grouped with encapsulated data to define classes -new types that extend Java's set of primitive types. Finally, classes are organized into subsystems or libraries using packages. Thus, when comparing two Java programs to determine their similarity, we must establish a correspondence between the packages, classes, and methods of the two programs under consideration. This suggests we must ascertain for a given pair of units, one from each program whether or not they are sufficiently similar to warrant being identified as ``matching'' in our correspondence analysis. To be similar, they must be ``doing the essentially the same thing'' -that is, they must both serve the same computational purpose. Assuming we are successful in developing some technique for determining similarity of purpose, we are still faced with the potentially large numbers of unit-pairs that must be considered in our analysis. The sheer magnitude of our computational problem thus looms as a major obstacle to obtaining any real practical solution. Using the names of units to limit what pairs need to be compared, while certainly reducing the potential computational load, is not a very reliable strategy --- particularly if the author of one program has made a deliberate attempt to disguise similarity with another program by uniformly changing names. Thus, in an attempt to address the computational load problem and the identification problem for comparison analysis, we plan to make an initial pass over each program to categorize methods and classes according to their purpose. The rationale for this is: two units will be selected for detailed comparison analysis only if they belong to of the same purpose category. The focus of this paper, therefore, is to present definitions and examples of the purpose categories for methods and classes. How these purpose categories will be used in a larger comparison strategy is beyond the scope of this work. Refer to Lan[13] for further a more complete and detailed description of our methodology.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wyatt:2002:ISI, author = "Jason N. Wyatt and Martha J. Kosa and Mark A. Boshart", title = "Implementing student ideas in {CS2}: a simple {IDE}", journal = j-SIGCSE, volume = "34", number = "3", pages = "224--224", month = sep, year = "2002", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/637610.544492", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:56 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "It is very hard for faculty members to create programming assignments that are simultaneously challenging, accessible, and practical for students year after year. In some advanced undergraduate courses, most notably software engineering courses, students may specify their own programming projects. We demonstrate here that it is also possible for beginning undergraduate students to have good ideas for realistic programming projects, specifically a simple IDE (Integrated Development Environment) program which lets the user generate a basic GUI. The program then produces as output a Java source file, with some event-handling code, which can reproduce the GUI. Of course, we can't and don't expect the program to have all the features of a professional IDE, but it could be useful for CS1/CS2 students. A freshman CS2 student conceived and implemented this assignment in the Spring 2001 semester as part of an honors contract. Honors students elect to do extra work in courses for credit toward graduation with honors. Such a student designs a contract, to be approved by the instructor, indicating the extra work and its effect on the final grade. Although an honors student developed this project, this project is suitable in general for CS2 students. We now describe the features of the project. A settings frame and a drawing frame appear first. The settings frame allows the user to name the Java output file. It also has a Save button, a text field to control the arrow keys, and checkboxes that allow the user to choose if a main method will appear in the output file, if the resulting application frame will be centered on the screen, and if window listener code will be generated for the application frame. The right mouse button is used to add a component. When the mouse is released, the user chooses the component's type and then the desired variable name and caption. Components appear as black unfilled rectangles. The component declarations (alphabetically by variable name) and skeleton code for handling button clicks will appear in the output file. Clicking the left mouse button in a rectangle turns the rectangle red. The shift key and the left mouse button move such a component. The arrow keys resize the component. Component sizes will be preserved in the output file. The component's properties are updated with the C key. The delete key removes the component. We believe that this project is a challenging (but not impossible) and useful application of CS2 concepts.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Yan:2002:RCC, author = "C. Yan", title = "Race condition and concurrency safety of multithreaded object-oriented programming in {Java}", journal = "IEEE International Conference on Systems Man and Cybernetics", volume = "6", pages = "??--??", year = "2002", CODEN = "????", ISSN = "1062-922X", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, xxpages = "WA1Q3", } @Article{Yanagiuchi:2002:LJI, author = "S. Yanagiuchi and T. Kiyohara and N. Shiraishi and K. Mori and M. Ohkita", title = "{Linux\slash Java} Implemented Personal Mobile Tool {SL-A300}", journal = "Sharp Technical Journal", volume = "84", publisher = "Sharp Kabushiki Gaisha Gijutsu Honbu", pages = "31--32", year = "2002", CODEN = "????", ISSN = "0285-0362", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Yavuz-Kahveci:2002:SVS, author = "Tuba Yavuz-Kahveci and Tevfik Bultan", title = "Specification, verification, and synthesis of concurrency control components", journal = j-SIGSOFT, volume = "27", number = "4", pages = "169--179", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566199", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Run-time errors in concurrent programs are generally due to the wrong usage of synchronization primitives such as monitors. Conventional validation techniques such as testing become ineffective for concurrent programs since the state space increases exponentially with the number of concurrent processes. In this paper, we propose an approach in which (1) the concurrency control component of a concurrent program is formally specified, (2) it is verified automatically using model checking, and (3) the code for concurrency control component is automatically generated. We use monitors as the synchronization primitive to control access to a shared resource by multipleconcurrent processes. Since our approach decouples the concurrency control component from the rest of the implementation it is scalable. We demonstrate the usefulness of our approach by applying it to a case study on Airport Ground Traffic Control. We use the Action Language to specify the concurrency control component of a system. Action Language is a specification language for reactive software systems. It is supported by an infinite-state model checker that can verify systems with boolean, enumerated and unbounded integer variables. Our code generation tool automatically translates the verified Action Language specification into a Java monitor. Our translation algorithm employs symbolic manipulation techniques and the specific notification pattern to generate an optimized monitor class by eliminating the context switch overhead introduced as a result of unnecessary thread notification. Using counting abstraction, we show that we can automatically verify the monitor specifications for arbitrary number of threads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Young:2002:EXJ, author = "David Young", title = "{Enhydra XMLC Java} presentation development", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xiii + 483", year = "2002", ISBN = "0-672-32211-0", ISBN-13 = "978-0-672-32211-2", LCCN = "QA76.76.A65 Y68 2002", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; Java (computer program language); mobile computing", } @Article{Yuan:2002:JQH, author = "Michael J. Yuan", title = "{Java Q\&A}: How Do {I} Map {SQL} Database Tables to {Java} Objects?", journal = j-DDJ, volume = "27", number = "3", pages = "89--90, 92--94", month = mar, year = "2002", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Feb 12 05:21:42 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2002/2002_03/jqa0302.txt; http://www.ddj.com/ftp/2002/2002_03/jqa0302.zip", abstract = "How Do I Map SQL Database Tables to Java Objects? Additional resources include {\tt jqa0302.txt} (listings) and {\tt jqa0302.zip} (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Yuniar:2002:KFJ, author = "A. T. Yuniar and Andreas and T. Walter", title = "{,,Kodok'' --- Froschzucht auf Java}", journal = "Datz", volume = "55", number = "12", publisher = "Eugen Ulmer Gmbh \& Co.", pages = "18--21", year = "2002", CODEN = "????", ISSN = "0723-4066", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @MastersThesis{Zaraysky:2002:OJP, author = "Gregory Zaraysky", title = "Optimization of {Java} programs for embedded systems", type = "Thesis (M.S.)", school = "University of California, Santa Cruz", address = "Santa Cruz, CA, USA", year = "2002", LCCN = "QA76.73.J38 Z37 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer science; Java (computer program language); masters theses -- University of California, Santa Cruz -- computer science; object-oriented programming (computer science)", } @InProceedings{Zendra:2002:STC, author = "Olivier Zendra and Karel Driesen", title = "Stress-testing Control Structures for Dynamic Dispatch in {Java}", crossref = "USENIX:2002:PJV", pages = "??--??", year = "2002", bibdate = "Tue Oct 15 12:37:27 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/javavm02/zendra.html", acknowledgement = ack-nhfb, } @Article{ZenilC:2002:GJP, author = "H{\'e}ctor {Zenil C.}", title = "Good {JavaServer} Pages Introduction: a review of {Web Development with JavaServer Pages}, 2nd edition by {Duane K. Fields} and {Mark A. Kolb}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "3", number = "6", year = "2002", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Wed Oct 23 17:47:56 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0206/departments/bks_c.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Zhao:2002:UJB, author = "J. Zhao and L. Xiang and K. Nishimi and T. Harada", title = "Understanding {Java} Bytecode Programs using {Kafer}", journal = "Applied Informatics", volume = "2", pages = "108--112", year = "2002", CODEN = "????", ISSN = "1027-2666", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zhou:2002:GCA, author = "Q. Zhou and P. Tarau", title = "Garbage Collection Algorithms for {Java}-Based {Prolog} Engines", journal = j-LECT-NOTES-COMP-SCI, volume = "2562", pages = "304--319", year = "2002", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Feb 11 05:32:25 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Abraham:2003:IPO, author = "E. Abraham and F. S. deBoer and W. P. deRoever and M. Steffen", title = "Inductive Proof Outlines for Monitors in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2884", pages = "155--169", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 15 12:30:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Abraham:2003:TSP, author = "E. Abraham and F. S. deBoer and W. P. deRoever and M. Steffen", title = "A Tool-Supported Proof System for Multithreaded {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2852", pages = "1--32", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 11 05:21:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Adams:2003:OCD, author = "J. Adams and J. Frens", title = "Object Centered Design for {Java}: Teaching {OOD} in {CS-1}", journal = j-SIGCSE, volume = "35", number = "1", pages = "273--277", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Adl-Tabatabai:2003:SDC, author = "Ali-Reza Adl-Tabatabai and Jay Bharadwaj and Dong-Yuan Chen and Anwar Ghuloum and Vijay Menon and Brian Murphy and Mauricio Serrano and Tatiana Shpeisman", title = "The {StarJIT} Compiler: a Dynamic Compiler for Managed Runtime Environments", journal = j-INTEL-TECH-J, volume = "7", number = "1", pages = "19--31", month = feb, year = "2003", ISSN = "1535-766X", bibdate = "Wed Dec 10 15:50:48 2003", bibsource = "http://developer.intel.com/technology/itj/2003/volume07issue01/index.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://developer.intel.com/technology/itj/2003/volume07issue01/art02_starjit/p01_abstract.htm", acknowledgement = ack-nhfb, keywords = "Common Language Runtime; dynamic optimization; Java; JIT; Just-in-time compiler; virtual machine", } @Article{Agarwal:2003:TIP, author = "R. Agarwal and S. D. Stoller", title = "Type Inference for Parameterized Race-Free {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2937", pages = "149--160", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Aissi:2003:RAW, author = "Selim Aissi", title = "Runtime Environment Security Models", journal = j-INTEL-TECH-J, volume = "7", number = "1", pages = "60--67", month = feb, year = "2003", ISSN = "1535-766X", bibdate = "Wed Dec 10 15:50:48 2003", bibsource = "http://developer.intel.com/technology/itj/2003/volume07issue01/index.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://developer.intel.com/technology/itj/2003/volume07issue01/art05_security/p01_abstract.htm", acknowledgement = ack-nhfb, keywords = "access control; ASP.NET security; CLR security; Java security; JRE security; runtime access control models; runtime security; sandbox; security models", } @Article{Albrecht:2003:TJI, author = "Matt Albrecht", title = "Testing {Java} Interfaces with {Junit}", journal = j-DDJ, volume = "28", number = "2", pages = "24, 26, 28", month = feb, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:21 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0302/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://www.ddj.com/documents/s=7790/ddj0302c/", abstract = "The GroboUtils JUnit Extension lets you write tests for inherited logic, leading to better maintainability and lower test-development costs.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Aldinucci:2003:AES, author = "M. Aldinucci and M. Danelutto and P. Teti", title = "An advanced environment supporting structured parallel programming in {Java}", journal = j-FUT-GEN-COMP-SYS, volume = "19", number = "5", pages = "611--626", month = jul, year = "2003", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Tue Jun 3 08:07:59 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", remark = "Tools for Program Development and Analysis. Best papers from two Technical Sessions, at ICCS2001, San Francisco, CA, USA, and ICCS2002, Amsterdam, The Netherlands.", } @Article{Aldrich:2003:CSE, author = "Jonathan Aldrich and Emin G{\"u}n Sirer and Craig Chambers and Susan J. Eggers", title = "Comprehensive synchronization elimination for {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "47", number = "2--3", pages = "91--120", month = may # "\slash " # jun, year = "2003", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Sun Jan 11 10:42:03 MST 2004", bibsource = "http://www.elsevier.com/locate/issn/01676423; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", remark = "Special Issue on Static Analysis (SAS'99).", } @Article{Aleksy:2003:DIB, author = "M. Aleksy and M. Schader and A. Schnell", title = "Design and Implementation of a Bridge between {CORBA}'s {Notification Service} and the {Java Message Service} ({STDOC02})", journal = "Proceedings of the Annual Hawaii International Conference on System Sciences", volume = "CONF36", pages = "318", year = "2003", CODEN = "????", ISSN = "1060-3425", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Allen:2003:SJP, author = "Matthew Allen and Susan Horwitz", title = "Slicing {Java} programs that throw and catch exceptions", journal = j-SIGPLAN, pages = "284--294", year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 22 16:55:47 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Allman:2003:EXR, author = "Mark Allman", title = "An evaluation of {XML-RPC}", journal = j-SIGMETRICS, volume = "30", number = "4", pages = "2--11", month = mar, year = "2003", CODEN = "????", DOI = "https://doi.org/10.1145/773056.773057", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Thu Jun 26 11:41:22 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper explores the complexity and performance of the XML-RPC system for remote method invocation. We developed a program that can use either XML-RPC-based network communication or a hand-rolled version of networking code based on the java.net package. We first compare our two implementations using traditional object-oriented metrics. In addition, we conduct tests over a local network and the Internet to assess the performance of the two versions of the networking code using traditional internetworking metrics. We find that XML-RPC reduces the programming complexity of the software by roughly 50\% (across various metrics). On the other hand, the hand-rolled java.net-based implementation offers up to an order of magnitude better network performance in some of our tests.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Article{Alt:2003:PGS, author = "M. Alt and S. Gorlatch", title = "A Prototype {Grid} System Using {Java} and {RMI}", journal = j-LECT-NOTES-COMP-SCI, volume = "2763", pages = "401--414", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alt:2003:USJ, author = "M. Alt and S. Gorlatch", title = "Using Skeletons in a {Java}-Based {Grid} System", journal = j-LECT-NOTES-COMP-SCI, volume = "2790", pages = "742--749", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alvarez:2003:JCT, author = "P. Alvarez and J. A. Banares and P. R. MuroMedrano and J. Nogueras and F. J. Zarazaga", title = "A {Java} Coordination Tool for {Web}-Service Architectures: The Location-Based Service Context", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "1--14", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Amza:2003:NCB, author = "C. Amza and G. Reggio", title = "A Notation for Component-Based Design of {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "155--164", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ananian:2003:DSO, author = "C. Scott Ananian and Martin Rinard", title = "Data Size Optimizations for {Java} Programs", journal = j-SIGPLAN, volume = "38", number = "7", pages = "59--68", month = jul, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ancona:2003:JDJ, author = "Davide Ancona and Giovanni Lagorio and Elena Zucca", title = "{Jam}---designing a {Java} extension with mixins", journal = j-TOPLAS, volume = "25", number = "5", pages = "641--712", month = sep, year = "2003", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Fri Sep 26 19:13:26 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Andronick:2003:UCV, author = "J. Andronick and B. Chetali and O. Ly", title = "Using {Coq} to Verify {Java} Card Applet Isolation Properties", journal = j-LECT-NOTES-COMP-SCI, volume = "2758", pages = "335--351", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Anonymous:2003:AOS, author = "Anonymous", title = "{Avanti}: Open Source Compact, Self-Contained {ILS} in {Java}", journal = j-INFO-RETRIEVAL-LIB-AUTO, volume = "38", number = "8", pages = "7--??", year = "2003", CODEN = "IRLAAQ", ISSN = "0020-0220", bibdate = "Tue Feb 18 07:16:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Retrieval and Library Automation", } @Article{Anonymous:2003:BJJ, author = "Anonymous", title = "{Borland Jbuilder Java 8}", journal = j-PERS-COMPUT-WORLD, volume = "26", number = "3", publisher = "VNU Business Publications", pages = "96", year = "2003", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{Anonymous:2003:BNA, author = "Anonymous", title = "Brave New Apps", journal = j-PC-MAGAZINE, volume = "22", number = "13", pages = "114--137", year = "2003", CODEN = "PCMGEP", ISSN = "0888-8507", ISSN-L = "0888-8507", bibdate = "Tue Aug 12 09:01:52 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", abstract = "Thanks to the arrival of Web services, it's no longer enough for development tools to create standalone applications. IDEs (integrated development environments) both for Java J2EE architectures and for the Microsoft.NET framework now include tools that help programmers deliver the new, service-oriented apps. We put six major IDEs through their paces with a focus on Web service creation and cross-platform deployment", acknowledgement = ack-nhfb, fjournal = "PC Magazine", } @Article{Anonymous:2003:BRJ, author = "Anonymous", title = "Book Review: {{\booktitle{Java precisely}}: By Peter Sestoft. The MIT Press, Cambridge, MA. (2002). 118 pages. \$14.95}", journal = j-COMPUT-MATH-APPL, volume = "46", number = "2--3", pages = "517--518", month = jul # "\slash " # aug, year = "2003", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Mar 1 21:49:31 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://www.sciencedirect.com/science/article/pii/S0898122103900708", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/08981221", pagecount = "2", } @Article{Anonymous:2003:CWD, author = "Anonymous", title = "Controlling {Webserver} demand for {Java} applets for browsers supporting {Java 2 JRE}", journal = "Research Disclosure", volume = "466", publisher = "Kenneth Mason Publications", pages = "302", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:DJR, author = "Anonymous", title = "Demand for {Java} remains high because companies are keen to develop front-end {Web} sites", journal = "Computing (London, England: 1980)", publisher = "VNU Business Publications", pages = "43--43", day = "13", month = mar, year = "2003", CODEN = "CPTGB5", ISSN = "0144-3097", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:ELN, author = "Anonymous", title = "{EEMBC} launches new benchmarks to address digital media and {Java}", journal = "New Electronics", volume = "36", number = "16", pages = "12", year = "2003", CODEN = "????", ISSN = "0047-9624", bibdate = "Tue Oct 7 05:32:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:FFG, author = "Anonymous", title = "``Filter'' --- a framework to generate subsets of collections in programs written in {Java} programming language. It is a piece of software useful for other software projects", journal = "Research Disclosure", volume = "466", publisher = "Kenneth Mason Publications", pages = "322", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:FWA, author = "Anonymous", title = "Four-way asynchronous {I/O} using dual paired buffers for {Java}-based intermediate\slash proxy {HTTP} nodes in a communications network", journal = "Research Disclosure", volume = "466", publisher = "Kenneth Mason Publications", pages = "313", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:GUI, author = "Anonymous", title = "Graphical user interface primitives independent library for building {Java} based software", journal = "Research Disclosure", volume = "466", publisher = "Kenneth Mason Publications", pages = "299", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:IMM, author = "Anonymous", title = "{ICT Motorola} mise sur {Java} et {J2ME}", journal = "Enjeux", volume = "233", publisher = "AFNOR", pages = "22", year = "2003", CODEN = "????", ISSN = "0223-4866", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:IUU, author = "Anonymous", title = "Industry Upstarts: {US}-based {SavaJe} has developed a pure {Java} handset {OS} which it wants to sell to operators directly", journal = "Mobile Communications International", volume = "100", publisher = "Ericsson", pages = "48", year = "2003", CODEN = "????", ISSN = "1352-9226", bibdate = "Tue May 20 06:23:21 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:JAT, author = "Anonymous", title = "{Java API} tackles {Bluetooth} interop: The {Java} community says it has quietly developed a solution for {Bluetooth} interoperability headaches", journal = j-ELECTRONIC-ENG-TIMES, volume = "1262", pages = "16--30", year = "2003", CODEN = "????", ISSN = "0192-1541", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic engineering times", } @Article{Anonymous:2003:JDT, author = "Anonymous", title = "{Java} Development Tools Speed {MIDIet} Creation", journal = j-ELECTRONIC-DESIGN, volume = "51", number = "8", pages = "62", year = "2003", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Anonymous:2003:JEF, author = "Anonymous", title = "{Java} environment focuses on up-front modeling", journal = "Application Development Trends", volume = "10", number = "5", pages = "34", year = "2003", CODEN = "ADTRF4", ISSN = "1073-9564", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:JEJ, author = "Anonymous", title = "{Java in Echtzeit: Java-Technologien f{\"u}r Echtzeit-Anwendungen mit der Real-Time Specification for Java}. ({German}) [{Java} in Real Time: {Java} for Real-Time Applications with the {Real-Time Specification for Java}]", journal = j-ELECTRONIK, volume = "52", number = "16", pages = "66--71", year = "2003", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", language = "German", } @Article{Anonymous:2003:JGJ, author = "Anonymous", title = "{Java} Gets a Jolt", journal = j-INFORMATION-WEEK, volume = "944", pages = "27", year = "2003", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2003:JHS, author = "Anonymous", title = "{Java}'s head start adoption of {Microsoft}'s {C\#} language for building {Web} services is hindered by the prevalence of {Java}", journal = j-INFORMATION-WEEK, volume = "966", pages = "57", year = "2003", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Mon Dec 22 12:18:52 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2003:JLO, author = "Anonymous", title = "For {Java} Lovers: Only gadgets to amp the flavor of your brew", journal = j-BUSINESS-WEEK, volume = "3861", pages = "110--111", year = "2003", CODEN = "BUWEA3", ISSN = "0739-8395", bibdate = "Mon Dec 22 12:18:52 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Business week", } @Article{Anonymous:2003:JPa, author = "Anonymous", title = "{Java} performance", journal = j-SIGPLAN, volume = "38", number = "11", pages = "??--??", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Anonymous:2003:JPb, author = "Anonymous", title = "{Java} precisely", journal = j-COMPUT-MATH-APPL, volume = "46", number = "2--3", pages = "517--518", year = "2003", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Mon Jan 5 17:25:38 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", } @Article{Anonymous:2003:JPc, author = "Anonymous", title = "{Java} precisely", journal = j-COMPUT-MATH-APPL, volume = "46", number = "2--3", pages = "517--518", year = "2003", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Jan 21 08:03:13 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", } @Article{Anonymous:2003:JTM, author = "Anonymous", title = "{Mit Java-Technologie mehr Komfort}", journal = "VDI Z", volume = "145", number = "3", publisher = "VDI Verlag Gmbh", pages = "47--48", year = "2003", CODEN = "????", ISSN = "0042-1766", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:LUE, author = "Anonymous", title = "{Linux}\slash {Unix} Extend {Red Hat 8}'s functionality by adding {Flash}, extra fonts and {Java}", journal = j-PERS-COMPUT-WORLD, volume = "26", number = "3", publisher = "VNU Business Publications", pages = "202--207", year = "2003", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{Anonymous:2003:MJA, author = "Anonymous", title = "Manage {Java} apps for premium performance", journal = "Application Development Trends", volume = "10", number = "1", publisher = "Microsoft Corporation", pages = "50--52", year = "2003", CODEN = "ADTRF4", ISSN = "1073-9564", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:MMI, author = "Anonymous", title = "{Microsoft} must include {Java} in Windows, rules a {US} court", journal = "Computing (London, England: 1980)", publisher = "VNU Business Publications", pages = "13--15", day = "9", month = jan, year = "2003", CODEN = "CPTGB5", ISSN = "0144-3097", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:NAQ, author = "Anonymous", title = "No Assembly: {Q-Link Technologies}' upgraded {Java} development environment helps developers build apps using preassembled components", journal = j-INFORMATION-WEEK, volume = "939", pages = "54--55", year = "2003", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2003:NIC, author = "Anonymous", title = "National {ID} Card Supporting {Java} Applications", journal = "Toshiba Review", volume = "58", number = "8", pages = "56--59", year = "2003", CODEN = "????", ISSN = "0372-0462", bibdate = "Wed Oct 29 06:24:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:NRJ, author = "Anonymous", title = "New release of {JANIS} ({Java}-based nuclear data information services) software", journal = "Nea News", volume = "21", number = "1", publisher = "OECD Publications", pages = "25", year = "2003", CODEN = "????", ISSN = "1605-9581", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:OTJ, author = "Anonymous", title = "Octera Throws a {Javalon}: It's not 100\%-pure {Java}, but the {Javalon-1} processor natively executes most {Java} bytecode instructions", journal = j-MICROPROC-REP, volume = "17", number = "3", pages = "31--37", year = "2003", CODEN = "????", ISSN = "0899-9341", ISSN-L = "0899-9341", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Microprocessor report", } @Article{Anonymous:2003:PBS, author = "Anonymous", title = "Products: {BEA Systems} releases preview of {Java API} for {XML}; {Panda} appliance defends network perimeters; {Parasoft} enhances {Java} test and analysis tool", journal = j-COMPUTER, volume = "36", number = "12", pages = "108--108", month = dec, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:50 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/12/rz108.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PCN, author = "Anonymous", title = "Products: {ClearSight Networks} releases application-layer analyzer; {Intervoice} announces first {SALT}-based components; {VoiceGenie Technologies} upgrades {VoiceXML} platform; {AppForce} enhances mobile-platform design software; {Metrowerks} upgrades tools for embedded {Linux} products; {OpenOffice.org} updates {Linux} office tool suite; {Quest Software} releases {Java} analysis tools", journal = j-COMPUTER, volume = "36", number = "11", pages = "86--87", month = nov, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:48 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/11/ry086.htm; http://csdl.computer.org/dl/mags/co/2003/11/ry086.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PCU, author = "Anonymous", title = "Products: {Compuware} upgrades {J2EE} development environment; {Ektron} releases browser-based image tool; {IronGrid} offers {JDBC} performance tool; {Microsoft} enhances {Java} conversion assistant; {Broadcom} announces single-chip {10-Gigabit Ethernet} switch; {SGI} finalizes {OpenGL 1.5} specification; {Adaptec} extends {Serial ATA RAID} product family", journal = j-COMPUTER, volume = "36", number = "9", pages = "94--95", month = sep, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/09/r9094.htm; http://csdl.computer.org/dl/mags/co/2003/09/r9094.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PJU, author = "Anonymous", title = "Products: {JetBrains} Upgrades {IntelliJ Java IDE}; {Catalyst}'s {USB} Analyzer Supports Device Emulation; {VMware} Releases {Enterprise Server VM} Software; {Motorola} Offers Free Soft Modem Reference Design; {RealNetworks} Releases Source for {Helix DNA Server}; {Packeteer} Accelerates Intranet and {Internet} Applications", journal = j-COMPUTER, volume = "36", number = "3", pages = "80--81", month = mar, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:55 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/03/r3080.htm; http://csdl.computer.org/dl/mags/co/2003/03/r3080.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PLJ, author = "Anonymous", title = "{Portable L{\"o}sung: Java in Embedded-Systemen}. ({German}) [{Portable} solution: {Java} in Embedded Systems]", journal = "Elektronik Praxis", volume = "15", pages = "36--45", year = "2003", CODEN = "????", ISSN = "0341-5589", bibdate = "Mon Feb 2 15:02:19 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Article{Anonymous:2003:POU, author = "Anonymous", title = "Products: {Omnicore} Upgrades {Java} Development Tools; {TimeSys} Announces First {RTSJ}-Compliant {JVM}; {Xilinx} Adds Hardware-in-the-Loop Cosimulation to {DSP} Design Tool; {gInstall}'s Upgrades Setup System Platform; {Motorola} Launches Motocoder Developer Platform; {ARM} Upgrades Compilation Tools for Embedded Apps; {SGI} Server Leads {HPC} Benchmarks", journal = j-COMPUTER, volume = "36", number = "5", pages = "69--70", month = may, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:40 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/05/r5069.htm; http://csdl.computer.org/dl/mags/co/2003/05/r5069.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PPG, author = "Anonymous", title = "Peripherals Printers get {Java} networking", journal = "Computer Weekly", pages = "26--27", day = "20", month = mar, year = "2003", CODEN = "COMWAA", ISSN = "0010-4787", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:PSA, author = "Anonymous", title = "Products: {SGI} Announces Record-Performing {Linux} Servers; {Pacific Nanotechnogy} Releases Atomic Force Microscope; {Nvidia} Extends {Cg} Programming Environment; {Empirix} Introduces {VoIP} Analyzer; {Codagen Technologies} Upgrades {UML} Tool; {Perforce Software} Enhances {SCM} System; {CompuWare} Upgrades {Java} Development Tool", journal = j-COMPUTER, volume = "36", number = "2", pages = "80--81", month = feb, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/02/r2080.htm; http://csdl.computer.org/dl/mags/co/2003/02/r2080.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PSR, author = "Anonymous", title = "Products: {Starbase} Releases Decision-Support Software; {OC Systems} Extends Analysis Tool to {J2EE}; {InstallShield} Streamlines Software Installation App; {Silicon Defense} Counters Stealth Scans; Compuware Upgrades {Java} Profiling Tool;' {Pervasive Software} Releases {V8} Database Engine; {Xilinx} Ships {DSP} Design Tool; {MKS} Adds Wizards to Monitoring System", journal = j-COMPUTER, volume = "36", number = "1", pages = "112--113", month = jan, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:52 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/01/r1112.htm; http://csdl.computer.org/dl/mags/co/2003/01/r1112.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:PVF, author = "Anonymous", title = "Products: {VMware}'s Fourth-Generation Desktop Virtualization Software; Automated Design Reviews with {Reviewer for Rose}; {CodeWeavers} Debues {CrossOver Office}; {Corel Smart Graphics Studio} Now Available; {IronGrid}'s {Java} Performance Tool; {Infragistics} Releases {NetAdvantage} Component Collection", journal = j-COMPUTER, volume = "36", number = "6", pages = "98--99", month = jun, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:41 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/06/r6098.htm; http://csdl.computer.org/dl/mags/co/2003/06/r6098.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Anonymous:2003:RAI, author = "Anonymous", title = "Remote access to {IMS DB} data using {DB2} stored procedures and {Java ResultSet} objects", journal = "Research Disclosure", volume = "465", pages = "118", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:RAS, author = "Anonymous", title = "`Run anywhere' scheme eclipses {OS}. {A} ``write\slash run anywhere'' system puts {Java} programs into embedded-{C} programs with no operating system", journal = j-ELECTRONIC-ENG-TIMES, volume = "1260", pages = "49--50", year = "2003", CODEN = "????", ISSN = "0192-1541", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic engineering times", } @Article{Anonymous:2003:RVF, author = "Anonymous", title = "{RT} Vendor Forum: The many faces of {Java}", journal = "Chain Store Age", volume = "79", number = "5", publisher = "Lebhar-Friedman Inc", pages = "122--123", year = "2003", CODEN = "????", bibdate = "Tue Jun 3 08:07:59 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:SPR, author = "Anonymous", title = "Simulation program recoded in {Java}", journal = "Advanced Composites Bulletin", volume = "APR", publisher = "International Newsletters", pages = "7", year = "2003", CODEN = "????", ISSN = "0951-953X", bibdate = "Tue Apr 22 09:22:21 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:SRJ, author = "Anonymous", title = "{Sun} relance {Java}", journal = "Usine Nouvelle", volume = "2876", pages = "31", year = "2003", CODEN = "????", ISSN = "0042-126X", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:SSA, author = "Anonymous", title = "Software, silicon acceleration brew a stronger {Java}", journal = j-EDN, volume = "48", number = "6", pages = "18--19", year = "2003", CODEN = "EDNSBH", ISSN = "0012-7515, 0364-6637", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "EDN", } @Article{Anonymous:2003:TAJ, author = "Anonymous", title = "{TeamStudio} Analyzer for {Java E2}", journal = "Application Development Advisor", volume = "7", number = "3", pages = "18", year = "2003", CODEN = "????", ISSN = "1369-4200", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:TMC, author = "Anonymous", title = "For {Taiwan}'s 22 million citizens, {Java Smart Cards} are clamping down on health-care fraud", journal = j-PC-MAGAZINE, volume = "22", number = "17", pages = "66--67", year = "2003", CODEN = "PCMGEP", ISSN = "0888-8507", ISSN-L = "0888-8507", bibdate = "Tue Sep 30 06:17:55 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "PC Magazine", } @Article{Anonymous:2003:UJW, author = "Anonymous", title = "Using {Java} on the {Web}", journal = "PC Plus", volume = "198", pages = "184--187", year = "2003", CODEN = "????", ISSN = "0952-2565", bibdate = "Wed Dec 11 08:15:36 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", note = "Richard Cobbett gets graphical with Swing, AWT and CodeWarrior.", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:VPU, author = "Anonymous", title = "Visual programming Using layout managers to achieve display-independent {Java} applications", journal = j-PERS-COMPUT-WORLD, volume = "26", number = "7", pages = "213--214", year = "2003", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{Anonymous:2003:WOF, author = "Anonymous", title = "{Wave} opens {Finread} terminals to {Java} applications", journal = "Card Technology Today", volume = "15", number = "1", pages = "8--9", year = "2003", CODEN = "????", ISSN = "0965-2590", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2003:WRT, author = "Anonymous", title = "Will The Real-Time {Java} Please Stand Up?", journal = j-ELECTRONIC-DESIGN, volume = "51", number = "8", pages = "61", year = "2003", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{April:2003:AJA, author = "C. A. April", title = "Automating {Java} Apps", journal = "Varbusiness", volume = "19", number = "11", pages = "51--52", year = "2003", CODEN = "????", ISSN = "0894-5802", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Avvenuti:2003:JBV, author = "Marco Avvenuti and Cinzia Bernardeschi and Nicoletta De Francesco", title = "{Java} bytecode verification for secure information flow", journal = j-SIGPLAN, volume = "38", number = "12", pages = "20--27", month = dec, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Feb 2 14:16:14 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Awhad:2003:UFS, author = "V. Awhad and C. Wallace", title = "A Unified Formal Specification and Analysis of the New {Java} Memory Models", journal = j-LECT-NOTES-COMP-SCI, volume = "2589", pages = "166--185", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bacon:2003:CFS, author = "David F. Bacon and Perry Cheng and V. T. Rajan", title = "Controlling Fragmentation and Space Consumption in the {Metronome}, a Real-time Garbage Collector for {Java}", journal = j-SIGPLAN, volume = "38", number = "7", pages = "81--92", month = jul, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bacon:2003:KJD, author = "David F. Bacon", title = "{Kava}: a {Java} dialect with a uniform object model for lightweight classes", journal = j-CCPE, volume = "15", number = "3--5", pages = "185--206", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.653", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Badeen:2003:MCM, author = "C. Badeen and M. A. Dube", title = "Modeling the Copolymerization of Methyl {Methacrylate\slash} alpha-Methyl Styrene at Elevated Temperatures Using {Java}", journal = "Polymer Reaction Engineering", volume = "11", number = "1", pages = "53--78", year = "2003", CODEN = "????", ISSN = "1054-3414", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Bailey:2003:JSD, author = "Duane A. Bailey", title = "{Java} structures: data structures in {Java} for the principled programmer", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, edition = "Second", pages = "xiv + 514", year = "2003", ISBN = "0-07-239909-0, 0-07-112163-3", ISBN-13 = "978-0-07-239909-7, 978-0-07-112163-7", LCCN = "QA76.73.J38 B34 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Article{Bal:2003:IJB, author = "H. E. Bal", title = "{Ibis}: a {Java}-Based {Grid} Programming Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2790", pages = "4", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{BalaKumar:2003:BAP, author = "C. {Bala Kumar} and Paul Kline and Tim Thompson", title = "{Bluetooth} Application Programming with the {Java APIs}", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xxii + 498", year = "2003", ISBN = "1-55860-934-2", ISBN-13 = "978-1-55860-934-1", LCCN = "TK5103.3 .K86 2004", bibdate = "Sat Aug 02 08:43:32 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", series = "The Morgan Kaufmann series in networking", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/els051/2003107476.html; http://www.loc.gov/catdir/toc/els051/2003107476.html", acknowledgement = ack-nhfb, remark = "Introduction -- An overview of JABWT -- High-level architecture -- RFCOMM -- OBEX -- Device discovery -- Service discovery -- L2CAP -- Example applications -- Implementing JABWT on a device -- Closing remarks..", subject = "Bluetooth technology; Java (Computer program language); Application program interfaces (Computer software); Wireless communication systems", } @Article{Baldoni:2003:PAJ, author = "R. Baldoni and S. Cimmino and C. Marchetti and A. Termini", title = "Performance Analysis of {Java} Group Toolkits: a Case Study", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "49--60", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Bales:2003:JPR, author = "Donald Bales", title = "{JDBC} pocket reference", publisher = pub-ORA, address = pub-ORA:adr, pages = "vi + 145", year = "2003", ISBN = "0-596-00457-5", ISBN-13 = "978-0-596-00457-6", LCCN = "QA76.73.J38 B355 2003", bibdate = "Mon Apr 18 15:06:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596004576", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Database management; Computer programs; Application program interfaces (Computer software)", } @Article{Ballance:2003:BRJ, author = "R. Ballance", title = "Book Review: {{\em Java Precisely}, by Peter Seetoft, MIT Press, 2002, \$14.95, ISBN 0-262-69276-7}", journal = j-QUEUE, volume = "1", number = "6", pages = "70--70", month = sep # "\slash " # oct, year = "2003", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Sat Aug 23 11:00:11 2003", bibsource = "http://www.acmqueue.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Barake:2003:BRE, author = "Tony Barake", title = "Book Review: The Enterprise Goes to School: a review of {{\em Wireless Java Programming for Enterprise Applications: Mobile Devices Go Corporate\/}} by {Dan Harkey}, {Shan Appajodu}, and {Mike Larkin}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "4", number = "7", year = "2003", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Sat Jan 03 14:59:06 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0307/d/bks_a.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Book{Barker:2003:BJO, author = "Jacquie Barker", title = "Beginning {Java} Objects: From Concepts to Code", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "688 (est.)", year = "2003", ISBN = "1-59059-146-1", ISBN-13 = "978-1-59059-146-8", LCCN = "????", bibdate = "Fri Nov 07 05:30:37 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Barrett:2003:DPJ, author = "Tom Barrett", title = "Dynamic Proxies in {Java} and {.NET}", journal = j-DDJ, volume = "28", number = "7", pages = "18, 20, 22, 24, 26", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/dyproxy.zip", abstract = "Tom examines how proxies separate cross-cutting concerns, then explores and --- in both Java and C\# and --- a new twist on the traditional Proxy pattern that promotes reuse and decreases complexity. Additional resources include dyproxy.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Basin:2003:BVM, author = "David A. Basin and Stefan Friedrich and Marek Gawkowski", title = "Bytecode Verification by Model Checking", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "399--444", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025059508087", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/A%3A1025059508087", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Bathelt:2003:JID, author = "M. Bathelt", title = "{Java} Infotainment Devices", journal = "VDI Berichte", volume = "1789", number = "??", pages = "1099--1114", year = "2003", CODEN = "????", ISSN = "0083-5560", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Bauer:2003:MSM, author = "Lujo Bauer and Andrew W. Appel and Edward W. Felten", title = "Mechanisms for secure modular programming in {Java}", journal = j-SPE, volume = "33", number = "5", pages = "461--480", day = "25", month = apr, year = "2003", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.516", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Nov 29 17:39:44 MST 2003", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "5 Mar 2003", } @Article{Beckert:2003:PLH, author = "B. Beckert and W. Mostowski", title = "A Program Logic for Handling {JAVA CARD}'s Transaction Mechanism", journal = j-LECT-NOTES-COMP-SCI, volume = "2621", pages = "246--260", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Benander:2003:PJE, author = "A. C. Benander and B. A. Benander and M. Lin", title = "Perceptions of {Java} --- Experienced Programmers' Perspective", journal = j-J-COMP-INFO-SYS, volume = "43", number = "4", pages = "1--7", year = "2003", CODEN = "JCISE9", ISSN = "0887-4417", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of Computer Information Systems", } @Article{Benowitz:2003:EAR, author = "E. G. Benowitz and A. F. Niessner", title = "Experiences in Adopting Real-Time {Java} for Flight-Like Software", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "490--496", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Beraldi:2003:TUT, author = "R. Beraldi and L. Nigro and A. Orlando", title = "Temporal Uncertainty Time Warp: An Implementation Based on {Java} and {ActorFoundry}", journal = j-SIMULATION, volume = "79", number = "10", pages = "581--597", year = "2003", CODEN = "SIMUA2", ISSN = "0037-5497 (print), 1741-3133 (electronic)", ISSN-L = "0037-5497", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation", } @Article{Bertie:2003:TCI, author = "A. Bertie and P. Farrington", title = "Teaching Confidence Intervals with {Java} Applets", journal = "Teaching Statistics", volume = "25", number = "3", publisher = "Blackwell Publishers", pages = "70--75", year = "2003", CODEN = "????", ISSN = "0141-982X (print), 1467-9639 (electronic)", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Bettini:2003:EJD, author = "L. Bettini and S. Capecchi and B. Venneri", title = "Extending {Java} to dynamic object behaviors", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "82", number = "8", pages = "1--20", year = "2003", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Bettini:2003:JMG, author = "L. Bettini and R. DeNicola", title = "A {Java} Middleware for Guaranteeing Privacy of Distributed Tuple Spaces", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "175--184", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bettini:2003:MIJ, author = "L. Bettini and M. Loreti and B. Venneri", title = "On multiple inheritance in {Java}", journal = "Kluwer International Series in Engineering and Computer Science", volume = "732", pages = "1--15", year = "2003", CODEN = "????", ISSN = "0893-3405", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Bierman:2003:EEI, author = "G. M. Bierman and M. J. Parkinson", title = "Effects and effect inference for a core {Java} calculus", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "82", number = "8", pages = "1--26", year = "2003", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Billard:2003:LDP, author = "Edward A. Billard", title = "Language-Dependent performance of design patterns", journal = j-SIGSOFT, volume = "28", number = "3", pages = "3--3", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773138", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Gang of Four design patterns represent a catalog of 23 reusable design solutions to classes of problems that arise in a variety of applications. This study examines the execution performance of the patterns, as implemented in C++, Java (native and JDK 1.0 through 1.4), Smalltalk, and Perl 5.0. Each pattern is implemented independent of an application and, hence, represents just the pure object structure. Because the patterns themselves demonstrate a variety of structures, the results represent a good benchmark for how well the object-oriented compilers actually handle object-oriented programming, in particular, object creation and object reference to methods/attributes. The results indicate that the C++ compiler provided the fastest code, Java was second, followed by Smalltalk, and then Perl. However, Java 1.2 and 1.4 held their own against the optimized version of C++ and even did slightly better than non-optimized C++. Optimized C++ code was the best in 11 of the 23 patterns, with Java 1.2 and 1.4 sharing the remaining honors for the other 12 patterns, that is, a ``winning'' Java compiler can be found for just over half of the design patterns. Smalltalk was an order of magnitude, and Perl two orders of magnitude, slower. Although there is a wide variety of performance among the design patterns, the overall averages are much in-line with the averages of four simple test programs. The results may provide guidelines for future application development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Bishop:2003:ICJ, author = "David Bishop", title = "Introduction to cryptography with {Java} applets", publisher = pub-JONES-BARTLETT, address = pub-JONES-BARTLETT:adr, pages = "xvi + 370", year = "2003", ISBN = "0-7637-2207-3", ISBN-13 = "978-0-7637-2207-4", LCCN = "QA76.9.A25 B565 2003", bibdate = "Tue Oct 11 05:14:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, subject = "Computer security; Cryptography; Java (Computer program language)", } @Article{Blanchet:2003:EAJ, author = "Bruno Blanchet", title = "Escape analysis for {Java$^{TM}$}: {Theory} and practice", journal = j-TOPLAS, volume = "25", number = "6", pages = "713--775", month = nov, year = "2003", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Oct 28 11:56:31 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Bollinger:2003:BFF, author = "Terry Bollinger and John J. Abbott and Robert C. Larrabee and Carl Vieregger", title = "Bookshelf: Facts and Fantasies: a Review of Two Books; Understanding the Unified Process; Software Architecture: Project Planning and Control; Paring {Java} Patterns", journal = j-IEEE-SOFTWARE, volume = "20", number = "2", pages = "80--85", month = mar # "\slash " # apr, year = "2003", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2003.1184172", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Fri Oct 24 16:32:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Review of {\em A New Kind of Science\/} by Stephen Wolfram, {\em Prey: A Novel\/} by Michael Crichton, {\em The Unified Process Explained\/} by Kendall Scott, {\em Effective Work Breakdown Structures\/} by Gregory T. Haugan, {\em Applied Java Patterns\/} by Stephen Stelting and Olav Maassen.", URL = "http://dlib.computer.org/so/books/so2003/pdf/s2080.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Boshart:2003:GGX, author = "Mark A. Boshart and Martha J. Kosa", title = "Growing a {GUI} from an {XML} tree", journal = j-SIGCSE, volume = "35", number = "3", pages = "223--223", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961579", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Computer science faculty in the current fast-paced computing environment must be very resourceful; they must constantly learn new topics and explain them to their undergraduate students (who are familiar with the acronyms and inquisitive about their meaning), while not letting these exciting new topics overshadow the fundamentals. They must analyze these new developments to see the fundamental concepts that ultimately serve as their basis. They must then determine how to integrate these concepts into the undergraduate curriculum at the correct level for their students. This poster shows how XML (eXtensible Markup Language) and hierarchical data structures are correlated, allowing instructors to add XML concepts to the CS2 curriculum in a way that is fun for students, namely, GUI development. Students typically enjoy designing their GUIs. They find it is hard to understand how a GUI will look without the visual aid of an IDE (Integrated Development Environment). However, when using an IDE, the details of how the user interface is created are hidden from the programmers --- not just the code, but the design principles as well. The programmers can become dependent on the IDE for GUI development, limiting their ability to design novel interfaces. In addition, students who do not use an IDE at all find it difficult to remember all their GUI component relationships, making GUI design a trial and error process. We seek a way for students to design GUIs that forces them to consider how GUIs are constructed, improving their design skills, while at the same time making the design process as straightforward as possible. GUIs are hierarchical in nature because they are based on containers holding GUI components, which may themselves be containers. Thus, it may be helpful to utilize the notion of a tree in the construction of a GUI, allowing development of GUIs without the dependence on a standard IDE and without many of the difficulties of GUI construction by hand. As students typically learn about trees in CS2, this is an appropriate time to introduce GUI hierarchies. Students are also often eager to be exposed to hot topics in computer science, such as XML. XML is hierarchical in nature; thus, it lends itself to GUI design. We propose integrating these ideas into an ``XML-based IDE'' that students can use in the beginning stages of development for their own GUIs. This makes students aware of the hierarchical nature of their GUIs in the design phase, enhancing their ability to develop useful and creative user interfaces. At the same time, students are exposed to basic XML concepts and syntax. Our ``XML-based IDE'' has two important parts: our markup language and our code generator. First, we developed a preliminary XML schema describing a grammar for basic GUI programs. This schema describes the XML tags and the relationships among them. Our XML tags correspond to Java nomenclature (swinggui, jframe, jpanel, jcomponent, listener, layout, etc.) as our CS2 students program in Java. After developing our schema, we implemented a Java program to translate an XML document conforming to our schema to corresponding Java source files. To build a shell of a GUI program, a student needs to write an XML document describing the interface and run our utility program to generate the Java source files. When the Java source files are compiled and executed, the student can see the resulting GUI. The student only needs to design and implement the event-handling algorithms. Our ``XML-based IDE'' demonstrates the usefulness of XML in other areas besides the World-Wide Web and is a refreshing change from the standard XML examples. We believe that our ``XML-based IDE'' is a practical and fun way to introduce XML into the introductory computer science curriculum without sacrificing fundamental concepts.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bothner:2003:CJG, author = "Per Bothner", title = "Compiling {Java} with {GCJ}", journal = j-LINUX-J, volume = "105", pages = "??--??", month = jan, year = "2003", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Sat Apr 12 06:59:06 MDT 2003", bibsource = "http://noframes.linuxjournal.com/lj-issues/issue105/index.html; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.linuxjournal.com/article/4860", abstract = "With the latest GCC, you can forget everything you ever knew about Java and bytecodes, and really compile it.", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Article{Bottcher:2003:DWN, author = "S. Bottcher and R. Hoeppe", title = "Do We Need Components for Persistent Data Storage in the {Java 2} Enterprise Environment?", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "152--165", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Boudreau:2003:NDG, author = "Tim Boudreau and Jesse Glick and Simeon Greene and Vaughn Spurlin and Jack J. Woehr", title = "{NetBeans}: The Definitive Guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxiv + 646", year = "2003", ISBN = "0-596-00280-7", ISBN-13 = "978-0-596-00280-0", LCCN = "QA76.73.J38 N47 2003", bibdate = "Mon Apr 18 15:04:40 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html; z3950.loc.gov:7090/Voyager", price = "US\$44.95", URL = "http://www.oreilly.com/catalog/9780596002800; http://www.oreilly.com/catalog/netbeans", acknowledgement = ack-nhfb, publishersummary = "In NetBeans: The Definitive Guide, you'll find out how to use this IDE to its fullest, making your Java programming more efficient and productive than ever before. You'll understand the basics of the IDE, and quickly be utilizing the various editor and explorer windows. You'll also master many of NetBeans advanced features, and be working with XML documents, CVS repositories, Javadoc trees, and Web applications, all within the NetBeans framework.", remark = "``Developing, debugging, and deploying Java code'' --- cover.", subject = "Java (Computer program language); Computer programming", } @Article{Bouquet:2003:RET, author = "F. Bouquet and B. Legeard", title = "Reification of Executable Test Scripts in Formal Specification-Based Test Generation: The {Java Card} Transaction Mechanism Case Study", journal = j-LECT-NOTES-COMP-SCI, volume = "2805", pages = "778--795", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 7 05:32:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boyapati:2003:OTS, author = "Chandrasekhar Boyapati and Alexandru Salcianu and William {Beebee, Jr.} and Martin Rinard", title = "Ownership types for safe region-based memory management in real-time {Java}", journal = j-SIGPLAN, volume = "38", number = "5", pages = "324--337", month = may, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Brackeen:2003:DGJ, author = "David Brackeen and Bret Barker and Laurence Vanhelsuwe", title = "Developing Games in {Java}", publisher = pub-NEW-RIDERS, address = pub-NEW-RIDERS:adr, pages = "xxxii + 972", year = "2003", ISBN = "1-59273-005-1", ISBN-13 = "978-1-59273-005-6", LCCN = "QA76.76.C672 B74 2004", bibdate = "Mon Dec 22 11:39:20 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", acknowledgement = ack-nhfb, } @Article{Brear:2003:SSJ, author = "D. J. Brear and T. Weise and T. Wiffen and K. C. Yeung and S. A. M. Bennett and P. H. J. Kelly", title = "Search strategies for {Java} bottleneck location by dynamic instrumentation", journal = "IEE Proceedings Software", volume = "150", number = "4", pages = "235--242", year = "2003", CODEN = "????", ISSN = "1462-5970", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Brebner:2003:JIS, author = "Paul Brebner and Jeffrey Gosper", title = "{J2EE} infrastructure scalability and throughput estimation", journal = j-SIGMETRICS, volume = "31", number = "3", pages = "30--36", month = dec, year = "2003", CODEN = "????", DOI = "https://doi.org/10.1145/974036.974040", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:20:51 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "ECperf, the widely recognized industry standard J2EE benchmark, has attracted a large number of results submissions and their subsequent publication. However, ECperf places little restriction on the hardware platform, operating systems and databases utilized in the benchmarking process. This, combined with the existence of only two primary metrics, makes it difficult to accurately compare the results, or the performance of the Application Server products themselves. By mining the full-disclosure archives for trends and correlations we have discovered that J2EE technology is very scalable with increasing middle-tier resources, as long as the database has sufficient resources to prevent it becoming a bottleneck. Other observed trends include, a linear correlation between middle-tier total processing power and throughput, as well as between J2EE Application Server license costs and throughput. However, the results clearly indicate that there is an increasing cost per user with increasing capacity systems. Finally, the correlation between middle-tier processing power and throughput, combined with results obtained from a different `lighter-weight' benchmark, facilitates an estimate of throughput for different types of J2EE applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "ECperf benchmark; Enterprise Java Beans (EJB); J2EE; scalability; throughput", } @Article{Breg:2003:JVM, author = "Fabian Breg and Constantine D. Polychronopoulos", title = "{Java Virtual Machine} support for object serialization", journal = j-CCPE, volume = "15", number = "3--5", pages = "263--275", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.667", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Book{Brittain:2003:TDG, author = "Jason Brittain and Ian F. Darwin", title = "{Tomcat}: the definitive guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiii + 303", year = "2003", ISBN = "0-596-00318-8", ISBN-13 = "978-0-596-00318-0", LCCN = "TK5105.8885.A63 B75 2003", bibdate = "Mon Apr 18 15:05:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596003180", acknowledgement = ack-nhfb, remark = "``Covers Tomcat 4'' --- cover. ``Vital information for Tomcat programmers and administrators'' --- cover. ``Tomcat is a Java servlet container and web server from the Jakarta project of the Apache Software Foundation \ldots{}''--P. vii.", subject = "JavaServer pages; Servlets; Computer programs; Web site design; Web site development; Apache Tomcat (Computer file)", } @Article{Brosgol:2003:AJR, author = "B. M. Brosgol", title = "{Ada} and {Java}: Real-Time Advantages", journal = j-EMBED-SYS-PROG, volume = "16", number = "12", pages = "30", year = "2003", CODEN = "EYPRE4", ISSN = "1040-3272", bibdate = "Mon Dec 22 12:18:52 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Embedded Systems Programming", } @Article{Brosgol:2003:BCR, author = "B. M. Brosgol", title = "Beginner's Corner: Real-Time {Java}", journal = j-EMBED-SYS-PROG, volume = "16", number = "5", pages = "39--40", year = "2003", CODEN = "EYPRE4", ISSN = "1040-3272", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Embedded Systems Programming", } @TechReport{Brosgol:2003:CATa, author = "B. M. Brosgol and A. Wellings", title = "A Comparison of the Asynchronous Transfer of Control Features in {Ada} and the Real-Time Specification for {Java}", type = "{YCS} Report", number = "350", institution = "University of York Department of Computer Science", address = "York, UK", year = "2003", CODEN = "????", ISSN = "0963-620X", bibdate = "Tue Apr 8 06:53:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Brosgol:2003:CATb, author = "B. M. Brosgol and A. Wellings", title = "A Comparison of the Asynchronous Transfer of Control Features in {Ada} and the Real-Time Specification for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2655", pages = "113--128", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brown:2003:SFE, author = "Rhodes Brown and Karel Driesen and David Eng and Laurie Hendren and John Jorgensen and Clark Verbrugge and Qin Wang", title = "{STEP}: a framework for the efficient encoding of general trace data", journal = j-SIGSOFT, volume = "28", number = "1", pages = "27--34", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586103", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Traditional tracing systems are often limited to recording a fixed set of basic program events. This limitation can frustrate an application or compiler developer who is trying to understand and characterize the complex behavior of software systems such as a Java program running on a Java Virtual Machine. In the past, many developers have resorted to specialized tracing systems that target a particular type of program event. This approach often results in an obscure and poorly documented encoding format which can limit the reuse and sharing of potentially valuable information. To address this problem, we present STEP, a system designed to provide profiler developers with a standard method for encoding general program trace data in a flexible and compact format. The system consists of a trace data definition language along with a compiler and an architecture that simplifies the client interface by encapsulating the details of encoding and interpretation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bruhn:2003:ATJ, author = "R. E. Bruhn and P. J. Burton", title = "An Approach to Teaching {Java} Using Computers", journal = j-SIGCSE, volume = "35", number = "4", pages = "94--99", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Jan 27 06:08:07 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Brunner:2003:JPG, author = "Robert Brunner", title = "{JSP}: Practical Guide for {Java} Programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xiii + 179", year = "2003", ISBN = "1-55860-836-2", ISBN-13 = "978-1-55860-836-8", LCCN = "QA76.73.J38 B79 2003", bibdate = "Sat Aug 02 08:46:58 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$19.95", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/els041/2003066501.html; http://www.loc.gov/catdir/toc/els041/2003066501.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Bubak:2003:AMS, author = "M. Bubak and W. Funika and M. Smetek and Z. Kilianski and R. Wismuller", title = "Architecture of Monitoring System for Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2840", pages = "447--454", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Oct 29 06:24:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bubak:2003:MDJ, author = "Marian Bubak and W{\l}odzimierz Funika and Roland Wism{\"u}ller and Piotr M{\k{e}}tel and Rafa{\l} Or{\l}owski", title = "Monitoring of distributed {Java} applications", journal = j-FUT-GEN-COMP-SYS, volume = "19", number = "5", pages = "651--663", month = jul, year = "2003", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Tue Jun 3 08:07:59 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", remark = "Tools for Program Development and Analysis. Best papers from two Technical Sessions, at ICCS2001, San Francisco, CA, USA, and ICCS2002, Amsterdam, The Netherlands.", } @Article{Budi:2003:JJT, author = "E. M. Budi and G. Roy and G. Cole", title = "{Jawa}: a {Java} Tool-Kit for Mobile Objects Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "39--48", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bull:2003:BJA, author = "J. M. Bull and L. A. Smith and C. Ball and L. Pottage and R. Freeman", title = "Benchmarking {Java} against {C} and {Fortran} for scientific applications", journal = j-CCPE, volume = "15", number = "3--5", pages = "417--430", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.658", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Burdy:2003:DFV, author = "L. Burdy and L. Casset and A. Requet", title = "{D}{\'e}veloppement formel d'un verifieur embarqu{\'e} de byte-code {Java}. ({French}) [{Formal} development of a {Java}-based byte-code verifier]", journal = j-TECHNIQUE-SCI-INFORMATIQUES, volume = "22", number = "1", pages = "33--60", year = "2003", CODEN = "TTSIDJ", ISSN = "0752-4072, 0264-7419", ISSN-L = "0752-4072", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Technique et science informatiques : TSI", language = "French", } @Article{Burdy:2003:JAC, author = "L. Burdy and A. Requet and J. L. Lanet", title = "{Java} Applet Correctness: a Developer-Oriented Approach", journal = j-LECT-NOTES-COMP-SCI, volume = "2805", pages = "422--439", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 7 05:32:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Burger:2003:TTD, author = "K. R. Burger", title = "Teaching Two-Dimensional Array Concepts in {Java} With Image Processing Examples", journal = j-SIGCSE, volume = "35", number = "1", pages = "205--209", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Burke:2003:JEP, author = "Eric M. Burke and Brian M. Coyner", title = "{Java} extreme programming cookbook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xii + 275", year = "2003", ISBN = "0-596-00387-0", ISBN-13 = "978-0-596-00387-6", LCCN = "QA76.73.J38 B873 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "Extreme programming in the real world", keywords = "extreme programming; Java (computer program language); open source software", } @Article{Burns:2003:PGP, author = "A. Burns and A. J. Wellings", title = "Processing Group Parameters in the Real-Time Specification for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "360--370", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{BuSung:2003:DIJ, author = "L. BuSung and Y. C. Kiat and S. I. Yann and L. K. Kee and S. Wei", title = "Design and Implementation of a {Java}-based Meeting Space over {Internet}", journal = j-MULTIMEDIA-TOOLS-APPLIC, volume = "20", number = "2", pages = "179--195", year = "2003", CODEN = "MTAPFB", ISSN = "1380-7501", ISSN-L = "1380-7501", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Multimedia Tools and Applications", } @Book{Cadenhead:2003:STY, author = "Rogers Cadenhead and Laura Lemay", title = "{Sams} teach yourself {Java 2} in 21 days", publisher = pub-SAMS, address = pub-SAMS:adr, edition = "Third", pages = "xviii + 712", year = "2003", ISBN = "0-672-32370-2", ISBN-13 = "978-0-672-32370-6", LCCN = "QA76.73.J3 L44 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sams teach yourself in 21 days", URL = "http://www.java21days.com", acknowledgement = ack-nhfb, keywords = "Java (computer program language); online resources", } @Article{Cai:2003:THI, author = "H. Cai and A. J. Wellings", title = "Towards a High Integrity Real-Time {Java} Virtual Machine", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "319--334", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Calvert:2003:TIS, author = "Kenneth Calvert", title = "{TCP\slash IP} Sockets in {Java}: Practical Guide for Programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xii + 116", year = "2003", ISBN = "1-55860-685-8", ISBN-13 = "978-1-55860-685-2", LCCN = "QA76.625 .C35 2002", bibdate = "Wed Oct 29 07:11:25 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$15.95", acknowledgement = ack-nhfb, } @Article{Can:2003:FFP, author = "T. Can and Y. Wang and Y. F. Wang and J. Su", title = "{FPV}: fast protein visualization using {Java $3$D}", journal = j-BIOINFORMATICS, volume = "19", number = "8", pages = "913--922", year = "2003", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Carey:2003:NIF, author = "Robert W. Carey and Paul J. {Van Arsdall} and John P. Woodruff", title = "The {National Ignition Facility}: early operational experience with a large {Ada} control system", journal = j-SIGADA-LETTERS, volume = "23", number = "1", pages = "11--11", month = mar, year = "2003", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1066404.589454", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 11:55:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The National Ignition Facility (NIF) currently under construction at the University of California Lawrence Livermore National Laboratory (LLNL) is a 192-beam, 1.8-Megajoule, 500-Terawatt laser being built by the Department of Energy and the National Nuclear Security Agency (NNSA) for inertial confinement fusion and high-energy-density experimental studies. The stadium-sized facility is currently activating systems for first light and will be completed in 2008.The facility is controlled by the Integrated Computer Control System (ICCS), a layered architecture of 300 front-end processors (FEP) coordinated by supervisor subsystems. The FEP's are distributed computers that interface to physical devices through VME-bus and PCI-bus crates. The functional subsystems - beam control including automatic beam alignment and wavefront correction, laser pulse generation and pre-amplification, diagnostics, pulse power, and shot timing - implement the actions of operators at eight graphic consoles, coordinate control, and display and archive data in a database. The software architecture mimics the hardware design levels: software devices in FEP's model hardware control points and supervisory objects model the line replaceable units that modularize the laser system. Graphic user interfaces are provided to make status and control of each level accessible to operators. The ICCS software is based on an object-oriented framework that incorporates services for archiving, machine configuration, graphical user interface, status monitoring, event logging, scripting, alert management, and access control. Software code development uses a mixed language environment of Ada (for functional controls) and Java (for user interface and database backend). CORBA is used to communicate between languages and processors. Substantial benefits credited to using Ada include the formality of controlled interfaces that rely on Ada's type model, easy-to-construct exception processing and the robustness of Ada's tasks. A strategy of incremental cycles of construction and formal test has been used since project inception. The project has completed more than 30 planned cycles of deployment into testbeds and is now integrating with the first 4 operational beamlines in the facility. Fifty of the planned 300 FEP's have been installed and tested with facility equipment. These implement nearly 200 classes that model physical control hardware - some 2500 software objects. Nearly all of the top-level functional subsystems, embodying some 110 application classes, have been commissioned in the facility. The integrated control system has successfully executed shots into test diagnostics in support of laser integration. The first coordinated facility shots to the 10-m diameter target chamber are expected in early 2003.Issues of robustness and scaling arise as the system integrates larger ensembles of control points and serves an increasing number of operators. The system comprises some 60 intercommunicating processes, and since none of these are known to be defect free, techniques for replacement and restart of individual processes are required. The most common communication pattern - publish and subscribe - is supported by a connection management framework that adds exception handlers to the ORB in order to restore broken connections and restart failed processes without explicit action by application client codes. This work was performed under the auspices of the U.S. Department of Energy by the University of California, Lawrence Livermore National Laboratory under Contract No. W-7405-Eng-48.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Caromel:2003:SFR, author = "Denis Caromel and Julien Vayssi{\`e}re", title = "A security framework for reflective {Java} applications", journal = j-SPE, volume = "33", number = "9", pages = "821--846", day = "25", month = jul, year = "2003", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.528", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Nov 29 17:39:47 MST 2003", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "15 May 2003", } @Article{Carpenter:2003:AHJ, author = "B. Carpenter and G. Fox and H. K. Lee and S. B. Lim", title = "Applications of {HP Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2958", pages = "147--161", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Carpenter:2003:HDP, author = "Bryan Carpenter and Geoffrey Fox", title = "{HPJava}: a Data Parallel Programming Alternative", journal = j-COMPUT-SCI-ENG, volume = "5", number = "3", pages = "60--64", month = may # "\slash " # jun, year = "2003", CODEN = "CSENFA", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat Jan 3 18:25:06 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/cs/2003/03/c3060abs.htm; http://csdl.computer.org/dl/mags/cs/2003/03/c3060.htm; http://csdl.computer.org/dl/mags/cs/2003/03/c3060.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Carpenter:2003:TSH, author = "B. Carpenter and G. Fox and H. K. Lee and S. B. Lim", title = "Translation Schemes for the {HP Java} Parallel Programming Language", journal = j-LECT-NOTES-COMP-SCI, volume = "2624", pages = "18--32", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Casey:2003:TSJ, author = "K. Casey and D. Gregg and M. A. Ertl and A. Nisbet", title = "Towards Superinstructions for {Java} Interpreters", journal = j-LECT-NOTES-COMP-SCI, volume = "2826", pages = "329--343", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Cavaness:2003:JSP, author = "Chuck Cavaness and Brian Keeton", title = "{Jakarta Struts} pocket reference", publisher = pub-ORA, address = pub-ORA:adr, pages = "viii + 134", year = "2003", ISBN = "0-596-00519-9", ISBN-13 = "978-0-596-00519-1", LCCN = "QA76.76.A65 C385 2003", bibdate = "Mon Apr 18 15:07:26 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005191", acknowledgement = ack-nhfb, remark = "``Building web applications with servlets and JSPs'' --- cover. ``An essential companion to O'Reilly's Programming Jakarta Struts''--P. [4] of cover.", subject = "Application software; Java (Computer program language); Apache (Computer file : Apache Group); JavaServer pages; Internet programming; Web site development; Struts framework", } @InProceedings{Chakravarti:2003:ISM, author = "A. Chakravarti and X. Wang and J. Hallstrom and G. Baumgartner", booktitle = "Proceedings of the International Conference on Parallel Processing", title = "Implementation of Strong Mobility for Multi-threaded Agents in {Java}", publisher = "????", address = "????", pages = "321--332", year = "2003", CODEN = "????", ISSN = "0190-3918", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chavez:2003:BRH, author = "Hector Zenil Chavez", title = "Book Review: How to Develop Enterprise-Secure {Java} Applications Learning Risks {A} review of {{\em Hacking Exposed J2EE and Java, Developing Secure Applications with Java Technology\/}} by {Art Taylor}, {Brian Buege}, and {Randy Layman}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "4", number = "5", year = "2003", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Sat Jan 03 14:59:06 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0305/d/bks_c.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Chen:2003:DGV, author = "B. Y. Chen and T. Nishita", title = "Development of {$3$D} Graphics and {VRML} Libraries for {Web3D} Platform by Using {Java}", journal = j-SYS-COMP-JAPAN, volume = "34", number = "10", pages = "47--55", year = "2003", CODEN = "SCJAEP", ISSN = "0882-1666 (print), 1520-684X (electronic)", ISSN-L = "0882-1666", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Systems and computers in Japan", } @Article{Chen:2003:EJV, author = "D. Chen and V. Talwar", title = "Extending {Java Virtual Machines} for networked embedded devices", journal = "Research Disclosure", volume = "475", publisher = "Kenneth Mason Publications", pages = "475/076", year = "2003", CODEN = "????", ISSN = "0374-4353", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2003:FMJ, author = "Jessica Chen", title = "Formal Modelling of {Java} {GUI} Event Handling", journal = j-LECT-NOTES-COMP-SCI, volume = "2495", pages = "359--??", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Nov 30 20:57:09 MST 2002", bibsource = "http://link.springer-ny.com/link/service/series/0558/tocs/t2495.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.de/link/service/series/0558/bibs/2495/24950359.htm; http://link.springer.de/link/service/series/0558/papers/2495/24950359.pdf", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chen:2003:GMD, author = "L. Chen and C. LiWang and F. C. M. Lau", title = "A {Grid} Middleware for Distributed {Java} Computing with {MPI} Binding and Process Migration Supports", journal = j-J-COMP-SCI-TECH, volume = "18", number = "4", pages = "505--514", year = "2003", CODEN = "JCTEEM", ISSN = "1000-9000", ISSN-L = "1000-9000", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of computer science and technology", } @Article{Chen:2003:HCM, author = "G. Chen and M. Kandemir and N. Vijaykrishnan and M. J. Irwin and B. Mathiske and M. Wolczko", title = "Heap compression for memory-constrained {Java} environments", journal = j-SIGPLAN, volume = "38", number = "11", pages = "282--301", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chen:2003:JMA, author = "R. Y. Chen and B. Yeager", title = "{Java} Mobile Agents on Project {JXTA} Peer-to-Peer Platform ({STPTP01})", journal = "Proceedings of the Annual Hawaii International Conference on System Sciences", volume = "CONF36", pages = "282", year = "2003", CODEN = "????", ISSN = "1060-3425", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2003:JSDa, author = "Michael K. Chen and Kunle Olukotun", title = "The {Jrpm} system for dynamically parallelizing {Java} programs", journal = j-COMP-ARCH-NEWS, volume = "31", number = "2", pages = "434--446", month = may, year = "2003", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:40:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Chen:2003:JSDb, author = "Michael K. Chen and Kunle Olukotun", title = "The {Jrpm} System for Dynamically Parallelizing Sequential {Java} Programs", journal = j-IEEE-MICRO, volume = "23", number = "6", pages = "26--35", month = nov # "\slash " # dec, year = "2003", CODEN = "IEMIDZ", DOI = "https://doi.org/10.1109/MM.2003.1261384", ISSN = "0272-1732 (print), 1937-4143 (electronic)", ISSN-L = "0272-1732", bibdate = "Sat Jan 31 07:23:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/mi/2003/06/m6026abs.htm; http://csdl.computer.org/dl/mags/mi/2003/06/m6026.htm; http://csdl.computer.org/dl/mags/mi/2003/06/m6026.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Micro", journal-URL = "http://www.computer.org/csdl/mags/mi/index.html", } @Article{Chen:2003:RAS, author = "X. Chen", title = "Realization and application of shared memory in {Java}", journal = "Journal --- Anhui University of Technology", volume = "20", number = "3", pages = "224--226", year = "2003", CODEN = "????", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2003:RFJ, author = "G. Chen", title = "Research on Framework for {Java} Based {$3$D} Collaborative Virtual Environment", journal = "Computer Integrated Manufacturing Systems", volume = "9", number = "SUPP", pages = "6--9", year = "2003", CODEN = "????", ISSN = "1006-5911", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2003:RPJ, author = "Q. Chen and P. Y. Woo", title = "Research on and pure {Java} realization of a {Web}-based mobile robot system", journal = j-PROC-AM-CONTROL-CONF, volume = "1", number = "??", pages = "615--620", year = "2003", CODEN = "PRACEO", ISSN = "0743-1619", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the American Control Conference", } @Article{Chetty:2003:IJB, author = "M. Chetty and S. Hu and J. Bennett", title = "An interactive {Java}-based educational module in electromagnetics", journal = "International Journal of Electrical Engineering Education", volume = "40", number = "1", publisher = "Manchester University Press", pages = "79--90", year = "2003", CODEN = "????", ISSN = "0020-7209", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chevalley:2003:MAT, author = "P. Chevalley and P. Th{\'e}venod-Fosse", title = "A mutation analysis tool for {Java} programs", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "5", number = "1", pages = "90--103", month = nov, year = "2003", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-002-0099-9", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Nov 23 15:01:41 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Article{Chiba:2003:EUT, author = "S. Chiba and M. Nishizawa", title = "An Easy-to-Use Toolkit for Efficient {Java} Bytecode Translators", journal = j-LECT-NOTES-COMP-SCI, volume = "2830", pages = "364--376", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Choi:2003:SAS, author = "Jong-Deok Choi and Manish Gupta and Mauricio J. Serrano and Vugranam C. Sreedhar and Samuel P. Midkiff", title = "Stack allocation and synchronization optimizations for {Java} using escape analysis", journal = j-TOPLAS, volume = "25", number = "6", pages = "876--910", month = nov, year = "2003", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Oct 28 11:56:31 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Chow:2003:EJP, author = "Kingsum Chow and Ricardo Morin and Kumar Shiv", title = "{Enterprise Java} Performance: Best Practices", journal = j-INTEL-TECH-J, volume = "7", number = "1", pages = "32--46", month = feb, year = "2003", ISSN = "1535-766X", bibdate = "Wed Dec 10 15:50:48 2003", bibsource = "http://developer.intel.com/technology/itj/2003/volume07issue01/index.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://developer.intel.com/technology/itj/2003/volume07issue01/art03_java/p01_abstract.htm", acknowledgement = ack-nhfb, keywords = "Application Servers; Enterprise Applications; J2EE; Java 2 Enterprise Edition; Java Performance", } @Article{Christensen:2003:EJH, author = "Aske Simon Christensen and Anders M{\o}ller and Michael I. Schwartzbach", title = "Extending {Java} for high-level {Web} service construction", journal = j-TOPLAS, volume = "25", number = "6", pages = "814--875", month = nov, year = "2003", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Oct 28 11:56:31 MST 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Chung:2003:JBD, author = "M. J. Chung and S. Kim and H. Kim and H. S. Ham", title = "A {Java}-Based, Distributed Process Management System for Collaborative Design and Manufacturing", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "61--72", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chung:2003:MWA, author = "S. Chung and Y. S. Lee", title = "Modeling {Web} Applications Using {Java} and {XML} Related Technologies ({STDOC09})", journal = "Proceedings of the Annual Hawaii International Conference on System Sciences", volume = "CONF36", pages = "322--322", year = "2003", CODEN = "????", ISSN = "1060-3425", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Cierniak:2003:ORP, author = "Michal Cierniak and Marsha Eng and Neal Glew and Brian Lewis and James Stichnoth", title = "The {Open Runtime Platform}: a Flexible High-Performance Managed Runtime Environment", journal = j-INTEL-TECH-J, volume = "7", number = "1", pages = "5--18", month = feb, year = "2003", ISSN = "1535-766X", bibdate = "Wed Dec 10 15:50:48 2003", bibsource = "http://developer.intel.com/technology/itj/2003/volume07issue01/index.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://developer.intel.com/technology/itj/2003/volume07issue01/art01_orp/p01_abstract.htm", acknowledgement = ack-nhfb, keywords = "CLI; interface design; Java; MRTE; virtual machine", } @Article{Coglio:2003:IOS, author = "Alessandro Coglio", title = "Improving the official specification of {Java} bytecode verification", journal = j-CCPE, volume = "15", number = "2", pages = "155--179", month = feb, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.714", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:06 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "6 Jan 2003", } @Article{Collins:2003:RFL, author = "William Collins and Josh Tenenberg and Raymond Lister and Suzanne Westbrook", title = "The role for framework libraries in {CS2}", journal = j-SIGCSE, volume = "35", number = "1", pages = "403--404", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.611894", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The recent emergence of object-oriented framework libraries of classic data structures and algorithms such as the Standard Template Library and Java's Collection classes provides a set of general and efficient data structure components for use by practicing software developers. A number of textbook writers are beginning to incorporate the use of these frameworks into ``CS2'', the traditional first course in data structures at the university level. There has scarcely been a discussion of how these frameworks should best be incorporated into CS2, if they should be used at all. The proposed panel will examine the role of standardized framework libraries in the first data structures course at the university level. Panelists will focus on the following questions. What are the fundamental objectives of CS2, and what role might frameworks have in meeting these objectives? How does an instructor balance student needs for additional instruction in programming basics (e.g., arrays and pointers) versus practice in larger scale design and code reuse? What would be given up to incorporate frameworks into CS2? And to what extent is it important for students to construct elementary data structures from first principles? What assumptions about student cognition and learning does a pro- or con-frameworks approach imply. By trying to articulate answers to some of the above questions, we hope to raise the level of discussion concerning the evolution of the introductory computer science curriculum. This panel will thus try to make explicit, and hence available for critical examination, some of the arguments and assumptions that inform this debate.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Comp:2003:RAW, author = "Lynn Comp and Tim Dobbing", title = "Runtime Abstractions in the Wireless and Handheld Space", journal = j-INTEL-TECH-J, volume = "7", number = "1", pages = "68--76", month = feb, year = "2003", ISSN = "1535-766X", bibdate = "Wed Dec 10 15:50:48 2003", bibsource = "http://developer.intel.com/technology/itj/2003/volume07issue01/index.htm; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://developer.intel.com/technology/itj/2003/volume07issue01/art07_mobile/p01_abstract.htm", acknowledgement = ack-nhfb, keywords = ".NET; J2ME; Java; Managed Runtime Environments; Mobile Information Devices; Wireless Handheld Devices", } @Article{Corsaro:2003:DPR, author = "Angelo Corsaro and Douglas C. Schmidt", title = "The Design and Performance of Real-Time {Java} Middleware", journal = j-IEEE-TRANS-PAR-DIST-SYS, volume = "14", number = "11", pages = "1155--1167", month = nov, year = "2003", CODEN = "ITDSEO", DOI = "https://doi.org/10.1109/TPDS.2003.1247675", ISSN = "1045-9219 (print), 1558-2183 (electronic)", ISSN-L = "1045-9219", bibdate = "Wed Dec 24 10:02:10 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/trans/td/2003/11/l1155abs.htm; http://csdl.computer.org/dl/trans/td/2003/11/l1155.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Parallel and Distributed Systems", journal-URL = "http://www.computer.org/tpds/archives.htm", } @Article{Corsaro:2003:EMR, author = "Angelo Corsaro and Ron K. Cytron", title = "Efficient Memory-Reference Checks for Real-time {Java}", journal = j-SIGPLAN, volume = "38", number = "7", pages = "51--58", month = jul, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Corwin:2003:MRM, author = "John Corwin and David F. Bacon and David Grove and Chet Murthy", title = "{MJ}: a rational module system for {Java} and its applications", journal = j-SIGPLAN, volume = "38", number = "11", pages = "241--254", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Crawford:2003:JDP, author = "William Crawford and Jonathan Kaplan", title = "{J2EE} design patterns", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 350", year = "2003", ISBN = "0-596-00427-3", ISBN-13 = "978-0-596-00427-9", LCCN = "QA76.73.J38 C74 2003", bibdate = "Mon Apr 18 15:06:19 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596004279", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Computer software; Development; Software patterns", } @Book{Dahlen:2003:AJP, author = "Torbj{\"o}rn Dahl{\'e}n and Thorbi{\"o}rn Fritzon", title = "Advanced {J2EE} Platform Development: Applying Integration Tier Patterns", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xv + 195", year = "2003", ISBN = "0-13-044912-1", ISBN-13 = "978-0-13-044912-2", LCCN = "QA76.76.J38 D34 2004", bibdate = "Tue Nov 04 18:19:09 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Application software; Development", } @Book{Darwin:2003:JCS, author = "Ian F. Darwin", title = "{Java} Cookbook: Solutions and Examples for {Java} Developers", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxiv + 829", year = "2003", ISBN = "0-596-00701-9", ISBN-13 = "978-0-596-00701-0", LCCN = "QA76.73.J38 D348 2004", bibdate = "Sat Jul 17 07:15:30 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/", price = "US\$49.95, CAN\$72.95, UK\pounds 35.50", URL = "http://examples.oreilly.com/javacook2/; http://www.oreilly.com/catalog/0596007019/", acknowledgement = ack-nhfb, } @Article{Debbabi:2003:MCA, author = "M. Debbabi and M. Erhioui and L. Ketari and N. Tawbi and H. Yahyaoui and S. Zhioua", title = "Method Call Acceleration in Embedded {Java} Virtual Machines", journal = j-LECT-NOTES-COMP-SCI, volume = "2659", pages = "750--759", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Debbabi:2003:SSC, author = "M. Debbabi and J. Desharnais and M. Fourati and E. Menif and F. Painchaud and N. Tawbi", title = "Secure Self-certified Code for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2629", pages = "133--151", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jan 21 08:32:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Deitel:2003:JHP, author = "Harvey M. Deitel and Paul J. Deitel", title = "{Java}: how to program", publisher = pub-PH, address = pub-PH:adr, edition = "Fifth", pages = "li + 1447", year = "2003", ISBN = "0-13-101621-0, 0-13-101623-7 (CD-ROM), 0-13-120236-7", ISBN-13 = "978-0-13-101621-7, 978-0-13-101623-1 (CD-ROM), 978-0-13-120236-8", LCCN = "QA76.73.J38 D45 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/unicode.bib", series = "How to program series", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", tableofcontents = "Introduction to computers, the internet and the Web \\ Introduction to Java applications \\ Introduction to Java applets \\ Control Statements \\ Methods \\ Arrays \\ Object-based programming \\ Object-oriented programming: inheritance \\ Object-oriented programming: polymorphism \\ Strings and characters \\ Graphics and Java2D \\ Graphical User Interface components \\ Exception handling \\ Multithreading \\ Files and streams \\ Networking \\ Multimedia: images, animation and audio \\ Data structures \\ Java utilities package and bit manipulation \\ Collections \\ Java database connectivity with JDBC \\ Servlets \\ Javaserver pages (JSP) \\ Operator precedence chart \\ ASCII character set \\ Number systems \\ Elevator events and listener interfaces \\ Elevator model \\ Elevator view (on CD) \\ Unicode", } @Article{Deng:2003:RCJ, author = "G. Deng and W. Li and Z. Li", title = "Research on {CORBA\slash Java}-based {Web} database application model", journal = "Journal --- Dalian University of Technology", volume = "43", number = "1", pages = "124--128", year = "2003", CODEN = "????", ISSN = "1000-8608", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{deOliveira:2003:JMT, author = "Jauvane C. de Oliveira and Mojtaba Hosseini and Shervin Shirmohammadi and Fran{\c{c}}ois Malric and Saeid Nourian and Abdulmotaleb El Saddik and Nicolas D. Georganas", title = "{Java} Multimedia Telecollaboration", journal = j-IEEE-MULTIMEDIA, volume = "10", number = "3", pages = "18--29", month = jul # "--" # sep, year = "2003", CODEN = "IEMUE4", DOI = "https://doi.org/10.1109/MMUL.2003.1218253", ISSN = "1070-986X (print), 1941-0166 (electronic)", ISSN-L = "1070-986X", bibdate = "Sat Jan 3 12:43:03 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/mu/2003/03/u3018abs.htm; http://csdl.computer.org/dl/mags/mu/2003/03/u3018.htm; http://csdl.computer.org/dl/mags/mu/2003/03/u3018.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE MultiMedia", } @Article{DePasquale:2003:UJU, author = "C. J. DePasquale", title = "Using the {JVMPI} to Understand the Behavior of {Java} Classes During the Development Process", journal = "Cmg", volume = "2", number = "??", publisher = "Computer Measurement Group", pages = "821--832", year = "2003", CODEN = "????", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Depradine:2003:ESE, author = "C. Depradine", title = "Expert system for extracting syntactic information from {Java} code", journal = j-EXPERT-SYST-APPL, volume = "25", number = "2", pages = "187--198", year = "2003", CODEN = "ESAPEH", ISSN = "0957-4174", ISSN-L = "0957-4174", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Expert Systems with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/09574174", } @Article{Depradine:2003:PCD, author = "C. Depradine and P. Chaudhuri", title = "{P3}: a code and design conventions preprocessor for {Java}", journal = j-SPE, volume = "33", number = "1", pages = "61--76", year = "2003", CODEN = "SPEXBL", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Mon Jan 27 06:53:51 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{DeSouza:2003:JPM, author = "J. DeSouza and L. V. Kale", title = "{Jade}: a Parallel Message-Driven {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2659", pages = "760--772", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Deters:2003:ADS, author = "Morgan Deters and Ron K. Cytron", title = "Automated Discovery of Scoped Memory Regions for Real-Time {Java}", journal = j-SIGPLAN, volume = "38", number = "2s", pages = "132--142", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ding:2003:LJB, author = "K. Ding and K. Zhou and F. He and Y. Shen", title = "{LDA} --- {A} {Java}-based linkage disequilibrium analyzer", journal = j-BIOINFORMATICS, volume = "19", number = "16", pages = "2147--2148", year = "2003", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{DiStefano:2003:CRE, author = "A. DiStefano and M. Fargetta and E. Tramontana", title = "Computational Reflection for Embedded {Java} Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "437--450", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Domani:2003:TLH, author = "Tamar Domani and Gal Goldshtein and Elliot K. Kolodner and Ethan Lewis and Erez Petrank and Dafna Sheinwald", title = "Thread-Local Heaps for {Java}", journal = j-SIGPLAN, volume = "38", number = "2s", pages = "183--194", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Drejhammar:2003:FJD, author = "F. Drejhammar and C. Schulte and P. Brand and S. Haridi", title = "{Flow Java}: Declarative Concurrency for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2916", pages = "346--360", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Drysdale:2003:JMJ, author = "S. Drysdale and J. Hromcik and M. A. Weiss and R. Hahne", title = "{Java} in the Morning\ldots{} {Java} in the Evening\ldots{} {Java} in 2004", journal = j-SIGCSE, volume = "35", number = "1", pages = "271--272", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Du:2003:CSE, author = "Wei Du and Renato Ferreira and Gagan Agrawal", title = "Compiler Support for Exploiting Coarse-Grained Pipelined Parallelism", crossref = "ACM:2003:SII", pages = "??--??", year = "2003", bibdate = "Wed Nov 26 07:34:20 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc-conference.org/sc2003/inter_cal/inter_cal_detail.php?eventid=10692#2; http://www.sc-conference.org/sc2003/paperpdfs/pap133.pdf", abstract = "The emergence of grid and a new class of data-driven applications is making a new form of parallelism desirable, which we refer to as coarse-grained pipelined parallelism. This paper reports on a compilation system developed to exploit this form of parallelism. We use a dialect of Java that exposes both pipelined and data parallelism to the compiler. Our compiler is responsible for selecting a set of candidate filter boundaries, determining the volume of communication required if a particular boundary is chosen, performing the decomposition, and generating code. We have developed a one-pass algorithm for determining the required communication between consecutive filters. We have developed a cost model for estimating the execution time for a given decomposition, and a dynamic programming algorithm for performing the decomposition. Detailed evaluation of our current compiler using four data-driven applications demonstrate the feasibility of our approach.", acknowledgement = ack-nhfb, } @Article{Dufour:2003:DMJ, author = "Bruno Dufour and Karel Driesen and Laurie Hendren and Clark Verbrugge", title = "Dynamic metrics for {Java}", journal = j-SIGPLAN, volume = "38", number = "11", pages = "149--168", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Earls:2003:JSM, author = "A. R. Earls", title = "With {Java} skills, market a complex picture", journal = "Application Development Trends", volume = "10", number = "12", pages = "28--28", year = "2003", CODEN = "????", ISSN = "1073-9564", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Edelstein:2003:FTM, author = "Orit Edelstein and Eitan Farchi and Evgeny Goldin and Yarden Nir and Gil Ratsaby and Shmuel Ur", title = "Framework for testing multi-threaded {Java} programs", journal = j-CCPE, volume = "15", number = "3--5", pages = "485--499", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.654", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Eeckhout:2003:HJP, author = "Lieven Eeckhout and Andy Georges and Koen {De Bosschere}", title = "How {Java} programs interact with virtual machines at the microarchitectural level", journal = j-SIGPLAN, volume = "38", number = "11", pages = "169--186", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Engelbrecht:2003:TSB, author = "R. L. Engelbrecht and D. G. Kourie", title = "Translating {Smalltalk} blocks to {Java}", journal = "IEE Proceedings Software", volume = "150", number = "3", publisher = "IEE", pages = "203--211", year = "2003", CODEN = "????", ISSN = "1462-5970", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Everitt:2003:JBI, author = "R. A. J. Everitt and P. W. McOwan", title = "{Java}-Based {Internet} Biometric Authentication System", journal = "IEEE Transactions on Pattern Analysis and Machine Intelligence", volume = "25", number = "9", pages = "1166--1171", year = "2003", CODEN = "????", ISSN = "0162-8828", bibdate = "Tue Sep 30 06:17:55 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Fang:2003:DGO, author = "Weijian Fang and Cho-Li Wang and Francis C. M. Lau", title = "On the design of global object space for efficient multi-threading {Java} computing on clusters", journal = j-PARALLEL-COMPUTING, volume = "29", number = "11--12", pages = "1563--1587", month = nov # "\slash " # dec, year = "2003", CODEN = "PACOEJ", ISSN = "0167-8191 (print), 1872-7336 (electronic)", ISSN-L = "0167-8191", bibdate = "Wed Nov 26 06:39:28 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Parallel Computing", journal-URL = "http://www.sciencedirect.com/science/journal/01678191", } @Article{Feizabadi:2003:UAS, author = "S. Feizabadi and W. Beebee and B. Ravindran and P. Li and M. Rinard", title = "Utility Accrual Scheduling with Real-Time {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "550--563", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Felber:2003:SAP, author = "P. A. Felber", title = "Semi-automatic Parallelization of {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2888", pages = "1369--1383", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Felea:2003:CDO, author = "V. Felea and B. Toursel and N. Devesa", title = "Les collections distribu{\'e}es: un outil pour la conception d'applications {Java} parall{\`e}les. ({French}) [{Distributed} collections: a tool for creation of paralel {Java} applications]", journal = j-TECHNIQUE-SCI-INFORMATIQUES, volume = "22", number = "3", pages = "289--314", year = "2003", CODEN = "TTSIDJ", ISSN = "0752-4072, 0264-7419", ISSN-L = "0752-4072", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Technique et science informatiques : TSI", language = "French", } @Article{Ferrero:2003:RJB, author = "A. Ferrero and S. Salicone and C. Bonora and M. Parmigiani", title = "{ReMLab}: a {Java}-Based Remote, Didactic Measurement Laboratory", journal = j-IEEE-TRANS-INSTRUM-MEAS, volume = "52", number = "3", pages = "710--715", year = "2003", CODEN = "IEIMAO", ISSN = "0018-9456 (print), 1557-9662 (electronic)", ISSN-L = "0018-9456", bibdate = "Tue Aug 19 10:20:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Instrumentation and Measurement", } @Book{Flenner:2003:JPU, author = "Robert Flenner", title = "{Java P2P} unleashed", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xv + 732", year = "2003", ISBN = "0-672-32399-0 (paperback)", ISBN-13 = "978-0-672-32399-7 (paperback)", LCCN = "QA76.73.J38 J3788 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); peer-to-peer architecture (computer networks)", } @Article{Foster:2003:MM, author = "K. R. Foster", title = "Mightier math", journal = j-IEEE-SPECTRUM, volume = "40", number = "2", pages = "58--59", month = feb, year = "2003", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2003.1176518", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Computer languages; Displays; Graphics; Java; Packaging; Programming profession; Publishing; Software packages; Switches; XML", } @Article{Foster:2003:UNP, author = "W. Foster and S. Simpson", title = "Using native plug-ins with {Java}", journal = "Research Disclosure", volume = "467", publisher = "Kenneth Mason Publications", pages = "453", year = "2003", CODEN = "????", ISSN = "0374-4353", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Fox:2003:CSE, author = "Geoffrey Fox", title = "Computing in Science {\&} Engineering: {Web} Computing: {Java} and {Grande} Applications", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "4", number = "4", year = "2003", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Sat Jan 03 14:59:06 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0304/d/web_print.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Fox:2003:JGA, author = "Geoffrey Fox", title = "{Java} and {Grande} Applications", journal = j-COMPUT-SCI-ENG, volume = "5", number = "1", pages = "60--62", month = jan # "\slash " # feb, year = "2003", CODEN = "CSENFA", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat Jan 3 18:25:04 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://csdl.computer.org/dl/mags/cs/2003/01/c1060.htm; http://csdl.computer.org/dl/mags/cs/2003/01/c1060.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Freund:2003:TSJ, author = "Stephen N. Freund and John C. Mitchell", title = "A Type System for the {Java} Bytecode Language and Verifier", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "271--321", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025011624925", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/A%3A1025011624925", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Friedman:2003:TFT, author = "R. Friedman and A. Kama", title = "Transparent Fault-Tolerant {Java Virtual Machine}", journal = "Proceedings of the Symposium on Reliable Distributed Systems", volume = "EDIT22", pages = "319--328", year = "2003", CODEN = "????", ISSN = "1060-9857", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Frye:2003:SGJ, author = "C. Frye", title = "In search of a gentler {Java J2EE}", journal = "Application Development Trends", volume = "10", number = "12", pages = "24--29", year = "2003", CODEN = "????", ISSN = "1073-9564", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", abstract = "Complexity stemmed the growth of early {Java} tools. Now, an emerging breed of simpler offerings aims to give Visual {Studio.NET} a run for its money just as the next-generation Microsoft offerings increase complexity", acknowledgement = ack-nhfb, } @Article{Fuhrer:2003:MDV, author = "P. Fuhrer and J. PasquierRocha", title = "Massively Distributed Virtual Worlds: a Framework Approach ({MaDViWorld}: a {Java} Software Framework for Massively Distributed Virtual Worlds)", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "111--121", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fukushima:2003:SFS, author = "K. Fukushima and K. Sakurai", title = "A Software Fingerprinting Scheme for {Java} Using Classfiles Obfuscation", journal = j-LECT-NOTES-COMP-SCI, volume = "2908", pages = "303--316", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Fuzitaki:2003:MNL, author = "C. N. Fuzitaki and P. B. Menezes and J. P. Machado and S. A. daCosta", title = "Mapping {Nautilus} Language into {Java}: Towards a Specification and Programming Environment for Distributed Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2809", pages = "243--252", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 18 10:35:04 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gadde:2003:JCA, author = "S. Gadde", title = "{Java} class aliasing during run time", journal = "Research Disclosure", volume = "470", publisher = "Kenneth Mason Publications", pages = "764", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Gagnon:2003:EIT, author = "E. Gagnon and L. Hendren", title = "Effective Inline-Threaded Interpretation of {Java} Bytecode Using Preparation Sequences", journal = j-LECT-NOTES-COMP-SCI, volume = "2622", pages = "170--184", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Galant:2003:HTN, author = "A. Galant and R. Kutner and A. Majerowski", title = "Heat Transfer, {Newton}'s Law of Cooling and the Law of Entropy Increase Simulated by the Real-Time Computer Experiment in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2657", pages = "45--53", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gamess:2003:ESP, author = "E. Gamess", title = "Execution of Sequential and Parallel {Java} Bytecode in a Metacomputing System", journal = j-PARALLEL-PROCESS-LETT, volume = "13", number = "1", pages = "53--64", year = "2003", CODEN = "PPLTEE", ISSN = "0129-6264 (print), 1793-642X (electronic)", bibdate = "Thu May 8 07:01:22 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Parallel Processing Letters", journal-URL = "http://www.worldscientific.com/loi/ppl", } @Article{Gates:2003:DTT, author = "L. Gates", title = "Development Tools and Technologies: {Java IDEs} further coverage of life cycle", journal = "Application Development Trends", volume = "10", number = "7", publisher = "Microsoft Corporation", pages = "39--42", year = "2003", CODEN = "ADTRF4", ISSN = "1073-9564", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Gegg-Harrison:2003:SPCa, author = "Timothy S. Gegg-Harrison and Gary R. Bunce and Rebecca D. Ganetzky and Christina M. Olson and Joshua D. Wilson", title = "Studying program correctness by constructing contracts", journal = j-SIGCSE, volume = "35", number = "3", pages = "129--133", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961548", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Because the concept of program correctness is generally taught as an activity independent of the programming process, most introductory computer science (CS) students perceive it as unnecessary and even irrelevant. The concept of contracts, on the other hand, is generally taught as an integral part of the programming process. As such, most introductory CS students have little difficulty understanding the need to establish contracts via preconditions and postconditions. In order to improve teaching program correctness concepts, we implemented ProVIDE, an enhanced integrated development environment (IDE) for Java [7]. Pro VIDE supports a modified version of the ``design by contract'' methodology [13] that assists its student programmers in contract construction. Rather than asking for both a precondition and postcondition for each of his/her methods, ProVIDE asks the student to simply supply a postcondition. ProVIDE then helps the student construct the appropriate precondition by leading him/her through an axiomatic proof of the correctness of the method. Thus, the proof of correctness of the method is a side-effect of the student's need to construct an appropriate precondition.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gegg-Harrison:2003:SPCb, author = "Timothy S. Gegg-Harrison and Gary R. Bunce and Rebecca D. Ganetzky and Christina M. Olson and Joshua D. Wilson", title = "Studying program correctness in {ProVIDE}", journal = j-SIGCSE, volume = "35", number = "3", pages = "262--262", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961624", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In an attempt to better integrate discrete mathematics into the introductory CS curriculum, we implemented ProVIDE, an enhanced integrated development environment (IDE) for Java that enables students to analyze their computer programs (in terms of their correctness) while they are creating them [1]. The primary goal of the construction of ProVIDE is the seamless integration of analysis with the creation of computer programs. Because the concept of program correctness is generally taught as an activity independent of the programming process, most introductory CS students perceive it is unnecessary and even irrelevant. The concept of contracts, on the other hand, is generally taught as an integral part of the programming process. As such, most introductory CS students have little difficulty understanding the need to establish contracts via preconditions and postconditions. The approach we have taken with ProVIDE is a modified version of the ``design by contract'' methodology. Rather than asking the student programmer for both a precondition and postcondition for each of his/her methods, ProVIDE asks the student to simply supply a postcondition. ProVIDE then helps the student construct the appropriate precondition by leading him/her through an axiomatic proof of the correctness of the method. Thus, the proof of correctness of the method is a side-effect of the student's need to construct an appropriate precondition. In this demonstration, we will show some examples of method precondition construction (including loop invariant construction) within ProVIDE, including the following squaring algorithms that uses only additions (which highlights the construction of a loop invariant for a single loop) and only increments and decrements (which highlights the construction of loop invariants for both sequential and nested loops), respectively.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gerlach:2003:GPS, author = "J. Gerlach and J. Kneis", title = "Generic Programming for Scientific Computing in {C++}, {Java}, and {C\#}", journal = j-LECT-NOTES-COMP-SCI, volume = "2834", pages = "301--310", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Oct 15 08:31:41 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ghahramani:2003:ISP, author = "Bahador Ghahramani and Mark A. Pauley", title = "{IT} Systems Perspective: {Java} in High-Performance Environments", journal = j-COMPUTER, volume = "36", number = "9", pages = "109--111", month = sep, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://csdl.computer.org/dl/mags/co/2003/09/r9109.htm; http://csdl.computer.org/dl/mags/co/2003/09/r9109.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Ghosale:2003:IHP, author = "N. Ghosale and J. A. Green and J. HernandezHerrero and G. G. Huang and P. S. Parikh", title = "On Implementing a High-Performance Open {API} with {Java}", journal = j-BELL-LABS-TECH-J, volume = "7", number = "4", pages = "123--138", year = "2003", CODEN = "BLTJFD", ISSN = "1089-7089", ISSN-L = "1089-7089", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bell Labs Technical Journal", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1538-7305/issues/", } @Article{GomezMartin:2003:JVE, author = "P. P. GomezMartin and M. A. GomezMartin and P. A. GonzalezCalero", title = "{Javy}: Virtual Environment for Case-Based Teaching of {Java Virtual Machine}", journal = j-LECT-NOTES-COMP-SCI, volume = "2773", pages = "906--913", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gontmakher:2003:CVJ, author = "A. Gontmakher and S. Polyakov and A. Schuster", title = "Complexity of Verifying {Java} Shared Memory Execution", journal = j-PARALLEL-PROCESS-LETT, volume = "13", number = "4", pages = "721--734", year = "2003", CODEN = "PPLTEE", ISSN = "0129-6264 (print), 1793-642X (electronic)", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Parallel Processing Letters", journal-URL = "http://www.worldscientific.com/loi/ppl", } @Book{Goodman:2003:JDC, author = "Danny Goodman", title = "{JavaScript} and {DHTML} cookbook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 520", year = "2003", ISBN = "0-596-00467-2", ISBN-13 = "978-0-596-00467-5", LCCN = "QA76.73.J39 G63 2003", bibdate = "Mon Apr 18 15:06:50 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596004675", acknowledgement = ack-nhfb, keywords = "cookbook; Dynamic HyperText Markup Language; JavaScript", remark = "``Solutions and examples for web programmers'' --- cover.", subject = "JavaScript (Computer program language); DHTML (Document markup language); Internet programming", } @Book{Goody:2003:IVJ, author = "Roy W. Goody", title = "Introduction to {Visual J++} (Version 6.0): applications and applets: {Java 2} compliant", publisher = pub-PH, address = pub-PH:adr, edition = "Second", pages = "xx + 580", year = "2003", ISBN = "0-13-048260-9", ISBN-13 = "978-0-13-048260-0", LCCN = "QA76.73.J38 G662 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "Second edition of Introduction to J++ (Version 6.0)", keywords = "Java (computer program language); Microsoft Visual J++", } @Article{Goschl:2003:JXB, author = "Siegfried G{\"o}schl", title = "{Jelly}: An {XML}-Based Scripting Language", journal = j-DDJ, volume = "28", number = "7", pages = "66--67", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/jelly.zip", abstract = "Jelly, which lets you turn XML into executable code, is a Java-based scripting language that can be used as an embedded or standalone tool. Additional resources include jelly.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Gregg:2003:PID, author = "David Gregg and James Power and John Waldron", title = "Platform independent dynamic {Java} virtual machine analysis: the {Java Grande Forum} benchmark suite", journal = j-CCPE, volume = "15", number = "3--5", pages = "459--484", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.666", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Grinder:2003:PEE, author = "Michael T. Grinder", title = "A preliminary empirical evaluation of the effectiveness of a finite state automaton animator", journal = j-SIGCSE, volume = "35", number = "1", pages = "157--161", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.611958", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The FSA Simulator is a Java program created to allow computer science students to work and experiment with finite state automata (FSAs). One of its unique features is the ability to compare the languages of two FSAs. This FSA comparison feature lets the software give students feedback about the accuracy of their work as they do exercises, guiding them toward a correct solution. This paper discusses some preliminary experiments performed to determine the effect of this feedback mechanism on students' learning. Two experimental labs were conducted, the results of which suggest that this feature improved students' success rate when doing exercises, but did not appear to significantly improve the students' performance when the comparison feature was not available.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gruntz:2003:JST, author = "D. Gruntz and R. Muller", title = "{Java} Smart Ticket Demo Application Scrutinized", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "121--134", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hakala:2003:GPB, author = "M. Hakala and J. Hautamaki and K. Koskimies and P. Savolainen", title = "Generating Pattern-Based {Web} Tutorials for {Java} Frameworks", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "99--110", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Harold:2003:PXJ, author = "Elliotte Rusty Harold", title = "Processing {XML} with {Java}: a guide to {SAX}, {DOM}, {JDOM}, {JAXP}, and {TrAX}", publisher = pub-AW, address = pub-AW:adr, pages = "xxxvii + 1071", year = "2003", ISBN = "0-201-77186-1", ISBN-13 = "978-0-201-77186-2", LCCN = "QA76.76.H94 H337 2003 Bar", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); XML (document markup language)", } @Article{Harrison:2003:NBP, author = "P. G. Harrison and C. M. Llado", title = "A new blocking problem from {Java}-based schedulers", journal = j-PERF-EVAL, volume = "51", number = "2--4", pages = "229--246", year = "2003", CODEN = "PEEVD9", ISSN = "0166-5316 (print), 1872-745X (electronic)", ISSN-L = "0166-5316", bibdate = "Tue Feb 4 05:46:37 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Performance evaluation", } @Article{Hau:2003:SJA, author = "Gary K. W. Hau and Anthony Fong and Mok Pak Lun", title = "Support of {Java API} for the {jHISC} System", journal = j-COMP-ARCH-NEWS, volume = "31", number = "4", pages = "12--17", month = sep, year = "2003", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:41:15 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Heines:2003:EXS, author = "J. M. Heines", title = "Enabling {XML} Storage from {Java} Applets in a {GUI} Programming Course", journal = j-SIGCSE, volume = "35", number = "2", pages = "88--93", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Heinlein:2003:ATS, author = "C. Heinlein", title = "Advanced Thread Synchronization in {Java} Using Interaction Expressions", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "345--365", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Henkel:2003:DAS, author = "J. Henkel and A. Diwan", title = "Discovering Algebraic Specifications from {Java} Classes", journal = j-LECT-NOTES-COMP-SCI, volume = "2743", pages = "431--456", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hericko:2003:OSA, author = "Marjan Hericko and Matjaz B. Juric and Ivan Rozman and Simon Beloglavec and Ales Zivkovic", title = "Object Serialization Analysis and Comparison in {Java} and {.NET}", journal = j-SIGPLAN, volume = "38", number = "8", pages = "44--54", month = aug, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Herrmann:2003:BJP, author = "A. D. Herrmann and M. E. Patzkowsky and S. M. Holland", title = "{BIOMODULE}: a {Java} program to help model and interpret the stratigraphic record", journal = j-COMP-GEOSCI, volume = "29", number = "1", pages = "99--105", year = "2003", CODEN = "CGEODT, CGOSDN", ISSN = "0098-3004 (print), 1873-7803 (electronic)", ISSN-L = "0098-3004", bibdate = "Thu Jan 9 07:47:31 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Geosciences", } @Book{Hightower:2003:PPJ, author = "Richard Hightower", title = "{Python} programming with the {Java} class libraries: a tutorial for building {Web} and Enterprise applications with {Jython}", publisher = pub-AW, address = pub-AW:adr, pages = "xii + 620", year = "2003", ISBN = "0-201-61616-5", ISBN-13 = "978-0-201-61616-3", LCCN = "QA76.73.P98 H54 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application software -- development; Java (computer program language); Python (computer program language)", } @Article{Higuchi:2003:STS, author = "Tomoyuki Higuchi and Atsushi Ohori", title = "A static type system for {JVM} access control", journal = j-SIGPLAN, volume = "38", number = "9", pages = "227--237", month = sep, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:06 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Hirayama:2003:FBE, author = "K. Hirayama and N. Kunieda and Y. Hayashi and M. Koshiba", title = "{FEM-Based} Electromagnetic Wave Simulator Running on Some Platforms by Use of {Java} and a Commercial Tool", journal = "IEICE Transactions on Electronics E Series C", volume = "86", number = "11", pages = "2191--2198", year = "2003", CODEN = "????", ISSN = "0916-8524", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hitzer:2003:KIS, author = "E. M. S. Hitzer", title = "{Kamiwaai}: Interactive {$3$D} Sketching with {Java} Based on $ \mbox {Cl}(4, 1) $, Conformal Model of {Euclidean} Space", journal = "Advances in Applied Clifford Algebras", volume = "13", number = "1", pages = "11--46", year = "2003", CODEN = "????", ISSN = "0188-7009", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hnetynka:2003:FCN, author = "P. Hnetynka and P. Tuma", title = "Fighting Class Name Clashes in {Java} Component Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2789", pages = "106--109", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 16 06:05:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hoepner:2003:JBO, author = "P. Hoepner and K. P. Eckert", title = "{Java}-based Open Platform for Distributed Health Telematics Applications", journal = "Studies in Health Technology and Informatics", volume = "96", pages = "73--79", year = "2003", CODEN = "????", ISSN = "0926-9630", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hohpe:2003:AWO, author = "G. Hohpe", title = "An Asynchronous World: Online, you can get all the documentation you want on the {Java Messaging Service API}", journal = "Software Development", volume = "11", number = "7", pages = "32--37", year = "2003", CODEN = "????", ISSN = "1070-8588", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hokao:2003:TDM, author = "S. Hokao and H. Tanaka and M. Yoshihama and T. Furukawa and M. Ohchi", title = "{TAI-18-5} Development of Management System for Student Course Records Using {Java} and {PostgreSQL}", journal = "Sice", volume = "2", number = "", pages = "1693--1698", year = "2003", CODEN = "????", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hong:2003:RDW, author = "Z. Y. Hong and A. Dong", title = "Research and Development of {WebGIS} Based on {MapXtreme\slash Java}", journal = "Journal --- Shenyang Institute of Technology", volume = "22", number = "3", pages = "45--48", year = "2003", CODEN = "????", ISSN = "1003-1251", bibdate = "Wed Jan 21 08:03:13 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Horstmann:2003:CCJ, author = "Cay S. Horstmann", title = "Computing concepts with {Java} essentials", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "3rd ed", pages = "xv + 846", year = "2003", ISBN = "0-471-24371-X (paperback)", ISBN-13 = "978-0-471-24371-7 (paperback)", LCCN = "QA76 .H665 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "electronic data processing; Java (computer program language)", } @Book{Horstmann:2003:CJV, author = "Cay S. Horstmann and Gary Cornell", title = "Core {Java 2}: Volume 1: Fundamentals", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, edition = "Sixth", pages = "751 (est.)", year = "2003", ISBN = "0-13-047177-1", ISBN-13 = "978-0-13-047177-2", LCCN = "QA76.73.J38 H67 2003", bibdate = "Fri Apr 11 15:35:30 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Sun BluePrints Program", acknowledgement = ack-nhfb, } @Article{Hristova:2003:ICJ, author = "M. Hristova and A. Misra and M. Rutter and R. Mercuri", title = "Identifying and Correcting {Java} Programming Errors for Introductory Computer Science Students", journal = j-SIGCSE, volume = "35", number = "1", pages = "153--156", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hu:2003:DJV, author = "E. Y. S. Hu and A. J. Wellings and G. Bernat", title = "Deriving {Java Virtual Machine} Timing Models for Portable Worst-Case Execution Time Analysis", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "411--424", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hu:2003:FAA, author = "Chenglie Hu", title = "A framework for applet animations with controls", journal = j-SIGCSE, volume = "35", number = "4", pages = "90--93", month = dec, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/960492.960536", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:05 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse35.html#Hu03; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2003.bib", abstract = "A generic JavaTM applet animation with controls is presented in this paper. This framework implementation promotes software reusability in terms of applying modularity and factorization using inheritance, delegation, and template classes with cohesive methods. It can be used either as an example or a project in a typical object-oriented design and analysis class.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Huang:2003:JBD, author = "H. P. Huang and C. H. Lu", title = "{Java}-Based Distance Learning Environment for Electronic Instruments", journal = j-IEEE-TRANS-EDUC, volume = "46", number = "1", pages = "88--94", year = "2003", CODEN = "IEEDAB", ISSN = "0018-9359", ISSN-L = "0018-9359", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Education", } @Article{Huang:2003:JGJ, author = "Y. Huang and T. Ni and L. Zhou and S. Su", title = "{JXP4BIGI}: a generalized, {Java} {XML}-based approach for biological information gathering and integration", journal = j-BIOINFORMATICS, volume = "19", number = "18", pages = "2351--2358", year = "2003", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Wed Jan 21 08:03:13 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Huang:2003:JJB, author = "Y. Huang", title = "{JISGA}: a {Jini}-Based Service-Oriented {Grid} Architecture", journal = "International Journal of High Performance Computing Applications", volume = "17", number = "3", pages = "317--327", month = aug, year = "2003", CODEN = "????", ISSN = "1094-3420 (print), 1741-2846 (electronic)", ISSN-L = "1094-3420", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "11", } @Book{Hunt:2003:GJE, author = "John Hunt and Chris Loftus", title = "Guide to {J2EE}: {Enterprise Java}", publisher = pub-SV, address = pub-SV:adr, pages = "xxv + 672", year = "2003", ISBN = "1-85233-704-4", ISBN-13 = "978-1-85233-704-9", LCCN = "QA76.73.J38 H855 2003", bibdate = "Sat Aug 02 09:15:18 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$69.95", series = "Springer professional computing", acknowledgement = ack-nhfb, subject = "Java (computer program language); business; data processing", } @Article{Hunt:2003:LSM, author = "J. Hunt", title = "Look sharp! {Microsoft}'s {C\#} column has often been described as a {Java} killer, and the languages have a lot in common", journal = "Application Development Advisor", volume = "7", number = "2", publisher = "SIGS", pages = "32--35", year = "2003", CODEN = "????", ISSN = "1369-4200", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hunt:2003:UIP, author = "Kenny Hunt", title = "Using image processing to teach {CS1} and {CS2}", journal = j-SIGCSE, volume = "35", number = "4", pages = "86--89", month = dec, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/960492.960535", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:05 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse35.html#Hunt03; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2003.bib", abstract = "The use of digital image processing techniques in undergraduate computer science curriculum has advantages in terms of motivating student interest and immediate, visual feedback of executed code. Although the standard Java distribution includes support for basic image processing operations, including the display of images, the complexity of the package renders it unsuitable for inexperienced programmers. This paper presents an extension to the built-in image processing package that is suitable for use in CS1 and CS2 courses and suggests ways that the package can be used to teach topics in these courses.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Husted:2003:SAB, author = "Ted Husted and Cedric Dumoulin", title = "{Struts} in action: {Building} {Web} applications with the leading {Java} framework", publisher = "Manning", address = "Greenwich, CT, USA", pages = "xxxiv + 630", year = "2003", ISBN = "1-930110-50-2", ISBN-13 = "978-1-930110-50-2", LCCN = "TK5105.8885.S76 H87 2003", bibdate = "Mon Mar 27 09:10:19 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/bios/ipg051/2003275314.html; http://www.loc.gov/catdir/description/ipg051/2003275314.html", acknowledgement = ack-nhfb, subject = "Struts framework; Web site development", } @Article{Icking:2003:JAD, author = "C. Icking and R. Klein and P. Kollner and L. Ma", title = "{Java} Applets for the Dynamic Visualization of {Voronoi} Diagrams", journal = j-LECT-NOTES-COMP-SCI, volume = "2598", pages = "191--205", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Inagaki:2003:IPS, author = "Tatsushi Inagaki and Hideaki Komatsu and Toshio Nakatani", title = "Integrated prepass scheduling for a {Java} {Just-In-Time} compiler on the {IA-64} architecture", crossref = "IEEE:2003:PCI", pages = "159--168", year = "2003", DOI = "https://doi.org/10.1109/CGO.2003.1191542", bibdate = "Thu Jun 09 18:42:46 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present a new integrated prepass scheduling (IPS) algorithm for a Java Just-In-Time (JIT) compiler, which integrates register minimization into list scheduling. We use backtracking in the list scheduling when we have used up all the available registers. To reduce the overhead of backtracking, we incrementally maintain a set of candidate instructions for undoing scheduling. To maximize the ILP after undoing scheduling. To maximize the ILP after undoing scheduling, we select an instruction chain with the smallest increase in the total execution time. We implemented our new algorithm in a production-level Java JIT compiler for the Intel Itanium processor. The experiment showed that, compared to the best known algorithm by Govindarajan et al., our IPS algorithm improved the performance by up to +1.8\% while it reduced the compilation time for IPS by 58\% on average.", acknowledgement = ack-nhfb, } @Article{Iosif:2003:TLP, author = "R. Iosif and R. Sisto", title = "Temporal logic properties of {Java} objects", journal = j-J-SYST-SOFTW, volume = "68", number = "3", pages = "243--251", year = "2003", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Ishizaki:2003:ECP, author = "Kazuaki Ishizaki and Mikio Takeuchi and Kiyokuni Kawachiya and Toshio Suganuma and Osamu Gohda and Tatsushi Inagaki and Akira Koseki and Kazunori Ogata and Motohiro Kawahito and Toshiaki Yasue and Takeshi Ogasawara and Tamiya Onodera and Hideaki Komatsu and Toshio Nakatani", title = "Effectiveness of cross-platform optimizations for a {Java} just-in-time compiler", journal = j-SIGPLAN, volume = "38", number = "11", pages = "187--204", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Itzstein:2003:IHL, author = "G. S. Itzstein and M. Jasiunas", title = "On Implementing High Level Concurrency in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2823", pages = "151--165", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @PhdThesis{Ive:2003:TER, author = "Anders Ive", title = "Towards an embedded real-time {Java Virtual Machine}", volume = "20", type = "Thesis (fil.dr.)", school = "Lund University, Department of Computer Science", address = "Lund, Sweden", pages = "viii + 139", year = "2003", LCCN = "????", bibdate = "Mon Apr 10 10:43:56 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", series = "Dissertation / Department of Computer Science, Lund University", acknowledgement = ack-nhfb, subject = "JVM; microsystems", } @Book{Iverson:2003:MXJ, author = "Will Iverson", title = "{Mac OS X} for {Java} Geeks", publisher = pub-ORA, address = pub-ORA:adr, pages = "xii + 282", year = "2003", ISBN = "0-596-00400-1", ISBN-13 = "978-0-596-00400-2", LCCN = "QA76.76.O63 I936 2003", bibdate = "Thu May 08 13:55:11 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95 US, CAN\$61.95, UK\pounds 28.50", URL = "http://www.oreilly.com/catalog/macxjvgks/", acknowledgement = ack-nhfb, subject = "Mac OS; Operating systems (Computers); Macintosh (Computer); Programming; Java (Computer program language)", } @Article{Jacobs:2003:CMS, author = "B. Jacobs and E. Poll", title = "Coalgebras and monads in the semantics of {Java}", journal = j-THEOR-COMP-SCI, volume = "291", number = "3", pages = "329--349", year = "2003", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Thu Jan 9 07:47:31 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Article{Jacobs:2003:JIT, author = "B. Jacobs", title = "{Java}'s Integral Types in {PVS}", journal = j-LECT-NOTES-COMP-SCI, volume = "2884", pages = "1--15", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 15 12:30:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jacobs:2003:JPV, author = "B. Jacobs and J. Kiniry and M. Warnier", title = "{Java} Program Verification Challenges", journal = j-LECT-NOTES-COMP-SCI, volume = "2852", pages = "202--219", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 11 05:21:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jank:2003:OOI, author = "K. Jank and R. Oberhauser", title = "An Object-Oriented Invocation Layer for the {Java Message Service}", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "57--69", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jha:2003:JIP, author = "S. Jha and M. Hassan", title = "{Java} implementation of policy-based bandwith management", journal = "International Journal of Network Management", volume = "13", number = "4", pages = "249--258", year = "2003", CODEN = "????", ISSN = "1055-7148", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Jiang:2003:AJM, author = "Y. Jiang and Z. Wang and T. Chen", title = "Application of {Java} in Multimedia {Netware} Courseware", journal = "Journal --- {Jiangsu Polytechnic University}", volume = "15", number = "1", pages = "61--64", year = "2003", CODEN = "????", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Jipping:2003:UJT, author = "M. J. Jipping and A. Bugaj and L. Mihalkova and D. E. Porter", title = "Using {Java} to Teach Networking Concepts With a Programmable Network Sniffer", journal = j-SIGCSE, volume = "35", number = "1", pages = "120--124", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Johnson:2003:SJA, author = "P. Johnson", title = "Scaling Up {Java} Applications on {Windows} Servers", journal = "Cmg", volume = "1", number = "??", publisher = "Computer Measurement Group", pages = "103--112", year = "2003", CODEN = "????", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Jordan:2003:JDO, author = "David Jordan and Craig Russell", title = "{Java} Data Objects", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxi + 356", year = "2003", ISBN = "0-596-00276-9", ISBN-13 = "978-0-596-00276-3", LCCN = "QA76.73.J38 J66 2003", bibdate = "Thu May 08 13:57:25 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95 US, CAN\$61.95, UK\pounds 28.50", URL = "http://www.oreilly.com/catalog/jvadtaobj/", acknowledgement = ack-nhfb, } @Article{Joshi:2003:FOJ, author = "Rushikesh K. Joshi and Maureen Mascarenhas and Yogesh Murarka", title = "Filter objects for {Java}", journal = j-SPE, volume = "33", number = "6", pages = "509--522", month = may, year = "2003", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.507", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Nov 29 17:39:45 MST 2003", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "5 Mar 2003", } @Article{Jun:2003:CDT, author = "Q. Jun and L. Hongzhi and L. Shiqi and C. Lie", title = "A collaborative design tool based on {Java $3$D} and {CORBA}", journal = "Journal - Huazhong University of Science and Technology Nature Science Chinese Edition", volume = "31", number = "1", pages = "25--27", year = "2003", CODEN = "????", ISSN = "1671-4512", bibdate = "Tue Mar 4 09:14:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kavadias:2003:ESS, author = "C. Kavadias and B. Perrin and V. Kollias and M. Loupis", title = "Enhanced {SDL} Subset for the Design and Implementation of {Java}-Enabled Embedded Signalling Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "2708", pages = "137--149", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Aug 12 09:01:52 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Keane:2003:DJP, author = "T. Keane and R. Allen and T. J. Naughton and J. McInerney and J. Waldron", title = "Distributed {Java} Platform with Programmable {MIMD} Capabilities", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "122--131", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kiczales:2003:ATA, author = "G. Kiczales", title = "{AspectJ}(tm): Aspect-Oriented Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "1", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kilburn:2003:MUJ, author = "W. Kilburn", title = "{Microsoft} unveils {Java} converter kit", journal = "Application Development Trends", volume = "10", number = "12", pages = "27--27", year = "2003", CODEN = "????", ISSN = "1073-9564", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kilgore:2003:OOS, author = "R. A. Kilgore", title = "Object-Oriented Simulation with {SML} and {Silk} in {.Net} and {Java}", journal = "Winter Simulation Conference", volume = "1", number = "??", pages = "218--224", year = "2003", CODEN = "????", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kimura:2003:IJA, author = "M. Kimura and M. H. Miki and T. Onoye and I. Shirakawa", title = "Implementation of {Java} Accelerator for High-Performance Embedded Systems", journal = "IEICE Transactions on Fundamentals of Electronics Communications and Computer Sciences E Series A", volume = "86", number = "12", pages = "3079--3088", year = "2003", CODEN = "????", ISSN = "0916-8508 (print), 1745-1337 (electronic)", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{Kistijantoro:2003:CRD, author = "A. Kistijantoro and G. Morgan and S. Shrivastava and M. Little", title = "Component Replication in Distributed Systems: a Case Study Using Enterprise {Java Beans}", crossref = "IEEE:2003:PSR", volume = "EDIT22", pages = "89--98", year = "2003", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kleijnen:2003:OWS, author = "Stans Kleijnen and Srikanth Raju", title = "An Open {Web} Services Architecture", journal = j-QUEUE, volume = "1", number = "1", pages = "38--46", month = mar, year = "2003", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Sat Aug 23 11:00:11 2003", bibsource = "http://www.acmqueue.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "With Java users are free to choose the products that best suit their needs.", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Klein:2003:VBS, author = "G. Klein and M. Wildmoser", title = "Verified Bytecode Subroutines", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "363--398", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025095122199", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/A%3A1025095122199", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Kloukinas:2003:MTS, author = "C. Kloukinas and C. Nakhli and S. Yovine", title = "A Methodology and Tool Support for Generating Scheduled Native Code for Real-Time {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2855", pages = "274--289", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 11 05:21:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Koga:2003:MRT, author = "M. Koga and S. Kawakami", title = "{MAI-17-3} Real-Time Remote Control System in {Java} and Its Application to Swing Up Control of Inverted Pendulum", journal = "Sice", volume = "1", number = "", pages = "358--361", year = "2003", CODEN = "????", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Konsella:2003:ASJ, author = "S. Konsella", title = "Adapting standard {Java GUI APIs} for front panel user interfaces on peripheral devices", journal = "Research Disclosure", volume = "466", publisher = "Kenneth Mason Publications", pages = "236", year = "2003", CODEN = "RSDSBB", ISSN = "0374-4353", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Korochkin:2003:EPA, author = "D. Korochkin and S. Korochkin", title = "Experimental Performance Analysis of the {Ada95} and {Java} Parallel Program on {SMP} Systems", journal = j-SIGADA-LETTERS, volume = "23", number = "1", pages = "53--56", year = "2003", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Kou:2003:RST, author = "Y. Kou and Z. Liao and Z. Li", title = "Research on the Scalable Technologies of Network Management Software based on {Java}", journal = j-MINI-MICRO-SYSTEMS, volume = "24", number = "1", publisher = "Gai-Kan Biajibu", pages = "17--19", year = "2003", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Tue Mar 11 05:23:20 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Kouh:2003:ADJ, author = "H. J. Kouh and W. H. Yoo", title = "Automated Debugging in {Java} Programs Using {HDM}", journal = j-LECT-NOTES-COMP-SCI, volume = "2660", pages = "849--858", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kouh:2003:EDS, author = "H. J. Kouh and W. H. Yoo", title = "The Efficient Debugging System for Locating Logical Errors in {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2667", pages = "684--693", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Krapf:2003:ESP, author = "R. Krapf and L. Carro", title = "Efficient Signal Processing in Embedded {Java} Systems", journal = "IEEE International Symposium on Circuits and Systems", volume = "4", publisher = "IEEE", pages = "IV-61--IV-64", year = "2003", CODEN = "????", ISSN = "0271-4310", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kreuzinger:2003:RTE, author = "J. Kreuzinger and U. Brinkschulte and M. Pfeffer and S. Uhrig and T. Ungerer", title = "Real-time event-handling and scheduling on a multithreaded {Java} microcontroller", journal = j-MICROPROC-MICROSYS, volume = "27", number = "1", pages = "19--31", year = "2003", CODEN = "MIMID5", ISSN = "0141-9331 (print), 1872-9436 (electronic)", ISSN-L = "0141-9331", bibdate = "Tue Feb 18 07:16:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Microprocessors and Microsystems", } @Book{Kumar:2003:PBD, author = "C. Bala Kumar and Paul J. Kline and Timothy J. Thompson", title = "{Bluetooth} application programming with the {Java} {APIs}", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xxii + 498", year = "2004", ISBN = "1-55860-934-2", ISBN-13 = "978-1-55860-934-1", LCCN = "TK5103.3 .K86 2004", bibdate = "Wed Oct 26 17:07:51 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", price = "US\$44.95", series = "The Morgan Kaufmann series in networking", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/els051/2003107476.html; http://www.loc.gov/catdir/toc/els051/2003107476.html", acknowledgement = ack-nhfb, remark = "``Motorola Semiconductor Products Sector.''.. Introduction --- An overview of JABWT --- High-level architecture --- RFCOMM --- OBEX --- Device discovery --- Service discovery --- L2CAP --- Example applications --- Implementing JABWT on a device --- Closing remarks.", subject = "Bluetooth technology; Java (Computer program language); Application program interfaces (Computer software); Wireless communication systems", } @Article{Kwon:2003:AJP, author = "Jagun Kwon and Andy Wellings and Steve King", title = "Assessment of the {Java} Programming Language for Use in High Integrity Systems", journal = j-SIGPLAN, volume = "38", number = "4", publisher = "ACM", pages = "34--46", month = apr, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:44:59 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Lagorio:2003:TSC, author = "G. Lagorio", title = "Towards a Smart Compilation Manager for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2841", pages = "302--315", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 11 05:21:36 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Lai:2003:JPW, author = "Ray Lai", title = "{J2EE} Platform {Web} Services", publisher = pub-SUN-MICROSYSTEMS-PRESS, address = pub-SUN-MICROSYSTEMS-PRESS:adr, pages = "592 (est.)", year = "2003", ISBN = "0-13-101402-1", ISBN-13 = "978-0-13-101402-2", LCCN = "TK5105.88813 .L35 2003", bibdate = "Sat Jan 03 06:32:55 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sun.com/books/catalog/lai2.xml", price = "US\$49.99", acknowledgement = ack-nhfb, } @Book{Lambert:2003:FJC, author = "Kenneth Alfred Lambert and Martin Osborne", title = "Fundamentals of {Java}: comprehensive course", publisher = "Thomson/Course Technology", address = "Boston, MA, USA", edition = "Second", pages = "various", year = "2003", ISBN = "0-619-05963-X", ISBN-13 = "978-0-619-05963-7", LCCN = "QA76.73.J38 L354 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Book{Lambert:2003:JB, author = "Kenneth Alfred Lambert and Martin Osborne", title = "{Java} basics", publisher = "Thomson/Course Technology", address = "Boston, MA, USA", pages = "xv + 260", year = "2003", ISBN = "0-619-05967-2", ISBN-13 = "978-0-619-05967-5", LCCN = "QA76.73.J38 L354 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language)", } @Article{Lamm:2003:BAV, author = "E. Lamm", title = "{Booch}'s {Ada} vs. {Liskov}'s {Java}: Two Approaches to Teaching Software Design", journal = j-LECT-NOTES-COMP-SCI, volume = "2655", pages = "102--112", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lau:2003:MMT, author = "T. C. Lau and J. Lu and J. Mylopoulos and K. Kontogiannis", title = "The Migration of Multi-tier {E}-commerce Applications to an Enterprise {Java} Environment", journal = "Information Systems Frontiers", volume = "5", number = "2", pages = "149--160", year = "2003", CODEN = "????", ISSN = "1387-3326", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lau:2003:TSS, author = "F. C. M. Lau", title = "Towards a Single System Image for High-Performance {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2745", pages = "6--7", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Aug 12 09:01:52 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lawhead:2003:LJP, author = "P. Lawhead and C. Bland and M. Duncan and M. Schep and D. Barnes and M. Goldweber", title = "{Legos}, {Java}, Programming Assignments and {CS1}", journal = j-SIGCSE, volume = "35", number = "1", pages = "47--48", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Lawhead:2003:RMT, author = "Pamela B. Lawhead and Michaele E. Duncan and Constance G. Bland and Michael Goldweber and Madeleine Schep and David J. Barnes and Ralph G. Hollingsworth", title = "A road map for teaching introductory programming using {LEGO{\TM} Mindstorms} robots", journal = j-SIGCSE, volume = "35", number = "2", pages = "191--201", month = jun, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/782941.783002", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:02 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse35.html#LawheadDBGSBH03; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2003.bib; ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Techreports/UKent.bib; http://www.cs.kent.ac.uk/pubs/2003/1666", abstract = "In this paper, we describe a recent trend in the introductory computer science curriculum which advocates conceptualizing computation primarily as coordinated concurrent activities [8], [9], [10]. Consistent with this philosophy is the focus on the event-driven model of computation [7]. While one can utilize these approaches with any thread and/or event supporting object-oriented language (e.g., Java) in a desktop programming environment, they become particularly worthwhile when used in conjunction with physical robots. This paper argues the case for the benefits of this approach and provides sample exercises that illustrate the use of this pedagogy using Lego Mindstorms RCX bricks programmed in Java for use in introductory programming.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", keywords = "robotics CS1 CS2 object-oriented Java 2nd tier students computing and interaction computer controlled models", submission-id = "26462_1059492011", } @Article{League:2003:PPT, author = "C. League and Z. Shao and V. Trifonov", title = "Precision in Practice: a Type-Preserving {Java} Compiler", journal = j-LECT-NOTES-COMP-SCI, volume = "2622", pages = "106--120", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lee:2003:MWS, author = "Arthur H. Lee", title = "A manageable {Web} software architecture: searching for simplicity", journal = j-SIGCSE, volume = "35", number = "1", pages = "229--233", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.611976", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Instruction on web programming at an advanced level in computer science has been in high demand in recent years. The topics and technologies in this area are so vast and diverse that designing and teaching a course requires vast knowledge and the ability to select coherent topics and technologies that can be presented in a semester. The students should learn enough of the underlying fundamental concepts along with the selected technologies so that they can practise in the real world setting while being able to adapt and expand beyond what was taught in class. Very few courses of this kind if any have been taught. We describe such a course, called Web Software Architecture, that we created and have taught successfully last Spring. It is a junior/senior level computer science elective course that uses Java, Servlets, JavaServer Pages, HTML, JavaScript, JDBC, and the Apache-Tomcat web server as key technologies. Our experience supports the assertion that such a web programming course has a legitimate place in a computer science curriculum.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Lee:2003:RSC, author = "J. S. Lee and P. L. Hsu", title = "Remote Supervisory Control of the Human-in-the-Loop System by Using {Petri} Nets and {Java}", journal = j-IEEE-TRANS-IND-ELECTRON, volume = "50", number = "3", pages = "431--439", year = "2003", CODEN = "ITIED6", ISSN = "0278-0046 (print), 1557-9948 (electronic)", ISSN-L = "0278-0046", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Industrial Electronics", } @Article{Lee:2003:TIW, author = "S. M. Lee and O. S. Kwon and J. H. Lee and C. J. Oh and S. H. Ko", title = "{TY*SecureWS}: An Integrated {Web} Service Security Solution Based on {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2738", pages = "186--195", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Leroy:2003:JBV, author = "Xavier Leroy", title = "{Java} Bytecode Verification: Algorithms and Formalizations", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "235--269", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025055424017", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/A%3A1025055424017", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Leska:2003:LDG, author = "C. Leska", title = "Learning to Develop {GUIs} in {Java} Using Closed Labs", journal = j-SIGCSE, volume = "35", number = "3", pages = "228", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Lewis:2003:JSS, author = "John Lewis and William Loftus", title = "{Java} software solutions: foundations of program design", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xxix + 923", year = "2003", ISBN = "0-201-78129-8", ISBN-13 = "978-0-201-78129-8", LCCN = "QA76.73.J38 L49 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Lhotak:2003:SJP, author = "O. Lhotak and L. Hendren", title = "Scaling {Java} Points-to Analysis Using {SPARK}", journal = j-LECT-NOTES-COMP-SCI, volume = "2622", pages = "153--169", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Li:2003:JBM, author = "Sing Li", title = "A {Java}-Based Music Player for {MP3}, {Ogg}, and {WAV}", journal = j-DDJ, volume = "28", number = "2", pages = "38, 40, 42, 44--45", month = feb, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:21 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0302/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://www.ddj.com/documents/s=7790/ddj0302e/", abstract = "Here's a digital music player built around the JavaSound API that supports real-time decoding/playback of music in MP3, WAV, and Ogg Vorbis formats.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Liang:2003:IJP, author = "Y. Daniel Liang", title = "Introduction to {Java} programming with {Sun One Studio 4}", publisher = pub-PH, address = pub-PH:adr, pages = "xxxv + 962", year = "2003", ISBN = "0-13-009258-4", ISBN-13 = "978-0-13-009258-8", LCCN = "QA76.73.J38 L525 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "application program interfaces (computer software); application software porting; computer science textbooks; Java (computer program language); object-oriented programming (computer science)", } @Article{Liao:2003:THM, author = "L. Liao", title = "Temperature and Humidity Monitor System Based on $1$-Wire and {Java VM} Technologies", journal = "Journal --- {Sichuan Normal University} Natural Science Edition", volume = "26", number = "1", pages = "93--96", year = "2003", CODEN = "????", ISSN = "1001-8395", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lim:2003:SOI, author = "S. Lim and Y. Song", title = "Secure {Online Internet Reservation of e-Government Service} ({ORGS}) Using {Java Card Applications Toolkit} ({J-CAT})", journal = j-LECT-NOTES-COMP-SCI, volume = "2739", pages = "272--277", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 16 06:05:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lin:2003:DEA, author = "W. Lin", title = "Development of Electronic Acquisition Model for Project Scheduling ({e-AMPS}) Using {Java-XML}", journal = "NIST Special Publication SP", volume = "989", publisher = "National Institute of Standards and Technology", pages = "41--46", year = "2003", CODEN = "????", ISSN = "1048-776X", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{Lin:2003:SRP, author = "Jin Lin and Tong Chen and Wei-Chung Hsu and Pen-Chung Yew", title = "Speculative register promotion using Advanced Load Address Table ({ALAT})", crossref = "IEEE:2003:PCI", pages = "125--134", year = "2003", DOI = "https://doi.org/10.1109/CGO.2003.1191539", bibdate = "Thu Jun 09 18:39:29 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The pervasive use of pointers with complicated patterns in C programs often constrains compiler alias analysis to yield conservative register allocation and promotion. Speculative register promotion with hardware support has the potential to more aggressively promote memory references into registers in the presence of aliases. This paper studies the use of the Advanced Load Address Table (ALAT), a data speculation feature defined in the IA-64 architecture, for speculative register promotion. An algorithm for speculative register promotion based on partial redundancy elimination is presented. The algorithm is implemented in Intel's Open Research Compiler (ORC). Experiments on SPEC CPU2000 benchmark programs are conducted to show that speculative register promotion can improve performance of some benchmarks by 1\% to 7\%.", acknowledgement = ack-nhfb, keywords = "EPIC; Intel IA-64; Itanium", } @Book{Link:2003:UTJ, author = "Johannes Link", title = "Unit testing in {Java}: How Tests Drive the Code", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xvii + 376", year = "2003", ISBN = "1-55860-868-0", ISBN-13 = "978-1-55860-868-9", LCCN = "QA76.76.T48 L55 2003", bibdate = "Tue Jul 27 05:26:54 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "With contributions by Peter Fr{\"o}hlich.", price = "US\$39.95", acknowledgement = ack-nhfb, } @Article{Liu:2003:IRL, author = "Y. Liu and K. Yang", title = "The implementation of remote loading classes on the {Java} platform", journal = "Journal --- Hebei Institute of Technology", volume = "25", number = "4", pages = "100--105", year = "2003", CODEN = "????", ISSN = "1007-2829", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2003:RDE, author = "H. Liu and X. Zhou and B. Zhong", title = "The Realization of Data Exchange between Different System Platforms Using {Java} and {XML} under the Environment of {Lotus Domino}", journal = "Journal --- Sichuan Normal University Natural Science Edition", volume = "26", number = "3", publisher = "Sichuan Normal University", pages = "327--330", year = "2003", CODEN = "????", ISSN = "1001-8395", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2003:RII, author = "F. Liu and H. Wang", title = "Realization of an interactive and individual long-distance teaching system based on {Java} technology", journal = "Journal --- {Beijing University of Chemical Technology} Natural Science Edition", volume = "30", number = "2", pages = "85--88", year = "2003", CODEN = "????", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2003:SIJ, author = "C. Liu", title = "Security Issues for {Java} --- Based Agents", journal = "Journal --- Jishou University Natural Science", volume = "24", number = "1", pages = "26--36", year = "2003", CODEN = "????", ISSN = "1007-2985", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Locke:2003:JTC, author = "C. D. Locke and P. C. Dibble", title = "{Java} Technology Comes to Real-Time Applications (Invited Paper)", journal = j-PROC-IEEE, volume = "91", number = "7", pages = "1105--1113", year = "2003", CODEN = "IEEPAD", ISSN = "0018-9219 (print), 1558-2256 (electronic)", ISSN-L = "0018-9219", bibdate = "Tue Aug 19 10:20:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the IEEE", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5", } @Article{Long:2003:TST, author = "B. Long and D. Hoffman and P. Strooper", title = "Tool support for testing concurrent {Java} components", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "29", number = "6", pages = "555--566", month = jun, year = "2003", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2003.1205182", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1205182", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Book{Loy:2003:JS, editor = "Marc Loy and Robert Eckstein and David Wood and James Elliott and Brian Cole", title = "{Java} Swing", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xxiv + 1252", year = "2003", ISBN = "0-596-00408-7", ISBN-13 = "978-0-596-00408-8", LCCN = "QA76.73.J38 J3855 2003", bibdate = "Mon Apr 18 15:06:07 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html; z3950.loc.gov:7090/Voyager", price = "US\$54.95", URL = "http://www.oreilly.com/catalog/9780596004088; http://www.oreilly.com/catalog/jswing2", acknowledgement = ack-nhfb, keywords = "graphical user interfaces (computer systems); Java (computer program language); Swing (computer file)", publishersummary = "This second edition of Java Swing thoroughly covers all the features available in Java 2 SDK 1.3 and 1.4. More than simply a reference, this new edition takes a practical approach. It is a book by developers for developers, with hundreds of useful examples, from beginning level to advanced, covering every component available in Swing.\par Whether you're a seasoned Java developer or just trying to find out what Java can do, you'll find Java Swing, 2nd edition an indispensable guide.", remark = "Rev. ed. of: Java Swing / Robert Eckstein, Marc Loy, and Dave Wood. c1998.", subject = "Java (Computer program language); Swing (Computer file)", } @Article{Lu:2003:PVP, author = "H. Lu and Y. Li and F. Kong", title = "The principle of {VRML} parser in {Java} language", journal = "Journal --- Zhejiang University of Technology", volume = "31", number = "2", pages = "139--143", year = "2003", CODEN = "????", ISSN = "1006-4303", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lun:2003:OOP, author = "Mok Pak Lun and Anthony Fong and Gary K. W. Hau", title = "Object-Oriented Processor Requirements with Instruction Analysis of {Java} Programs", journal = j-COMP-ARCH-NEWS, volume = "31", number = "5", pages = "10--15", month = dec, year = "2003", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:41:23 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Lutz:2003:BBC, author = "Michael J. Lutz", title = "Bookshelf: Building {C\#} Programs with Patterns [{C\# Design Patterns}]; Using {Star Schema} in {Oracle} [{Oracle DBA Guide to Data Warehousing and Star Schemas}]; Immersive {Java} Text [{Java Outside In}]; Applying {AI} to the {Web} [{Web Intelligence}]; Moronic Marketing [{In Search of Stupidity: Over 20 Years of High-Tech Marketing Disasters}]", journal = j-COMPUTER, volume = "36", number = "9", pages = "96--97", month = sep, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/09/r9096.htm; http://csdl.computer.org/dl/mags/co/2003/09/r9096.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Lutz:2003:BFE, author = "Michael J. Lutz", title = "Bookshelf: The Five Essential Metrics [{Five Core Metrics: The Intelligence Behind Successful Software Management}]; Hunting Bugs in Concurrent Systems [{The SPIN Model Checker: Primer and Reference Model}]; Revised Digital Testing Tome [{Digital Logic Testing and Simulation}]; {Java} for Science and Engineering [{Technical Java: Developing Scientific and Engineering Applications}]", journal = j-COMPUTER, volume = "36", number = "11", pages = "85--85", month = nov, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:48 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/11/ry085.htm; http://csdl.computer.org/dl/mags/co/2003/11/ry085.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Lutz:2003:BSW, author = "Michael J. Lutz", title = "Bookshelf: Surveying the {Web}'s Best and Brightest [{Deep Sites: Intelligent Innovation in Contemporary Web Design}]; Moving Voice Communications to the {Web} [{Implementing Voice over IP}]; Developing Custom {.NET} Management Tools [{.NET Systems Management Services}]; Evolving {Java} [{Applied Evolutionary Algorithms in Java}]", journal = j-COMPUTER, volume = "36", number = "7", pages = "86--86", month = jul, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/07/r7086.htm; http://csdl.computer.org/dl/mags/co/2003/07/r7086.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Mahovsky:2003:AJB, author = "J. Mahovsky and L. Benedicenti", title = "An Architecture for {Java}-Based Real-Time Distributed Visualization", journal = "IEEE Transactions on Visualization and Computer Graphics", volume = "9", number = "4", pages = "570--579", year = "2003", CODEN = "????", ISSN = "1077-2626 (print), 1941-0506 (electronic), 2160-9306", ISSN-L = "1077-2626", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Main:2003:DSO, author = "M. (Michael) Main", title = "Data structures and other objects using {Java}", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "808", year = "2003", ISBN = "0-201-74093-1", ISBN-13 = "978-0-201-74093-6", LCCN = "QA76.73.J38 M33 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "data structures (computer science); Java (computer program language)", } @Book{Mak:2003:JNC, author = "Ronald Mak", title = "{Java} Number Cruncher: The {Java} Programmer's Guide to Numerical Computing", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xi + 464", year = "2003", ISBN = "0-13-046041-9", ISBN-13 = "978-0-13-046041-7", LCCN = "QA76.73.J38 M335 2003", bibdate = "Wed Oct 22 08:39:03 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "See positive review at http://crd.lbl.gov/~dhbailey/dhbpapers/dhb-java.pdf", keywords = "Java (computer program language); numerical analysis -- data processing", } @Book{Matthews:2003:MJD, author = "Mark Matthews and Jim Cole and Joe Gradecki", title = "{MySQL} and {Java} developer's guide", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxii + 410", year = "2003", ISBN = "0-471-26923-9", ISBN-13 = "978-0-471-26923-6", LCCN = "QA76.3.S67 M38 2003", bibdate = "Wed Apr 27 05:41:25 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Java open source library", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/bios/wiley045/2002155887.html; http://www.loc.gov/catdir/description/wiley038/2002155887.html; http://www.loc.gov/catdir/toc/wiley031/2002155887.html", acknowledgement = ack-nhfb, subject = "SQL (Computer program language); MySQL (Electronic resource); Java (Computer program language)", } @Book{McGovern:2003:JWS, author = "James McGovern and Sameer Tyagi and Michael Stevens and Sunil Mathew", title = "{Java} {Web} Services Architecture", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xii + 833", year = "2003", ISBN = "1-55860-900-8 (paperback)", ISBN-13 = "978-1-55860-900-6 (paperback)", LCCN = "TK5105.88813 J38 2003", bibdate = "Mon Mar 10 06:03:21 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$59.95", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/els051/2002117799.html; http://www.loc.gov/catdir/toc/els031/2002117799.html", acknowledgement = ack-nhfb, subject = "Web services; Java (Computer program language); Computer architecture", } @Article{McGowan:2003:JCA, author = "D. McGowan", title = "Has {Java} Changed Anything? The Sound and Fury of Innovation Litigation", journal = "Minnesota Law Review", volume = "87", number = "6", publisher = "The Minnesota Law Review Foundation", pages = "2039--2062", year = "2003", CODEN = "????", ISSN = "0026-5535", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Mengant:2003:NBJ, author = "J. Y. Mengant", title = "{A.NET} Bridge to a {Java Virtual Machine}: {Java} and {.NET} interoperability, with a little help from {C++}", journal = j-CCCUJ, volume = "21", number = "10", pages = "28", year = "2003", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue Oct 7 05:32:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Metzger:2003:MBP, author = "J. Metzger and M. Schillo and K. Fischer", title = "A Multiagent-Based Peer-to-Peer Network in {Java} for Distributed Spam Filtering", journal = j-LECT-NOTES-COMP-SCI, volume = "2691", publisher = "Springer-Verlag", pages = "616--625", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Meyer:2003:CIC, author = "M. Meyer", title = "Creating {.INI} classes in {Java}", journal = j-DDJ, volume = "28", number = "8", pages = "38--44", year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Miller:2003:LTB, author = "G. R. Miller and P. Arduino and J. Jang and C. Choi", title = "Localized tensor-based solvers for interactive finite element applications using {C++} and {Java}", journal = j-COMP-STRUCTURES, volume = "81", number = "7", pages = "423--437", year = "2003", CODEN = "CMSTCJ", ISSN = "0045-7949 (print), 1879-2243 (electronic)", ISSN-L = "0045-7949", bibdate = "Tue Mar 18 05:54:30 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Structures", } @Article{Miller:2003:OCP, author = "W. W. Miller and C. Sontag and J. F. Rose", title = "{OPUS}: a {CORBA} Pipeline for {Java}, {Python}, and {Perl} Applications", journal = "Astronomical Society of the Pacific Conference Series", volume = "295", pages = "261--264", year = "2003", CODEN = "????", ISSN = "1050-3390", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Millstein:2003:RMB, author = "Todd Millstein and Mark Reay and Craig Chambers", title = "Relaxed {MultiJava}: balancing extensibility and modular typechecking", journal = j-SIGPLAN, volume = "38", number = "11", pages = "224--240", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Mitchell:2003:LAL, author = "N. Mitchell and G. Sevitsky", title = "{LeakBot}: An Automated and Lightweight Tool for Diagnosing Memory Leaks in Large {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2743", pages = "351--377", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Moore:2003:PTA, author = "J. S. Moore", title = "Proving Theorems about {Java} and the {JVM} with {ACL2}", journal = "NATO Science Series Sub Series III Computer and Systems Sciences", volume = "191", publisher = pub-IOS, address = pub-IOS:adr, pages = "227--290", year = "2003", CODEN = "????", ISSN = "1387-6694", bibdate = "Tue Sep 16 06:05:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Moore:2003:SHS, author = "R. Moore", title = "Sun hasn't set yet on {Java} applets", journal = "Application Development Trends", volume = "10", number = "1", publisher = "Microsoft Corporation", pages = "33--38", year = "2003", CODEN = "ADTRF4", ISSN = "1073-9564", bibdate = "Tue Jan 28 10:12:35 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Moreira:2003:SMA, author = "Jos{\'e} E. Moreira and Samuel P. Midkiff and Manish Gupta", title = "Supporting multidimensional arrays in {Java}", journal = j-CCPE, volume = "15", number = "3--5", pages = "317--340", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.661", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Book{Morelli:2003:JJJ, author = "R. (Ralph) Morelli", title = "{Java}, {Java}, {Java}!: object-oriented problem solving", publisher = pub-PH, address = pub-PH:adr, edition = "Second", pages = "xxx + 862", year = "2003", ISBN = "0-13-033370-0, 0-13-060813-0 (CD-ROM)", ISBN-13 = "978-0-13-033370-4, 978-0-13-060813-0 (CD-ROM)", LCCN = "QA76.64 .M64 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM.", acknowledgement = ack-nhfb, keywords = "computer science textbooks; Java (computer program language); object-oriented programming (computer science)", } @Article{Moreno:2003:FDC, author = "R. A. Moreno and S. S. Furuie", title = "Framework for the development of the clinical image access service using {Java} [5033-55]", journal = j-PROC-SPIE, volume = "5033", publisher = "International Society for Optical Engineering", pages = "432--439", year = "2003", CODEN = "PSISDG", ISSN = "0277-786X (print), 1996-756X (electronic)", ISSN-L = "0277-786X", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the SPIE --- The International Society for Optical Engineering", } @Article{Morgan:2003:BRA, author = "Donald Morgan", title = "Book Review: Ant Book Full of Practical Advice: a review of {{\em Java Development with Ant\/}} by {Eric Hatcher} and {Steve Loughran}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "4", number = "7", year = "2003", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Sat Jan 03 14:59:06 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://dsonline.computer.org/0307/d/bks_b.htm", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Morrisett:2003:AIC, author = "Greg Morrisett", title = "Analysis issues for cyclone", journal = j-SIGSOFT, volume = "28", number = "1", pages = "26--26", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586096", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cyclone [1, 2] is an experimental, type-safe programming language based upon the syntax, semantics, and spirit of C. The primary goal of the language is to provide a type-safe environment that is close enough to C in both appearance and functionality, that systems programmers will find it attractive and useful. The most challenging aspect of the design is capturing the spirit of C without compromising type-safety. In particular, systems programmers expect to have good control over data representations, memory management, and performance. Yet, these features are usually absent from high-level, type-safe languages (e.g., Java). Another challenge is validating a sufficiently wide set of idioms that are in fact type-safe, but which conventional type systems reject. To address these issues, we have used a novel combination of typing features in conjunction with some interesting inference and dataflow techniques. The most novel typing feature is the support for region-based memory management which was summarized in an earlier paper [1]. However, this paper did not discuss the inference techniques we use to validate the regions and effects. In this talk, I will briefly summarize the Cyclone type system and then focus on the analysis issues that arise in its implementation, including (a) kind and type inference, (b) region and effect inference, and (c) dataflow analysis for validating initialization, array subscripts, and linear pointers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Murray:2003:EIJ, author = "K. A. Murray and M. Kolling and N. C. Schaller and J. M. Heines and T. Moore and P. J. Wagner and J. A. Trono", title = "Experiences with {IDEs} and {Java} Teaching: What Works and What Doesn't", journal = j-SIGCSE, volume = "35", number = "3", pages = "215--216", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Nakamura:2003:DJF, author = "N. Nakamura and M. Shimono and K. Ikeda", title = "Development of a {Java} Framework for Rapid, Low-cost Business Systems", journal = "Sei Technical Review", volume = "55", publisher = "Sumitomo Electric Industries Ltd", pages = "50--54", year = "2003", CODEN = "????", ISSN = "1343-4349", bibdate = "Tue Mar 4 09:14:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Nelisse:2003:COB, author = "Arnold Nelisse and Jason Maassen and Thilo Kielmann and Henri E. Bal", title = "{CCJ}: object-based message passing and collective communication in {Java}", journal = j-CCPE, volume = "15", number = "3--5", pages = "341--369", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.664", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Nevison:2003:TOE, author = "C. Nevison and B. Wells", title = "Teaching Objects Early and Design Patterns in {Java} Using Case Studies", journal = j-SIGCSE, volume = "35", number = "3", pages = "94--98", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Nickell:2003:TPJ, author = "E. Nickell and I. Smith", title = "Three Patterns in {Java} Unit Testing", journal = j-LECT-NOTES-COMP-SCI, volume = "2675", pages = "170--179", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Niemeyer:2003:EPA, author = "Glenn Niemeyer and Jeremy Poteet", title = "Extreme programming with {Ant}: building and deploying Java applications with {JSP}, {EJB}, {XSLT}, {XDoclet}, and {JUnit}", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "ix + 444", year = "2003", ISBN = "0-672-32562-4", ISBN-13 = "978-0-672-32562-5", LCCN = "QA76.76.D47 N54 2003", bibdate = "Sat Jan 10 12:49:35 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{NiewiadomskaSzynkiewicz:2003:AJB, author = "E. NiewiadomskaSzynkiewicz and M. Zmuda and K. Malinowski", title = "Application of a {Java}-based framework to parallel simulation of large-scale systems", journal = "International Journal of Applied Mathematics and Computer Science", volume = "13", number = "4", pages = "537--548", year = "2003", CODEN = "????", ISSN = "1641-876X", bibdate = "Wed Jan 21 08:32:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Nikishkov:2003:CCJ, author = "G. P. Nikishkov and Y. G. Nikishkov and V. V. Savchenko", title = "Comparison of {C} and {Java} performance in finite element computations", journal = j-COMP-STRUCTURES, volume = "81", number = "24--25", pages = "2401--2408", year = "2003", CODEN = "CMSTCJ", ISSN = "0045-7949 (print), 1879-2243 (electronic)", ISSN-L = "0045-7949", bibdate = "Tue Sep 30 06:17:55 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Structures", } @Article{Nikishkov:2003:GCF, author = "G. P. Nikishkov", title = "Generating contours on {FEM\slash BEM} higher-order surfaces using {Java} {$3$D} textures", journal = j-ADV-ENG-SOFTWARE, volume = "34", number = "8", publisher = "Elsevier Science B.V., Amsterdam.", pages = "469--476", year = "2003", CODEN = "AESODT", ISSN = "0965-9978 (print), 0141-1195 (electronic)", ISSN-L = "0965-9978", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Advances in Engineering Software (1978)", journal-URL = "http://www.sciencedirect.com/science/journal/01411195", } @Article{Nilsen:2003:IDI, author = "K. Nilsen and A. Klein", title = "Issues in the Design and Implementation of Efficient Interfaces between Hard and Soft Real-Time {Java} Components", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "451--465", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Nipkow:2003:JBV, author = "Tobias Nipkow", title = "{Java} Bytecode Verification", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "233--233", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025086804452", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/accesspage/article/10.1023/A%3A1025086804452", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Nisley:2003:ELH, author = "E. Nisley", title = "{Ed} looks at the history of cryptography and examines what it means for embedded systems developers programming in {Java} today", journal = j-DDJ, volume = "28", number = "11", pages = "73--75", year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Nurvitadhi:2003:DCC, author = "E. Nurvitadhi and W. W. Leung and C. Cook", title = "Do Class Comments Aid {Java} Program Understanding?", journal = j-FRONTIERS-EDU-CONF, volume = "1", number = "??", pages = "T3C-13--T3C-17", year = "2003", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Nystrom:2003:PEC, author = "N. Nystrom and M. R. Clarkson and A. C. Myers", title = "{Polyglot}: An Extensible Compiler Framework for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2622", pages = "138--152", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Oliveira:2003:JMT, author = "Jauvane C. de Oliveira and Mojtaba Hosseini and Shervin Shirmohammadi and Fran{\c{c}}ois Malric and Saeid Nourian and Abdulmotaleb El Saddik and Nicolas D. Georganas", title = "{Java} Multimedia Telecollaboration", journal = j-IEEE-MULTIMEDIA, volume = "10", number = "3", pages = "18--29", month = jul # "--" # sep, year = "2003", CODEN = "IEMUE4", ISSN = "1070-986X (print), 1941-0166 (electronic)", ISSN-L = "1070-986X", bibdate = "Sat Jan 3 12:43:03 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/mu/2003/03/u3018abs.htm; http://csdl.computer.org/dl/mags/mu/2003/03/u3018.htm; http://csdl.computer.org/dl/mags/mu/2003/03/u3018.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Multimedia", } @Article{Omondi:2003:DIJ, author = "A. R. Omondi", title = "Design and Implementation of {Java} Processors", journal = j-LECT-NOTES-COMP-SCI, volume = "2823", pages = "86--96", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Paal:2003:JCD, author = "S. Paal and R. Kammuller and B. Freisleben", title = "{Java} Class Deployment Using Class Collections", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "135--151", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Palacz:2003:JST, author = "K. Palacz and J. Vitek", title = "{Java} Subtype Tests in Real-Time", journal = j-LECT-NOTES-COMP-SCI, volume = "2743", pages = "378--404", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pang:2003:PSR, author = "James C. Pang and Gholamali C. Shoja and Eric G. Manning", title = "Providing soft real-time quality of service guarantees for {Java} threads", journal = j-CCPE, volume = "15", number = "3--5", pages = "521--538", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.663", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Parikh:2003:JMW, author = "A. Parikh and R. Pradhan and S. Jiang", title = "{J2EE} meets {Web} services {J2EE} was tearing up the charts when {Web} services appeared on the scene, and the {Java} community has reacted quickly", journal = "Application Development Trends", volume = "10", number = "10", pages = "45--49", year = "2003", CODEN = "????", ISSN = "1073-9564", bibdate = "Tue Nov 18 10:35:04 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Paterson:2003:TJU, author = "J. H. Paterson and J. Haddow", title = "Teaching {Java}: Using an Object-Oriented Database and the {BlueJ IDE}", journal = j-SIGCSE, volume = "35", number = "3", pages = "273", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Paulson:2003:NBR, author = "Linda Dailey Paulson", title = "News Briefs: Researchers Automate the Digital Animation Process; New Compression Technology Would Improve Online Video Quality; {Sun} Tries to Guide {Mobile Java}; New Search Engines Keep Humming Along", journal = j-COMPUTER, volume = "36", number = "4", pages = "24--26", month = apr, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:31:58 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/04/r4024.htm; http://csdl.computer.org/dl/mags/co/2003/04/r4024.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Book{Payne:2003:PJT, author = "Damon Payne and Ed Lyons", title = "Professional {Java} tools: {Real World Ant}, {JUnit}, {CVS}, {Cactus}, {Bugzilla}, {Maven}, {Jmeter} and {XDoclet}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "450 (est.)", year = "2003", ISBN = "0-7645-4389-X, 1-86100-799-X", ISBN-13 = "978-0-7645-4389-0, 978-1-86100-799-5", LCCN = "????", bibdate = "Sat Jan 10 12:50:54 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Pedersen:2003:JPS, author = "K. S. Pedersen and B. Vinter", title = "{Java PastSet}: a structured distributed shared memory system", journal = "IEE Proceedings Software", volume = "150", number = "2", pages = "147--154", year = "2003", CODEN = "????", ISSN = "1462-5970", bibdate = "Tue May 20 06:23:21 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Pegueroles:2003:ESM, author = "J. Pegueroles and F. RicoNovella", title = "Enabling Secure Multicast Using a New {Java LKH} Rekeying Tool", journal = j-LECT-NOTES-COMP-SCI, volume = "2722", publisher = "Springer-Verlag", pages = "293--294", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pellizzari:2003:CPJ, author = "L. Pellizzari", title = "Cresce la presenza di {Java} nelle applicazioni embedded", journal = j-ELETTRONICA-OGGI, volume = "322", pages = "56--57", year = "2003", CODEN = "ELOGDA", ISSN = "0391-6391", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elettronica Oggi", } @Article{Petitpierre:2003:JTC, author = "C. Petitpierre", title = "{Java} Threads Can Be Very Useful Building Blocks", journal = j-LECT-NOTES-COMP-SCI, volume = "2604", pages = "204", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pinilla:2003:JPI, author = "Ruben Pinilla and Marisa Gil", title = "{JVM}: platform independent vs. performance dependent", journal = j-OPER-SYS-REV, volume = "37", number = "2", pages = "44--56", month = apr, year = "2003", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Sat Aug 26 08:55:43 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Article{Pinilla:2003:UJT, author = "R. Pinilla and M. Gil", title = "{ULT}: a {Java} threads model for platform independent execution", journal = j-OPER-SYS-REV, volume = "37", number = "4", pages = "48--62", year = "2003", CODEN = "OSRED8", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", } @Article{Pipka:2003:TDW, author = "J. U. Pipka", title = "Test-Driven {Web} Application Development in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "378--393", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pont:2003:CCL, author = "Mick Pont", title = "Calling {C} Library Routines from {Java}", journal = j-DDJ, volume = "28", number = "7", pages = "28, 32, 34--36, 38", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/c_java.txt; http://www.ddj.com/ftp/2003/2003_07/c_java.zip", abstract = "Here's a technique for calling C library routines directly from Java, saving you the trouble of rewriting code in Java while gaining portability via Java Virtual Machines. Additional resources include c\_java.txt (listings) and c\_java.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Prasad:2003:OSJ, author = "G. Prasad", title = "{Open Source Java}: {Fortune 500} Systems at Two-Guys-in-a-Garage Prices", journal = "Cutter IT Journal", volume = "16", number = "5", pages = "10--15", year = "2003", CODEN = "????", ISSN = "1522-7383", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Prechelt:2003:SLG, author = "L. Prechelt", title = "Are Scripting Languages Any Good? {A} Validation of {Perl}, {Python}, {Rexx}, and {Tcl} against {C}, {C++}, and {Java}", journal = "Advances in Computers", volume = "57", publisher = "Academic Press, Inc.", pages = "207--271", year = "2003", CODEN = "????", ISSN = "0065-2458", bibdate = "Tue Aug 5 06:56:44 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Pugh:2003:MJH, author = "W. Pugh and J. Spacco", title = "{MP Java}: High-Performance Message Passing in {Java} Using {Java.nio}", journal = j-LECT-NOTES-COMP-SCI, volume = "2958", pages = "323--339", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Pugla:2003:JPD, author = "S. Pugla and S. Chawla", title = "A {JAVA} program for designing synchronously tuned extended cavity diode laser in {Littrow} configuration", journal = "Indian Journal of Pure and Applied Physics", volume = "41", number = "11", pages = "879--883", year = "2003", CODEN = "????", ISSN = "0019-5596", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Qian:2003:ARB, author = "Feng Qian and Laurie Hendren", title = "An Adaptive, Region-based Allocator for {Java}", journal = j-SIGPLAN, volume = "38", number = "2s", pages = "233--244", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Quigley:2003:PLJ, author = "C. L. Quigley", title = "A Programming Logic for {Java} Bytecode Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2758", pages = "41--54", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rajaravivarma:2003:WIO, author = "R. Rajaravivarma and I. Pevac", title = "When to Introduce Objects in Teaching {Java}", journal = "Southeastern Symposium on System Theory", volume = "35", number = "??", pages = "437--440", year = "2003", CODEN = "????", ISSN = "0094-2898", bibdate = "Tue Jun 10 06:49:26 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rana:2003:WJP, author = "Rana", title = "{Wood}: {Java} programming for spatial sciences", journal = "Environment and Planning B", volume = "30", number = "3", publisher = "Pion Ltd", pages = "478", year = "2003", CODEN = "????", ISSN = "0265-8135", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rapaport:2003:TPJ, author = "L. Rapaport", title = "Theory and Practice: The {Java} Content {API}", journal = "Transform Magazine", volume = "12", number = "1", pages = "48", year = "2003", CODEN = "????", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rasala:2003:EOV, author = "Richard Rasala", title = "Embryonic object versus mature object: object-oriented style and pedagogical theme", journal = j-SIGCSE, volume = "35", number = "3", pages = "89--93", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961538", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Traditional approaches to object-oriented style emphasize classes with a basic set of constructors and a minimal set of methods that when combined permit the full potential of the instance objects to be realized. This object-oriented style is probably modeled on the style used in mathematics and logic to develop a system based on a minimal set of axioms and operations. The consequences of this style both in practice and in pedagogy are that objects enter into existence in an embryonic state and must be nurtured to maturity by a sequence of method calls that tweak behavior and/or add data. Although this minimalist approach is useful in the first stages of teaching objects and in exploratory design, we suggest that most designs should evolve towards building classes with a rich set of constructors and methods so that the instance objects may be born mature, that is, ready to use in the program without further tweaking. In particular, we believe that if students are taught to design in this manner, then they will be more effective both as students and as computing professionals. The ideas in this article have developed from our experience in designing the Java Power Tools (JPT) and in applying these tools to build many labs and demo programs. We found that using the traditional minimalist design approach hindered our ability to rapidly develop interesting applications. Gradually, we evolved both the tools and the examples to be far richer and have found that our development time has been dramatically reduced. We believe that those who teach objects may be interested in these principles even if they choose to work with entirely different tools and examples.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rauch:2003:FJT, author = "N. Rauch and B. Wolff", title = "Formalizing {Java}'s Two's-Complement Integral Type in {Isabelle\slash HOL}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "80", number = "", pages = "1--18", year = "2003", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Book{Reese:2003:JDB, author = "George Reese", title = "{Java} database best practices", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 267", year = "2003", ISBN = "0-596-00522-9", ISBN-13 = "978-0-596-00522-1", LCCN = "QA76.73 .J38 R445 2003", bibdate = "Mon Apr 18 15:07:28 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005221", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Relational databases; Database design", } @Article{Reiss:2003:JVJ, author = "S. P. Reiss", title = "{JIVE}: Visualizing {Java} in Action-Demonstration Description", journal = "International Conference on Software Engineering", volume = "25", number = "??", pages = "820--821", year = "2003", CODEN = "????", ISSN = "0270-5257", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Requet:2003:BME, author = "Antoine Requet", title = "A {B} model for ensuring soundness of a large subset of the {Java Card} virtual machine", journal = j-SCI-COMPUT-PROGRAM, volume = "46", number = "3", pages = "283--306", month = mar, year = "2003", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Sun Jan 11 10:42:01 MST 2004", bibsource = "http://www.elsevier.com/locate/issn/01676423; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Riley:2003:HPJ, author = "Christopher J. Riley and Siddhartha Chatterjee and Rupak Biswas", title = "High-performance {Java} codes for computational fluid dynamics", journal = j-CCPE, volume = "15", number = "3--5", pages = "395--415", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.656", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Book{Riley:2003:OJI, author = "David D. Riley", title = "The object of {Java}: introduction to {Java} using software engineering principles", publisher = pub-AW, address = pub-AW:adr, pages = "xxviii + 722", year = "2003", ISBN = "0-321-12173-2 (paperback)", ISBN-13 = "978-0-321-12173-8 (paperback)", LCCN = "QA76.73.J38 R54 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "computer software -- development; Java (computer program language)", } @Article{Robbins:2003:URL, author = "Steven Robbins", title = "Using remote logging for teaching concurrency", journal = j-SIGCSE, volume = "35", number = "1", pages = "177--181", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.611963", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Students often have difficulty visualizing, understanding and debugging concurrent programs. Programming assignments involving concurrency are also difficult to grade. The output alone is not sufficient because the print statements from cooperating threads or processes can interfere with each other and garble the results. The remote logging tool described here allows multiple processes or threads to atomically log messages to a local or remote host. Different views of the messages are available in real time through a graphical user interface (GUI). The tool consists of two parts, a library for adding logging commands to a user program and a GUI for presenting different views of the logged messages. A separate logging library is needed for each programming language (e.g., C, C++, Java), but a single GUI works with all of these. A C logging library and a general GUI are available on the web.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rodriguez:2003:DSM, author = "J. I. Rodriguez and J. M. Jimenez and F. J. Funes and J. GarciadeJalon", title = "Dynamic Simulation of Multi-Body Systems on {Internet} Using {CORBA}, {Java} and {XML}", journal = "Multibody System Dynamics", volume = "10", number = "2", pages = "177--199", year = "2003", CODEN = "????", ISSN = "1384-5640", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rogatkin:2003:JNI, author = "D. Rogatkin", title = "{JAVA NIO} \& the {iTunes} Database", journal = j-DDJ, volume = "28", number = "12", pages = "36--47", year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Nov 18 10:35:04 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Rojiani:2003:WBJ, author = "Rojiani and Kim and Kapania", title = "{Web}-Based {Java} Applets for Teaching Engineering Mechanics", journal = j-COMP-EDU-J, volume = "13", number = "4", pages = "59--67", year = "2003", CODEN = "CEJOE7", ISSN = "1069-3769", bibdate = "Mon Dec 15 12:30:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers in education journal", } @Article{Rosa:2003:SPC, author = "L. S. Rosa and F. R. Wagner and L. Carro and A. S. Carissimi and A. I. Reis", title = "Scheduling Policy Costs on a {JAVA} Microcontroller", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "520--533", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rose:2003:LBV, author = "Eva Rose", title = "Lightweight Bytecode Verification", journal = j-J-AUTOM-REASON, volume = "31", number = "3--4", pages = "303--334", month = nov, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/B:JARS.0000021015.15794.82", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:23 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/B%3AJARS.0000021015.15794.82", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Rountev:2003:FCA, author = "A. Rountev and A. Milanova and B. G. Ryder", title = "Fragment Class Analysis for Testing of Polymorphism in {Java} Software", journal = "International Conference on Software Engineering", volume = "25", number = "??", pages = "210--220", year = "2003", CODEN = "????", ISSN = "0270-5257", bibdate = "Tue Jun 24 05:41:28 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rudys:2003:EJR, author = "A. Rudys and D. S. Wallach", title = "Enforcing {Java} Run-Time Properties Using Bytecode Rewriting", journal = j-LECT-NOTES-COMP-SCI, volume = "2609", pages = "185--200", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rui:2003:CMW, author = "X. Rui and C. Yang and P. Dong and Q. Cheng and Y. Bai", title = "Coal Mine {WebGIS} Developing With {Java}", journal = "International Geoscience and Remote Sensing Symposium", volume = "4", pages = "IV:2659--IV:2661", year = "2003", CODEN = "????", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Ryan:2003:MDC, author = "C. Ryan and S. Perry", title = "{MobJeX}: a Declaratively Configurable {Java} Based Framework for Resource Aware Object Mobility", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "11--13", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sage:2003:TIP, author = "D. Sage and M. Unser", title = "Teaching Image-Processing Programming in {Java}", journal = j-IEEE-SIGNAL-PROCESS-MAG, volume = "20", number = "6", pages = "43--52", year = "2003", CODEN = "ISPRE6", ISSN = "1053-5888 (print), 1558-0792 (electronic)", ISSN-L = "1053-5888", bibdate = "Wed Jan 21 08:32:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Signal Processing Magazine", } @Article{Saiedian:2003:CEG, author = "H. Saiedian and S. Hill", title = "A comparative evaluation of generic programming in {Java} and {C++}", journal = j-SPE, volume = "33", number = "2", pages = "121--142", year = "2003", CODEN = "SPEXBL", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", } @Article{Sakabe:2003:JOT, author = "Y. Sakabe and M. Soshi and A. Miyaji", title = "{Java} Obfuscation with a Theoretical Basis for Building Secure Mobile Agents", journal = j-LECT-NOTES-COMP-SCI, volume = "2828", pages = "89--103", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sammapun:2003:FJM, author = "U. Sammapun and R. Sharykin and M. DeLap and M. Kim and S. Zdancewic", title = "Formalizing {Java-MaC}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "89", number = "2", pages = "1--20", year = "2003", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Sanden:2003:RTP, author = "B. Sanden", title = "Real-time programming safety in {Java} and {Ada}", journal = j-SIGADA-LETTERS, volume = "23", number = "2", pages = "32--46", year = "2003", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Sanders:2003:JTI, author = "Dean Sanders and Brian Dorn", title = "{Jeroo}: a tool for introducing object-oriented programming", journal = j-SIGCSE, volume = "35", number = "1", pages = "201--204", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.611968", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Jeroo is a tool that has been developed to help students in beginning programming courses learn the semantics of fundamental control structures, learn the basic notions of using objects to solve problems, and learn to write methods that support a functional decomposition of the task. Jeroo is similar to Karel the Robot and its descendants, but has a narrower scope than Karel's descendants and has a syntax that provides a smoother transition to either Java or C++. Jeroo has been class tested at Northwest Missouri State University, and has proven to be an effective tool for working with students in a beginning programming class. Jeroo and user documentation are available at http://www.nwmissouri.edu/~sanders/Jeroo/Jeroo.html.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Saraswat:2003:JIT, author = "V. Saraswat and R. Jagadeesan and V. Gupta", title = "\pkg{jcc}: Integrating Timed Default Concurrent Constraint Programming into {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2902", pages = "156--170", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Dec 31 11:17:32 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sarra:2003:SSP, author = "Scott A. Sarra", title = "The spectral signal processing suite", journal = j-TOMS, volume = "29", number = "2", pages = "195--217", month = jun, year = "2003", CODEN = "ACMSCU", DOI = "https://doi.org/10.1145/779359.779364", ISSN = "0098-3500 (print), 1557-7295 (electronic)", ISSN-L = "0098-3500", bibdate = "Thu Aug 7 13:56:17 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toms/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "A software suite written in the Java programming language for the postprocessing of Chebyshev approximations to discontinuous functions is presented. It is demonstrated how to use the package to remove the effects of the Gibbs--Wilbraham phenomenon from Chebyshev approximations of discontinuous functions. Additionally, the package is used to postprocess Chebyshev collocation and Chebyshev super spectral viscosity approximations of hyperbolic partial differential equations. The postprocessing method is the Gegenbauer reconstruction procedure. The Spectral Signal Processing Suite is the first publicly available package that implements the procedure. State-of-the-art techniques are used to implement the algorithms with efficiency while reducing round-off error.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Mathematical Software", journal-URL = "http://portal.acm.org/toc.cfm?idx=J782", } @Article{Schilling:2003:SHM, author = "Jonathan L. Schilling", title = "The Simplest Heuristics May Be the Best in {Java JIT} Compilers", journal = j-SIGPLAN, volume = "38", number = "2", pages = "36--46", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Schmid:2003:UEJ, author = "H. A. Schmid", title = "On the Use of {Enterprise Java Beans 2.0} Local Interfaces", journal = j-LECT-NOTES-COMP-SCI, volume = "2596", pages = "144--156", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed May 28 05:39:24 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Schoeberl:2003:JJO, author = "M. Schoeberl", title = "{JOP}: a {Java} Optimized Processor", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "346--359", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Schultz:2003:APS, author = "Ulrik P. Schultz and Julia L. Lawall and Charles Consel", title = "Automatic program specialization for {Java}", journal = j-TOPLAS, volume = "25", number = "4", pages = "452--499", month = jul, year = "2003", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Aug 5 07:03:33 MDT 2003", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Schultz:2003:CJL, author = "Ulrik Pagh Schultz and Kim Burgaard and Flemming Gram Christensen and J{\o}rgen Lindskov Knudsen", title = "Compiling {Java} for Low-End Embedded Systems", journal = j-SIGPLAN, volume = "38", number = "7", pages = "42--50", month = jul, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Scott:2003:TGI, author = "K. Scott", title = "Teaching Graphical Interface Programming in {Java} with the {Game of Wari}", journal = j-SIGCSE, volume = "35", number = "3", pages = "254", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Sedgewick:2003:AJ, author = "Robert Sedgewick", title = "Algorithms in {Java}", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "737", year = "2003", ISBN = "0-201-36120-5", ISBN-13 = "978-0-201-36120-9", LCCN = "QA76.73.J38 S4 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Parts 1-4.", acknowledgement = ack-nhfb, keywords = "computer algorithms; Java (computer program language)", } @Article{Sellin:2003:MAJ, author = "R. Sellin", title = "{Mobile Attraktivit{\"a}t mit Java-Games}", journal = "Comtec", volume = "81", number = "1", publisher = "Comtec Swisscom", pages = "14--19", year = "2003", CODEN = "????", ISSN = "1420-3715", bibdate = "Tue Feb 11 05:32:25 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{SerraSagrista:2003:JFE, author = "J. SerraSagrista and F. Auli and C. Fernandez and F. Garcia", title = "A {Java} Framework for Evaluating Still Image Coders Applied to Remote Sensing Applications", crossref = "IEEE:2003:LES", volume = "6", pages = "VI:3595--VI:3597", year = "2003", bibdate = "Mon Dec 8 15:22:46 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Setzer:2003:JFP, author = "A. Setzer", title = "{Java} as a Functional Programming Language", journal = j-LECT-NOTES-COMP-SCI, volume = "2646", publisher = "Springer-Verlag", pages = "279--298", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 3 08:07:59 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Seymour:2003:ATF, author = "Keith Seymour and Jack Dongarra", title = "Automatic translation of {Fortran} to {JVM} bytecode", journal = j-CCPE, volume = "15", number = "3--5", pages = "207--222", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.657", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/d/dongarra-jack-j.bib; http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", URL = "http://www.netlib.org/netlib/utk/people/JackDongarra/PAPERS/f2jreport.pdf", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Shaham:2003:EIH, author = "Ran Shaham and Elliot K. Kolodner and Mooly Sagiv", title = "Estimating the Impact of Heap Liveness Information on Space Consumption in {Java}", journal = j-SIGPLAN, volume = "38", number = "2s", pages = "171--182", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Shaylor:2003:JVM, author = "Nik Shaylor and Douglas N. Simon and William R. Bush", title = "A {Java} Virtual Machine Architecture for Very Small Devices", journal = j-SIGPLAN, volume = "38", number = "7", pages = "34--41", month = jul, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Shende:2003:IAT, author = "Sameer Shende and Allen D. Malony", title = "Integration and application of {TAU} in parallel {Java} environments", journal = j-CCPE, volume = "15", number = "3--5", pages = "501--519", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.655", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Sherer:2003:RTS, author = "Matt Sherer", title = "Real-time Signal Analysis and {Real-Time Linux}: {Part 1}", journal = j-DDJ, volume = "28", number = "7", pages = "62--65", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/rtlp1.txt", abstract = "In the first installment of this multipart article, Matt shows how you do hard real-time signal acquisition, controlling it from a Java GUI application. Additional resources include rtlp1.txt (listings).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Shippy:2003:PGT, author = "P. J. Shippy", title = "Porting the {Gnat} Tasking Runtime System to the {Java Virtual Machine}", journal = "Literary Review", volume = "47", number = "2", pages = "119--120", year = "2003", CODEN = "????", ISSN = "0024-4589", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Shirazi:2003:JPT, author = "Jack Shirazi", title = "{Java} performance tuning", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xv + 570", year = "2003", ISBN = "0-596-00377-3", ISBN-13 = "978-0-596-00377-7", LCCN = "QA76.73.J38 S47 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, annote = "Covers Java SDK 1.4. Includes J2EE performance tuning; Efficient and effective tuning strategies", keywords = "Java (computer program language)", } @Article{Shirmohammadi:2003:JJT, author = "S. Shirmohammadi and A. ElSaddik and N. D. Georganas and R. Steinmetz", title = "{JASMINE}: a {Java} Tool for Multimedia Collaboration on the {Internet}", journal = j-MULTIMEDIA-TOOLS-APPLIC, volume = "19", number = "1", pages = "5--28", year = "2003", CODEN = "MTAPFB", ISSN = "1380-7501", ISSN-L = "1380-7501", bibdate = "Tue Dec 17 05:55:18 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Multimedia Tools and Applications", } @Book{Sierra:2003:HFE, author = "Kathy Sierra and Bert Bates", title = "Head first {EJB}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxx + 700", year = "2003", ISBN = "0-596-00571-7", ISBN-13 = "978-0-596-00571-9", LCCN = "QA76.3 .S468 2003", bibdate = "Mon Apr 18 15:07:59 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005719", acknowledgement = ack-nhfb, keywords = "Enterprise JavaBeans (EJB)", remark = "``Passing the Sun certified business component developer exam'' --- cover. ``A brain-friendly study guide'' --- cover.", subject = "Electronic data processing personnel; Certification; Java (Computer program language); JavaBeans", } @Book{Sierra:2003:HFJ, author = "Kathy Sierra and Bert Bates", title = "Head first {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxx + 619", year = "2003", ISBN = "0-596-00465-6", ISBN-13 = "978-0-596-00465-1", LCCN = "QA76.73.J38 S535 2003", bibdate = "Mon Apr 18 15:06:49 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596004651", acknowledgement = ack-nhfb, remark = "``Your brain on Java--a learner's guide'' --- cover.", subject = "Java (Computer program language)", } @Book{Sikora:2003:JPG, author = "Zbigniew M. Sikora", title = "{Java}: practical guide for programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xii + 179", year = "2003", ISBN = "1-55860-909-1", ISBN-13 = "978-1-55860-909-9", LCCN = "QA76.73.J38 S54 2003", bibdate = "Wed Oct 29 06:59:17 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @InProceedings{Sivaram:2003:XJO, author = "A. Sivaram and D. Fan and J. Pryce", booktitle = "International Test Conference", title = "{XML} and {Java} for {Open ATE} Programming Environment", publisher = "????", address = "????", pages = "793--801", year = "2003", CODEN = "????", ISSN = "0743-1686", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Sojka:2003:AP, author = "Petr Sojka", title = "Animations in {PDF}", journal = j-SIGCSE, volume = "35", number = "3", pages = "263--263", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961625", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes a technique to create interactive teaching materials as animations that are stored and distributed in PDF file format. PdfL$^A$T$_E$X with small macropackage, Maple and JavaScript are used and allow the development of interactive animations of high typographical quality that are fine-tuned for on-the-screen reading.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Sojka:2003:ITM, author = "Petr Sojka", title = "Interactive teaching materials in {PDF} using {JavaScript}", journal = j-SIGCSE, volume = "35", number = "3", pages = "275--275", month = sep, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/961290.961640", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:03 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The use of JavaScript language for adding interaction to portable teaching materials of a high typographical quality in PDF file format is described. An extended version of the program T$_E$X called pdfT$_E$X is extremely useful for such purposes. It is shown that applications similar to those done by CGI script on the web can be done in PDF, exploiting the embedded JavaScript engine implementation in PDF viewers.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Spain-McDuffie:2003:JCT, author = "Tina Spain-McDuffie", title = "{JavaScript} concepts and techniques: programming interactive {Web} sites", publisher = "Franklin, Beedle and Associates", address = "Wilsonville, OR, USA", pages = "xxii + 730", year = "2003", ISBN = "1-887902-69-4", ISBN-13 = "978-1-887902-69-4", LCCN = "QA73.73.J39 S73 2003 Computer", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "CD-ROM contains all scripts in accompanying book", acknowledgement = ack-nhfb, keywords = "JavaScript (computer program language)", } @Article{Spanias:2003:AJD, author = "A. Spanias and K. I. U. Ahmed and A. Papandreou Suppappola and M. Zaman", title = "Assessment of the {Java-DSP (J-DSP)} On-Line Laboratory Software", journal = j-FRONTIERS-EDU-CONF, volume = "1", number = "??", pages = "T2E-16--T2E-21", year = "2003", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Book{Spielman:2003:JPG, author = "Sue Spielman", title = "{JSTL}: Practical Guide for {JSP} Programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xix + 229", year = "2003", ISBN = "0-12-656755-7", ISBN-13 = "978-0-12-656755-7", LCCN = "TK5105.8885.J38 S65 2004", bibdate = "Sat Aug 02 08:46:02 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$19.95", series = "Morgan Kaufmann practical guides series", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/els031/2003107479.html", acknowledgement = ack-nhfb, subject = "JavaServer pages; Java (Computer program language); Web sites; Authoring programs; Web site development", } @Book{Spielman:2003:SFP, author = "Sue Spielman", title = "The {Struts Framework}: Practical Guide for {Java} Programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xiv + 137", year = "2003", ISBN = "1-55860-862-1", ISBN-13 = "978-1-55860-862-7", LCCN = "TK5105.8885.S76 S65 2003", bibdate = "Sat Jul 17 07:21:17 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$19.95", acknowledgement = ack-nhfb, } @Article{Srisaan:2003:AMP, author = "W. Srisaan and C. T. D. Lo and J. M. Chang", title = "Active Memory Processor: a Hardware Garbage Collector for Real-Time {Java} Embedded Devices", journal = "IEEE Transactions on Mobile Computing", volume = "2", number = "2", pages = "89--101", year = "2003", CODEN = "????", ISSN = "1536-1233", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Stahl:2003:PAI, author = "R. Stahl and R. Pasko and L. Rijnders and D. Verkest and S. Vernalde and R. Lauwereins and F. Catthoor", title = "Performance Analysis for Identification of (Sub-)Task-Level Parallelism in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2826", pages = "313--328", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Oct 21 05:29:09 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Stark:2003:CBV, author = "Robert F. St{\"a}rk and Joachim Schmid", title = "Completeness of a Bytecode Verifier and a Certifying {Java-to-JVM} Compiler", journal = j-J-AUTOM-REASON, volume = "30", number = "3--4", pages = "323--361", month = may, year = "2003", CODEN = "JAREEW", DOI = "https://doi.org/10.1023/A:1025003423108", ISSN = "0168-7433 (print), 1573-0670 (electronic)", ISSN-L = "0168-7433", bibdate = "Sat Apr 2 10:50:21 MDT 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/jautomreason.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1023/A%3A1025003423108", acknowledgement = ack-nhfb, ajournal = "J. Autom. Reason.", fjournal = "Journal of Automated Reasoning", journal-URL = "http://link.springer.com/journal/10817", } @Article{Stefanovic:2003:OFG, author = "Darko Stefanovi{\'c} and Matthew Hertz and Stephen M. Blackburn and Kathryn S. McKinley and J. Eliot B. Moss", title = "Older-first Garbage Collection in Practice: Evaluation in a {Java} Virtual Machine", journal = j-SIGPLAN, volume = "38", number = "2s", pages = "25--36", month = feb, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu May 15 12:23:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Steinbeck:2003:CDK, author = "C. Steinbeck and Y. Han and S. Kuhn and O. Horlacher and E. Luttmann and E. Willighagen", title = "The {Chemistry Development Kit (CDK)}: An Open-Source {Java} Library for Chemo- and Bioinformatics", journal = "Journal of Chemical Information and Computer Sciences", volume = "43", number = "2", pages = "493--500", year = "2003", CODEN = "????", ISSN = "0095-2338", bibdate = "Thu May 8 07:01:22 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Stevenson:2003:IOE, author = "D. E. Stevenson and A. T. Phillips", title = "Implementing Object Equivalence in {Java} Using the Template Method Design Pattern", journal = j-SIGCSE, volume = "35", number = "1", pages = "278--282", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Strom:2003:UJT, author = "O. Strom and K. Svarstad and E. J. Aas", title = "On the Utilization of {Java} Technology in Embedded Systems", journal = "Design Automation for Embedded Systems", volume = "8", number = "1", pages = "87--106", year = "2003", CODEN = "????", ISSN = "0929-5585", bibdate = "Tue Mar 4 09:14:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Suganuma:2003:RBC, author = "Toshio Suganuma and Toshiaki Yasue and Toshio Nakatani", title = "A region-based compilation technique for a {Java} just-in-time compiler", journal = j-SIGPLAN, volume = "38", number = "5", pages = "312--323", month = may, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Sunkpho:2003:JIF, author = "J. Sunkpho and J. H. Garrett", title = "{Java} Inspection Framework: Developing Field Inspection Support Systems for Civil Systems Inspection", journal = j-COMP-CIVIL-ENG, volume = "17", number = "4", pages = "209--218", year = "2003", CODEN = "JCCEE5", ISSN = "0887-3801", ISSN-L = "0887-3801", bibdate = "Wed Oct 15 08:31:41 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Computing in Civil Engineering", } @Article{Taboada:2003:PME, author = "G. L. Taboada and J. Tourino and R. Doallo", title = "Performance Modeling and Evaluation of {Java} Message-Passing Primitives on a Cluster", journal = j-LECT-NOTES-COMP-SCI, volume = "2840", pages = "29--36", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Oct 29 06:24:07 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Tan:2003:JAC, author = "F. L. Tan and P. S. K. Chua", title = "{Java} Applet on Computation of Thermodynamic Properties of Steam and {R134a} Refrigerant", journal = j-COMPUT-APPL-ENG-EDUC, volume = "11", number = "4", pages = "211--225", year = "2003", CODEN = "CAPEED", ISSN = "1061-3773", ISSN-L = "1061-3773", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Applications in Engineering Education", } @Article{Tatibouet:2003:JCC, author = "B. Tatibouet and A. Requet and J. C. Voisinet and A. Hammad", title = "{Java} Card Code Generation from {B} Specifications", journal = j-LECT-NOTES-COMP-SCI, volume = "2885", pages = "306--318", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 15 12:30:21 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Taveira:2003:ARM, author = "Wendell Figueiredo Taveira and Marco Tulio {de Oliveira Valente} and Mariza Andrade {da Silva Bigonha} and Roberto {da Silva Bigonha}", title = "Asynchronous Remote Method Invocation in {Java}", journal = j-J-UCS, volume = "9", number = "8", pages = "761--??", day = "28", month = aug, year = "2003", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Tue Dec 16 10:06:15 MST 2003", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_9_8/asynchronous_remote_method_invocation", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Article{Thomas:2003:FJJ, author = "V. Thomas and A. McMullen and L. Graba", title = "{FT-Java}: a {Java}-Based Framework for Fault-Tolerant Distributed Software", journal = j-LECT-NOTES-COMP-SCI, volume = "2889", pages = "899--911", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Thomas:2003:OXC, author = "Michael D. Thomas", title = "{Oracle XSQL}: combining {SQL}, {Oracle} text, {XSLT}, and {Java} to publish dynamic {Web} content", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xix + 572", year = "2003", ISBN = "0-471-27120-9 (paper\slash website)", ISBN-13 = "978-0-471-27120-8 (paper\slash website)", LCCN = "QA76.73.S67 T48 2003", bibdate = "Tue Oct 28 09:30:17 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/bios/wiley045/2002014913.html; http://www.loc.gov/catdir/description/wiley038/2002014913.html; http://www.loc.gov/catdir/toc/wiley031/2002014913.html", acknowledgement = ack-nhfb, subject = "SQL (Computer program language); Oracle (Computer file); XSLT (Computer program language); Java (Computer program language); Web sites; Design", } @InProceedings{Tigli:2003:WRA, author = "J. Y. Tigli and D. Cheung and J. Fuchet and G. Joulie and F. Grillon", booktitle = "IEEE International Conference on Systems Man and Cybernetics", title = "{Wcomp}: Rapid Application Development Toolkit for Wearable computer based on {Java}", volume = "5", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "4198--4203", year = "2003", CODEN = "????", ISSN = "1062-922X", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Tikir:2003:RDS, author = "Mustafa M. Tikir and Jeffrey K. Hollingsworth and Guei-Yuan Lueh", title = "Recompilation for debugging support in a {JIT-compiler}", journal = j-SIGSOFT, volume = "28", number = "1", pages = "10--17", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586100", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "A static Java compiler converts Java source code into a verifiably secure and compact architecture-neutral intermediate format, called Java byte codes. The Java byte codes can be either interpreted by a Java Virtual Machine or translated into native code by Java Just-In-Time compilers. Static Java compilers embed debug information in the Java class files to be used by the source level debuggers. However, the debug information is generated for architecture independent byte codes and most of the debug information is valid only when the byte codes are interpreted. Translating byte codes into native instructions puts a limitation on the amount of usable debug information that can be used by source level debuggers. In this paper, we present a new technique to generate valid debug information when Just-In-Time compilers are used. Our approach is based on the dynamic recompilation of Java methods by a fast code generator and lazily generates debug information when it is required. We also present three implementations for field watch support in the Java Virtual Machine Debugger Interface to investigate the runtime overhead and code size growth by our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Timpe:2003:GCJ, author = "R. Timpe", title = "{GPIB} Control With {Java} on {Linux} or {Windows}", journal = "Evaluation Engineering", volume = "42", number = "6", pages = "18--23", year = "2003", CODEN = "????", ISSN = "0014-3316", bibdate = "Wed Jul 9 10:18:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Tip:2003:ELB, author = "F. Tip and P. F. Sweeney and C. Laffra", title = "Extracting Library-based {Java} Applications", journal = j-CACM, volume = "46", number = "8", pages = "35--40", year = "2003", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Aug 27 05:49:07 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Titchkosky:2003:PCD, author = "Lance Titchkosky and Martin Arlitt and Carey Williamson", title = "A performance comparison of dynamic {Web} technologies", journal = j-SIGMETRICS, volume = "31", number = "3", pages = "2--11", month = dec, year = "2003", CODEN = "????", DOI = "https://doi.org/10.1145/974036.974037", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:20:51 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Today, many Web sites dynamically generate responses `on the fly' when user requests are received. In this paper, we experimentally evaluate the impact of three different dynamic content technologies (Perl, PHP, and Java) on Web server performance. We quantify achievable performance first for static content serving, and then for dynamic content generation, considering cases both with and without database access. The results show that the overheads of dynamic content generation reduce the peak request rate supported by a Web server up to a factor of 8, depending on the workload characteristics and the technologies used. In general, our results show that Java server technologies typically outperform both Perl and PHP for dynamic content generation, though performance under overload conditions can be erratic for some implementations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "Dynamic Content Generation; Performance Evaluation; Web Performance; Web Server Benchmarking", } @Book{Topley:2003:JWS, author = "Kim Topley", title = "{Java Web} services in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, pages = "xviii + 642", year = "2003", ISBN = "0-596-00399-4", ISBN-13 = "978-0-596-00399-9", LCCN = "TK5105.88813 .T67 2003", bibdate = "Mon Apr 18 15:06:01 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596003999", acknowledgement = ack-nhfb, remark = "``Covers J2EE 1.4 and JWSDP'' --- cover.", subject = "Web services; Internet programming; Application program interfaces (Computer software); Java (Computer program language)", } @Article{Tremblett:2003:ISS, author = "P. Tremblett", title = "Incorporating server-side {Java} {$2$D} into your {Web} application components is an easy way to deliver dynamic data", journal = j-DDJ, volume = "28", number = "10", pages = "42--49", year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Oct 7 05:32:12 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Trost:2003:JEB, author = "E. Trost and H. Hackl and M. Maurer and Z. Trajanoski", title = "{Java} editor for biological pathways", journal = j-BIOINFORMATICS, volume = "19", number = "6", pages = "786--787", year = "2003", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Thu May 8 07:01:22 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Book{Tyagi:2003:CJD, author = "Sameer Tyagi and Michael Vorburger and Keiron McCammon and Heiko Bobzin", title = "Core {Java} Data Objects", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxx + 491", year = "2003", ISBN = "0-13-140731-7", ISBN-13 = "978-0-13-140731-2", LCCN = "QA76.73.J38 C663 2004", bibdate = "Tue Nov 04 18:17:59 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", series = "The Sun Microsystems Press Java series", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Object-oriented programming (Computer science); Application program interfaces (Computer software)", } @TechReport{USGS:2003:JPU, author = "{United States Geological Survey}", title = "{Java} programs for using {Newmark}'s method and simplified decoupled analysis to model slope performance during earthquakes", type = "Open File Report", number = "03-005", institution = "U.S. Geological Survey", address = "Denver, CO, USA", year = "2003", LCCN = "I 19.76:03-005 Maps CD", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Includes CD-ROM. Shipping List number 2003-0014-E. Shipping List Date: 20-Mar-2003", acknowledgement = ack-nhfb, } @Article{VanderHeyden:2003:CPJ, author = "W. B. VanderHeyden and E. D. Dendy and N. T. Padial-Collins", title = "{CartaBlanca} --- a pure-{Java}, component-based systems simulation tool for coupled nonlinear physics on unstructured grids --- an update", journal = j-CCPE, volume = "15", number = "3--5", pages = "431--458", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.662", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{vanReeuwijk:2003:SSE, author = "C. van Reeuwijk and F. Kuijlman and H. J. Sips", title = "{Spar}: a set of extensions to {Java} for scientific computation", journal = j-CCPE, volume = "15", number = "3--5", pages = "277--297", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.659", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Vaughan-Nichols:2003:TNB, author = "Steven J. Vaughan-Nichols", title = "Technology News: The Battle over the Universal {Java IDE}", journal = j-COMPUTER, volume = "36", number = "4", pages = "21--23", month = apr, year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Dec 12 19:53:57 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/co/2003/04/r4021.htm; http://csdl.computer.org/dl/mags/co/2003/04/r4021.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Vaughan:2003:IME, author = "J. Vaughan", title = "Improvements mark evolving {Java} app servers", journal = "Application Development Trends", volume = "10", number = "2", publisher = "Microsoft Corporation", pages = "31--34", year = "2003", CODEN = "ADTRF4", ISSN = "1073-9564", bibdate = "Tue Mar 11 05:23:20 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{VaughanNichols:2003:BUJ, author = "S. J. VaughanNichols", title = "The Battle over the Universal {Java IDE}", journal = j-COMPUTER, volume = "36", number = "4", pages = "21--23", year = "2003", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Veldema:2003:RTO, author = "R. Veldema and R. F. H. Hofman and R. A. F. Bhoedjang and H. E. Bal", title = "Run-time optimizations for a {Java DSM} implementation", journal = j-CCPE, volume = "15", number = "3--5", pages = "299--316", month = mar # "\slash " # apr, year = "2003", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.660", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jan 13 09:28:08 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Feb 2003", } @Article{Vieregger:2003:PRP, author = "C. Vieregger", title = "Product Roundup: a Peck of {Java} Portlets", journal = "Software Development", volume = "11", number = "3", pages = "27--29", year = "2003", CODEN = "????", ISSN = "1070-8588", bibdate = "Tue Feb 25 06:39:00 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Viroli:2003:TPA, author = "M. Viroli", title = "A type-passing approach for the implementation of parametric methods in {Java}", journal = j-COMP-J, volume = "46", number = "3", pages = "263--294", year = "2003", CODEN = "CMPJA6", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Tue May 20 06:23:21 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @InProceedings{Vogels:2003:HNC, author = "Werner Vogels", title = "{HPC.NET} --- are {CLI}-based Virtual Machines Suitable for High Performance Computing?", crossref = "ACM:2003:SII", pages = "??--??", year = "2003", bibdate = "Wed Nov 26 07:34:20 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc-conference.org/sc2003/inter_cal/inter_cal_detail.php?eventid=10710#2; http://www.sc-conference.org/sc2003/paperpdfs/pap251.pdf", abstract = "The Common Language Infrastructure is a new, standardized virtual machine that is likely to become popular on several platforms. In this paper we review whether this technology has any future in the high-performance computing community, for example by targeting the same application space as the Java-Grande Forum. We review the technology by benchmarking three implementations of the CLI and compare those with the results on Java virtual machines.", acknowledgement = ack-nhfb, } @Article{Vrba:2003:JBA, author = "P. Vrba", title = "{Java}-Based Agent Platform Evaluation", journal = j-LECT-NOTES-COMP-SCI, volume = "2744", pages = "47--58", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Sep 24 05:51:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Walnes:2003:JOS, author = "Joe Walnes and Ara Abrahamian and Mike Cannon-Brookes and Patrick A. Lightbody", title = "{Java} Open source programming: with {XDoclet}, {JUnit}, {WebWork}, {Hibernate} ({Java Open Source Library})", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xx + 459", year = "2003", ISBN = "0-471-46362-0", ISBN-13 = "978-0-471-46362-7", LCCN = "QA76.73.J38 J3785 2003", bibdate = "Sat Apr 03 07:31:26 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, tableofcontents = "http://www.loc.gov/catdir/toc/ecip048/2003020242.html", } @Article{Walsh:2003:CJG, author = "A. E. Walsh", title = "Creating {Java Grid} Services", journal = j-DDJ, volume = "28", number = "9", pages = "18--23", year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Nov 26 06:39:28 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Walsh:2003:JP, author = "Aaron E. Walsh", title = "{JavaServer Pages 2.0}", journal = j-DDJ, volume = "28", number = "7", pages = "48, 50, 52--57", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/jsp20.zip", abstract = "From the Expression Language to the JSP 2.0 API, new features in J2EE 1.4 change how you create custom JavaServer Pages. Additional resources include jsp20.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Walsh:2003:JWS, author = "Aaron E. Walsh", title = "{J2Ee 1.4 Web} Services", journal = j-DDJ, volume = "28", number = "4", pages = "34, 36, 38, 39", month = apr, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:22 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0304/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://www.ddj.com/documents/s=7827/ddj0304d/", abstract = "Version 1.4 of Sun's Java 2 Platform Enterprise Edition (J2EE) is just about ready for release and its support for Web Services is one thing that sets it apart from previous version.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wang:2003:BAD, author = "M. Wang", title = "{E}-Business Application Development With {Java} Technology and {Oracle}: The {Fortune Invest Inc.} Case", journal = "Journal of Information Systems Education", volume = "14", number = "3", pages = "293--300", year = "2003", CODEN = "????", ISSN = "1055-3096", bibdate = "Wed Nov 26 06:39:28 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wang:2003:DIE, author = "J. Wang and T. Lin and J. Wang and G. Han and H. Zhao", title = "Design and implementation of an embedded real-time {Java OS}", journal = "Journal --- China Institute of Communications", volume = "24", number = "8", pages = "78--87", year = "2003", CODEN = "????", ISSN = "1000-436X", bibdate = "Tue Sep 16 06:05:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wang:2003:IJM, author = "L. Wang and R. Sams and M. Verner and F. Xi", title = "Integrating {Java} {3D} model and sensor data for remote monitoring and control", journal = "Robotics and Computer Integrated Manufacturing", volume = "19", number = "1--2", pages = "13--19", year = "2003", CODEN = "????", ISSN = "0736-5845", bibdate = "Tue Mar 25 05:58:54 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Wang:2003:JOO, author = "Paul S. Wang", title = "{Java} with object-oriented programming", publisher = "Thomson/Brooks Cole", address = "Pacific Grove, CA, USA", edition = "Second", pages = "xiv + 575", year = "2003", ISBN = "0-534-39276-8", ISBN-13 = "978-0-534-39276-5", LCCN = "QA76.73.J38 W364 2003", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language); object-oriented programming (computer science)", } @Article{Wang:2003:MLJ, author = "W. Wang", title = "On memory leaks in {Java} programs", journal = "Journal --- Zhejiang University of Technology", volume = "31", number = "4", pages = "405--409", year = "2003", CODEN = "????", ISSN = "1006-4303", bibdate = "Wed Oct 15 08:31:41 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wawersich:2003:SAJ, author = "C. Wawersich and M. Felser and M. Golm and J. Kleinoder", title = "The Security Architecture of the {Java} Operating System {JX} --- {A} Security Architecture for Distributed Parallel Computing", journal = j-LECT-NOTES-COMP-SCI, volume = "2834", pages = "85--95", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Oct 15 08:31:41 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Wayne:2003:CNK, author = "R. Wayne", title = "Curiosity Never Killed the Programmer: {PE Explorer} helps you delve into the nitty-gritty inside {Windows} files, {Browsersoft}'s {eQ! Foundation} provides a basis to build your {Java} on, and {Red Gate}'s {ANTS} profiler offers some much-needed common sense aimed at {.NET}", journal = "Software Development", volume = "11", number = "5", pages = "17--20", year = "2003", CODEN = "????", ISSN = "1070-8588", bibdate = "Thu May 8 07:01:22 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wellings:2003:EEP, author = "A. J. Wellings and P. Puschner", title = "Evaluating the Expressive Power of the Real-Time Specification for {Java}", journal = j-REAL-TIME-SYST, volume = "24", number = "3", pages = "319--359", year = "2003", CODEN = "RESYE9", ISSN = "0922-6443", ISSN-L = "0922-6443", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Real-Time Systems", } @Article{Wellings:2003:JAR, author = "A. J. Wellings", title = "Is {Java} Augmented with the {RTSJ} a Better Real-Time \ldots{} Technology than {Ada 95}?", journal = j-SIGADA-LETTERS, volume = "23", number = "4", pages = "16--21", year = "2003", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Feb 2 15:02:19 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Weyns:2003:SDE, author = "D. Weyns and E. Truyen and P. Verbaeten", title = "Serialization of Distributed Execution-State in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2591", pages = "41--61", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 1 06:09:06 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Whitbread:2003:DJS, author = "Martin Whitbread", title = "{DCT Java} solution for wireless devices and {Renesas}' latest 32-bit {RISC} processor", journal = "Embedded System Engineering", volume = "11", number = "6", publisher = "Electronic Design Automation Ltd.", pages = "36--37", year = "2003", CODEN = "????", ISSN = "0969-8825", bibdate = "Wed Oct 15 08:31:41 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{White:2003:UTL, author = "Tom White", title = "Using Thread-Local Variables In {Java}", journal = j-DDJ, volume = "28", number = "7", pages = "42, 44--46", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/ftp/2003/2003_07/thread.txt; http://www.ddj.com/ftp/2003/2003_07/thread.zip", abstract = "Java's ThreadLocal class provides a powerful, easy-to-use way to write efficient code that is safe for multithreaded access. Additional resources include thread.txt (listings) and thread.zip (source code).", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wick:2003:OOR, author = "M. R. Wick", title = "An Object-Oriented Refactoring of {Huffman} Encoding using the {Java} Collections Framework", journal = j-SIGCSE, volume = "35", number = "1", pages = "283--287", year = "2003", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Wilson:2003:PB, author = "Gregory V. Wilson", title = "Programmer's Bookshelf", journal = j-DDJ, volume = "28", number = "7", pages = "75--75", month = jul, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:24 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0307/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/", abstract = "Big and little, thick and thin: Greg looks at all kinds of books this month, including Processing XML with Java, Practical Debugging in C++, How to Break Software, Hacker's Delight, Bioinformatics Computing, and Bioinformatics for Dummies.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2003:PBF, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: Facts, Fallacies, and Numeric Computing", journal = j-DDJ, volume = "28", number = "6", pages = "76--76", month = jun, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:23 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0306/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=8213/ddj0306j/", abstract = "The books Greg examines this month include Debugging Applications for Microsoft .NET and Microsoft Windows, by John Robbins; Facts and Fallacies of Software Engineering, by Robert L. Glass; Java Number Cruncher: The Java Programmer's Guide to Numerical Computing, by Ronald Mak; and Ant: The Definitive Guide, by Jesse Tilly and Eric M. Burke.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2003:PBO, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: The Observation of Trifles", journal = j-DDJ, volume = "28", number = "1", pages = "73--73", month = jan, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:20 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0301/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7758/ddj0301j/", abstract = "Greg examines Java and XML Data Binding, by Brett McLaughlin; Design Patterns Java Workbook, by Steven John Metsker; and JSP Examples and Best Practices, by Andrew Patzer.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wilson:2003:PBP, author = "Gregory V. Wilson", title = "Programmer's Bookshelf: {Parkinson}'s Other Law", journal = j-DDJ, volume = "28", number = "4", pages = "83--83", month = apr, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:22 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0304/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7827/ddj0304k/", abstract = "Gregory V. Wilson reviews Creating Applications With Mozilla, Java NIO, Performance Analysis For Java Web Sites, and Herding Cats: A Primer for Programmers Who Lead Programmers", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Wolle:2003:KAS, author = "B. Wolle", title = "Kommentar zum Artikel {``Statische Analyse von Java-Anwendungen\ldots{}''}", journal = j-WIRTSCHAFTSINFORMATIK, volume = "45", number = "6", pages = "663", year = "2003", CODEN = "WIINE9", ISSN = "0937-6429", ISSN-L = "0937-6429", bibdate = "Wed Jan 21 08:32:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Wirtschaftsinformatik", } @Article{Wolle:2003:SAJ, author = "B. Wolle", title = "{Statische Analyse von Java --- Anwendungen Eignen sich Lines-of-Code-Metrik und Halstead-Lange? Softwarewartung, Grossenmasse, LOC-Metrik, Halstead-Metrik, Java-Systeme}. ({German}) [{Static} Analysis of {Java} --- Are lines-of-code metrics and {Halstead} lengths suitable? Software maintenance, large mass, {LOC} Metrik, {Halstead} Metric, {Java} systems]", journal = j-WIRTSCHAFTSINFORMATIK, volume = "45", number = "1", pages = "29--40", year = "2003", CODEN = "WIINE9", ISSN = "0937-6429", ISSN-L = "0937-6429", bibdate = "Tue Mar 11 05:23:20 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Wirtschaftsinformatik", language = "German", } @Article{Wong:2003:JPC, author = "W. Wong", title = "{Java} Processor Chip Stacks {JVM}, {SRAM}, {Flash}", journal = j-ELECTRONIC-DESIGN, volume = "51", number = "6", pages = "32", year = "2003", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue Apr 15 07:54:18 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Wong:2003:SJ, author = "W. Wong", title = "Silent {Java}", journal = j-ELECTRONIC-DESIGN, volume = "51", number = "8", pages = "61", year = "2003", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue May 13 05:12:53 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Woods:2003:MJB, author = "R. P. Woods", title = "{Multitracer}: a {Java}-based tool for anatomic delineation of grayscale volumetric images", journal = j-NEUROIMAGE, volume = "19", number = "4", pages = "1829--1834", year = "2003", CODEN = "NEIMEF", ISSN = "1053-8119", ISSN-L = "1053-8119", bibdate = "Tue Sep 9 06:28:14 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "NeuroImage", } @Article{Wright:2003:JES, author = "William Wright", title = "{J2Me} and Embedded Systems", journal = j-DDJ, volume = "28", number = "3", pages = "54, 56, 58", month = mar, year = "2003", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Jun 12 05:46:22 MDT 2003", bibsource = "http://www.ddj.com/articles/2003/0303/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.ddj.com/documents/s=7826/ddj0303g/", abstract = "The Java 2 Micro Edition is a development tool for environments where resources don't support the full Java 2 Standard Edition. William uses it with aJile Systems' aJ-100 processor to build a network security device.", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Xu:2003:MEJ, author = "Baomin Xu and Weimin Lian and Qiang Gao", title = "Migration of enterprise {JavaBeans} with {ProActive Interposition Objects}", journal = j-SIGPLAN, volume = "38", number = "8", pages = "22--28", month = aug, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sat Oct 11 12:45:05 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Xu:2003:MLP, author = "Y. Xu and G. Zhang", title = "{MPLS} Loop Prevention Mechanism and its {Java} Realization", journal = j-MINI-MICRO-SYSTEMS, volume = "24", number = "4", publisher = "Gai-Kan Biajibu", pages = "706--708", year = "2003", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Yang:2003:UPC, author = "D. R. Yang and J. H. Lee", title = "Undergraduate process control education using {Java} applet modules", journal = j-PROC-AM-CONTROL-CONF, volume = "1", number = "??", pages = "694--699", year = "2003", CODEN = "PRACEO", ISSN = "0743-1619", bibdate = "Tue Nov 4 05:29:15 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the American Control Conference", } @Article{Yang:2003:WPT, author = "C. D. Yang", title = "Work in Progress: Teaching Wireless Networking and Security with {Java 2 Micro Edition (J2ME)}", journal = j-FRONTIERS-EDU-CONF, volume = "1", number = "??", pages = "T2C-7", year = "2003", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Yanhong:2003:EID, author = "G. Yanhong and L. Wenfeng and W. Zhijian", title = "Exploding Image Database Based on {B/S} Using {ISAPI} and {Java}", journal = "Journal --- Wuhan Transportation University", volume = "27", number = "3", pages = "388--390", year = "2003", CODEN = "????", ISSN = "1006-2823", bibdate = "Tue Aug 19 10:20:00 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Yeung:2003:OJR, author = "K. C. Yeung and P. H. J. Kelly", title = "Optimising {Java RMI} Programs by Communication Restructuring", journal = j-LECT-NOTES-COMP-SCI, volume = "2672", publisher = "Springer-Verlag", pages = "324--343", year = "2003", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Yuan:2003:EJD, author = "Michael Juntao Yuan", title = "Enterprise {J2ME}: Developing Mobile {Java} Applications", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxviii + 452", year = "2003", ISBN = "0-13-140530-6", ISBN-13 = "978-0-13-140530-1", LCCN = "QA76.73.J38 Y83 2004", bibdate = "Mon Dec 22 10:42:09 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.99", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Wireless communication systems", } @Article{Zachary:2003:EVA, author = "Joseph L. Zachary and Peter A. Jensen", title = "Exploiting value-added content in an online course: introducing programming concepts via {HTML} and {JavaScript}", journal = j-SIGCSE, volume = "35", number = "1", pages = "396--400", month = jan, year = "2003", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/792548.612016", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:56:59 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Online courses have proliferated across all disciplines in recent years. One commonly-used approach for creating an online course is to build a web site containing as much course information---assignments, solutions, lecture notes, streaming videos, and the like---as possible. The goal of this type of course is to replicate online, to the maximum extent possible, the classroom experience. Online courses built this way exploit the communications capabilities of networked computers. We believe, however, that online courses should also strive to exploit the computational capabilities of computers. That is, online courses should provide value-added components that make possible learning experiences beyond what is feasible in the traditional classroom. We describe such an online course, called Creating Interactive Web Content, that we created and have taught successfully for the last three years. It is a general enrollment course that uses HTML and JavaScript as a vehicle for teaching elementary programming concepts.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Zamulin:2003:ABF, author = "A. Zamulin", title = "An {ASM}-based Formal Model of a {Java} Program", journal = j-PROG-COMP-SOFT, volume = "29", number = "3", pages = "130--139", year = "2003", CODEN = "PCSODA", ISSN = "0361-7688 (print), 1608-3261 (electronic)", ISSN-L = "0361-7688", bibdate = "Tue Jun 17 06:26:38 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Programming and Computer Software; translation of Programmirovaniye (Moscow, USSR) Plenum", } @Article{Zamulin:2003:FSJ, author = "A. V. Zamulin", title = "Formal Semantics of {Java} Expressions and Statements", journal = j-PROG-COMP-SOFT, volume = "29", number = "5", pages = "259--270", year = "2003", CODEN = "PCSODA", ISSN = "0361-7688 (print), 1608-3261 (electronic)", ISSN-L = "0361-7688", bibdate = "Tue Sep 30 06:17:55 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Programming and Computer Software; translation of Programmirovaniye (Moscow, USSR) Plenum", } @Article{Zhang:2003:DIJ, author = "C. H. Zhang and H. K. Pung", title = "The design and implementation of a {Jini\slash Java}-based {A/V} stream control and management", journal = j-MULTIMEDIA-SYSTEMS, volume = "9", number = "4", pages = "315--326", year = "2003", CODEN = "MUSYEW", ISSN = "0942-4962", ISSN-L = "0942-4962", bibdate = "Wed Nov 26 06:39:28 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Multimedia Systems", } @Article{Zhang:2003:IJP, author = "A. Zhang and J. C. Good and G. B. Berriman", title = "An Interactive {Java} Plotting Package for Astronomy", journal = "Astronomical Society of the Pacific Conference Series", volume = "295", number = "??", pages = "461--464", year = "2003", CODEN = "????", ISSN = "1050-3390", bibdate = "Tue Sep 2 06:25:03 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zhao:2003:LCF, author = "Tian Zhao and Jens Palsber and Jan Vite", title = "Lightweight confinement for featherweight {Java}", journal = j-SIGPLAN, volume = "38", number = "11", pages = "135--148", month = nov, year = "2003", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Sun Dec 14 09:18:34 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Zheng:2003:JCB, author = "Q. Zheng and Z. Yao and G. Chen", title = "A {Java--CORBA} Based Design and Implementation for Remote Debugger on Clusters", journal = "Journal --- University of Science and Technology of China", volume = "33", number = "3", publisher = "China University of Science Technology", pages = "351--358", year = "2003", CODEN = "????", ISSN = "????", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zhu:2003:IJC, author = "B. Zhu", title = "Integrate {JAVA} with {CORBA} to Implement the Middleware of the Distributed Systems of Heterogeneity", journal = "Acta Electronica Sinica", volume = "31", number = "9", pages = "1313--1316", year = "2003", CODEN = "????", ISSN = "0372-2112", bibdate = "Tue Nov 18 10:35:04 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{Zhu:2003:LTJ, author = "W. Zhu and C. L. Wang and F. Lau", booktitle = "Proceedings of the International Conference on Parallel Processing", title = "Lightweight Transparent {Java} Thread Migration for Distributed {JVM}", publisher = "????", address = "????", pages = "465--472", year = "2003", CODEN = "????", ISSN = "0190-3918", bibdate = "Tue Dec 2 18:51:43 MST 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zhuang:2003:DBA, author = "H. Zhuang and J. Annese and D. J. Valentino and A. W. Toga", title = "Displaying brain atlases using a portable {Java} application: the anatomist [5029-90]", journal = j-PROC-SPIE, volume = "5029", publisher = "International Society for Optical Engineering", pages = "790--796", year = "2003", CODEN = "PSISDG", ISSN = "0277-786X (print), 1996-756X (electronic)", ISSN-L = "0277-786X", bibdate = "Thu Jul 31 12:26:39 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the SPIE --- The International Society for Optical Engineering", } @Article{Zuse:2003:KAS, author = "H. Zuse", title = "{Kommentar zum Artikel {``Statische Analyse von Java-Anwendungen\ldots{}''}}. ({German}) [Commentary on the article {``Statistical Analysis of the use of Java''}]", journal = j-WIRTSCHAFTSINFORMATIK, volume = "45", number = "6", pages = "662", year = "2003", CODEN = "WIINE9", ISSN = "0937-6429", ISSN-L = "0937-6429", bibdate = "Wed Jan 21 08:32:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Wirtschaftsinformatik", language = "German", } @Book{Adelstein:2004:EJL, author = "Tom Adelstein and Sam Hiser", title = "Exploring the {JDS Linux} desktop", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiv + 390", year = "2004", ISBN = "0-596-00752-3 (paperback)", ISBN-13 = "978-0-596-00752-2 (paperback)", LCCN = "QA76.76.O63 A353 2004", bibdate = "Sat Jun 11 09:50:59 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/jds/index.html", acknowledgement = ack-nhfb, remark = "Linux for prime time with the Java Desktop System. CD-ROM contains Sun Microsystem's Java Desktop System.", subject = "Linux; Operating systems (Computers); Java (Computer program language)", } @Article{Alagic:2004:CJT, author = "S. Alagic and J. Logan", title = "Consistency of {Java} Transactions", journal = j-LECT-NOTES-COMP-SCI, volume = "2921", pages = "71--89", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{AlAli:2004:JBH, author = "A. R. AlAli and M. AlRousan", title = "{Java} Based Home Automation System", journal = j-IEEE-TRANS-CONSUMER-ELECTRONICS, volume = "50", number = "2", pages = "498--504", year = "2004", CODEN = "ITCEDA", ISSN = "0098-3063", ISSN-L = "0098-3063", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Consumer Electronics", } @Article{Aldrich:2004:MISa, author = "Jonathan Aldrich and David Garlan and Bradley Schmerl and Tony Tseng", title = "Modeling and implementing software architecture with acme and {archJava}", journal = j-SIGPLAN, volume = "39", number = "10", pages = "6--7", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Aldrich:2004:MISb, author = "Jonathan Aldrich and David Garlan and Bradley Schmerl and Tony Tseng", title = "Modeling and implementing software architecture with acme and {archJava}", journal = j-SIGPLAN, volume = "39", number = "10", pages = "156--157", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Alia:2004:MFP, author = "M. Alia and S. ChassandeBarrioz and P. Dechamboux and C. Hamon and A. Lefebvre", title = "A Middleware Framework for the Persistence and Querying of {Java} Objects", journal = j-LECT-NOTES-COMP-SCI, volume = "3086", pages = "291--315", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Alistair:2004:SGS, author = "M. Chalk Alistair and Martin Wennerberg and L. L. Sonnhammer Erik", title = "{Sfixem}-graphical sequence feature display in {Java}", journal = j-BIOINFORMATICS, volume = "20", number = "15", pages = "2488--2490", day = "12", month = oct, year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Oct 25 08:28:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "3", } @Article{Alonso:2004:RTT, author = "D. Alonso and J. A. Pastor and B. Alvarez", title = "Real-Time Teaching with {Java}: {J P R3}", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "246--255", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ancona:2004:PTJ, author = "Davide Ancona and Elena Zucca", title = "Principal Typings for {Java}-like Languages", journal = j-SIGPLAN, volume = "39", number = "1", pages = "306--317", month = jan, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:12 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ande:2004:IVJ, author = "R. N. Ande and L. M. Liebrock", title = "Integrating {VRML}, {JAVA}, {XML}, and {HTML} in a {Web}-Based Tool", journal = "Summer Computer Simulation Conference", volume = "??", pages = "513--519", year = "2004", CODEN = "????", ISSN = "0094-7474", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anderson:2004:MPJ, author = "I. M. Anderson", title = "{Maple} Packages and {Java} Applets", journal = "London Mathematical Society Lecture Note Series", volume = "312", pages = "193--206", year = "2004", CODEN = "????", ISSN = "0076-0552", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:AMJ, author = "Anonymous", title = "Applications monitor {Java} apps to minimise downtime", journal = "Computer Weekly", pages = "30--31", day = "23", month = nov, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Sat Dec 18 11:38:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:ANS, author = "Anonymous", title = "{Agilent}'s new {System Ready Test} debuts. Tool extensions for {ColdFire} and {Star} and a new high speed {Java} are among the other new tools", journal = "Embedded System Engineering", volume = "12", number = "6", pages = "10--11", year = "2004", CODEN = "????", ISSN = "0969-8825", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:AVM, author = "Anonymous", title = "{Analyse und Visualisierung von Messdaten: Java --- die Brucke zu den Standards von Morgen}. ({German}) [{Analysis} and visualization of measurement data: {Java} --- {The} bridge to tomorrow's standards]", journal = j-ELECTRONIK, volume = "53", number = "8", pages = "125--125", year = "2004", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", language = "German", } @Article{Anonymous:2004:BBM, author = "Anonymous", title = "Building Bridges: {Mainsoft} offers a product that lets companies move applications built in {Microsoft}'s {Visual Basic} and {C\#} to {Java} platforms", journal = j-INFORMATION-WEEK, volume = "977", pages = "30--31", year = "2004", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2004:BRPc, author = "Anonymous", title = "Book Review: {{\booktitle{Programming with objects: a comparative presentation of object-oriented programming with C++ and Java}}: By Avinash C. Kak. Wiley--Interscience, Hoboken, NJ. (2003). 1115 pages. \$83.95, \pounds 63.50}", journal = j-COMPUT-MATH-APPL, volume = "47", number = "6--7", pages = "1150--1150", month = mar # "\slash " # apr, year = "2004", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Mar 1 21:49:36 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/computmathappl2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://www.sciencedirect.com/science/article/pii/S089812210490106X", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", journal-URL = "http://www.sciencedirect.com/science/journal/08981221", } @Article{Anonymous:2004:CCC, author = "Anonymous", title = "Cutting Complexity: {Compuware}'s {OptimalJ 3.1} is designed to simplify {Java} development", journal = j-INFORMATION-WEEK, volume = "985", pages = "62--63", year = "2004", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2004:CGH, author = "Anonymous", title = "{C\#} goes head to head with {Java}: When resources are tight, companies try to limit the number of programming languages they support. {Microsoft}'s {C\#} and {Sun}'s {Java} both have strengths, so which do you choose?", journal = "Computer Weekly", pages = "48--50", day = "9", month = nov, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Mon Nov 29 06:56:05 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:CJL, author = "Anonymous", title = "{Chipkarten: Java-L{\"o}sung f{\"u}r SmartCards}. ({German}) [{Chip} cards: {Java} Solutions for {SmartCards}]", journal = j-ELECTRONIK, volume = "53", number = "4", pages = "6", year = "2004", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", language = "German", } @Article{Anonymous:2004:CSI, author = "Anonymous", title = "Closed Subject: {IBM} and {BEA} {Systems} call for {Sun} to contribute {Java} as open-source code, but {Sun}'s {CEO} nixes the idea", journal = j-INFORMATION-WEEK, volume = "996", pages = "24", year = "2004", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2004:DWY, author = "Anonymous", title = "Deal will yield support for {Java}", journal = "Computer Weekly", pages = "12--13", day = "13", month = apr, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:GCV, author = "Anonymous", title = "Garbage Collection versus {Echtzeit: Die ``Realtime Specification for Java'' und ihre Implementierung in JamaicaVM}. ({German} [{Reality}: The ``Realtime Specification for {Java}'' and its implementation in {JamaicaVM}]", journal = "Elektronik Praxis", volume = "3", pages = "70--73", year = "2004", CODEN = "????", ISSN = "0341-5589", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Article{Anonymous:2004:GLF, author = "Anonymous", title = "Gluecode Looks to Fill in {Java} Stack", journal = j-INFOWORLD, volume = "26", number = "40", pages = "22", year = "2004", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2004:GLR, author = "Anonymous", title = "{Groupware Lotus} releases {Java}-based {Web} services", journal = "Computer Weekly", pages = "12--13", day = "3", month = feb, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Mon Feb 16 16:23:47 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:HNV, author = "Anonymous", title = "How the new visual editor in this free {Java} development tool can help you", journal = j-PERS-COMPUT-WORLD, volume = "27", number = "12", pages = "183--186", year = "2004", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{Anonymous:2004:HSC, author = "Anonymous", title = "Hot skills: {Cobol} integrates with {Java} and {.Net}", journal = "Computer Weekly", pages = "49--49", day = "7", month = sep, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:HTJ, author = "Anonymous", title = "Hot topic: {Java 1.5}", journal = j-COMPUT-BULL, volume = "46", number = "5", pages = "32--32", year = "2004", CODEN = "COBUAH", ISSN = "0010-4531 (print), 1464-357X (electronic)", ISSN-L = "0010-4531", bibdate = "Sat Dec 18 11:38:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Computer Bulletin", } @Article{Anonymous:2004:JDC, author = "Anonymous", title = "{Java} development: Can {Sun}'s {JCS} bridge {Java} complexity gap?", journal = "Computer Weekly", pages = "26--27", day = "12", month = oct, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:JGO, author = "Anonymous", title = "{Java} Garbage and Other Myths", journal = j-ELECTRONIC-DESIGN, volume = "52", number = "12", pages = "55--55", year = "2004", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Anonymous:2004:JIP, author = "Anonymous", title = "{Java ID} for {PCs}?", journal = "Card Technology Today", volume = "16", number = "3", pages = "5", year = "2004", CODEN = "????", ISSN = "0965-2590", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:JRC, author = "Anonymous", title = "{Java} releases could spike the return of client-side development", journal = "Msi", volume = "22", number = "12", pages = "8--9", year = "2004", CODEN = "????", ISSN = "1533-7758", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:JSA, author = "Anonymous", title = "{Java}: {Sun} advances with {Tiger} but users want interoperability", journal = "Computer Weekly", pages = "18", day = "6", month = jul, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:JSB, author = "Anonymous", title = "{Java-Software: Mit und ohne Betriebssystem}. ({German}) [{Java} Software: With and without Operating System]", journal = j-ELECTRONIK, volume = "53", number = "4", pages = "8", year = "2004", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", language = "German", } @Article{Anonymous:2004:JSS, author = "Anonymous", title = "{Java}: {Sun} simplifies front-end {Java} development", journal = "Computer Weekly", pages = "32", day = "16", month = mar, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:LUI, author = "Anonymous", title = "{LCH} to update {IT} systems to {Java} architecture", journal = "Computer Weekly", pages = "5", day = "20", month = jan, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Mon Feb 2 15:02:19 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:MSJ, author = "Anonymous", title = "{MIPS} spikes {Java} set-tops with a dash of {Esmertec}", journal = j-ELECTRONIC-ENG-TIMES, volume = "1332", pages = "10--17", year = "2004", CODEN = "????", ISSN = "0192-1541", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic engineering times", } @Article{Anonymous:2004:NDE, author = "Anonymous", title = "New Developments: {EBay} wants to broaden its developer base and says it will add integration capabilities for {Soap} and {Java Web}-service technologies to its developers' kit", journal = j-INFORMATION-WEEK, volume = "976", pages = "28", year = "2004", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2004:NGJ, author = "Anonymous", title = "New generation {Java} smart cards", journal = "Card Technology Today", volume = "16", number = "3", pages = "10--11", year = "2004", CODEN = "????", ISSN = "0965-2590", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:OJT, author = "Anonymous", title = "{Oracle Jdeveloper 10G}: {Tim Anderson} examines a cool {Java IDE} from {Oracle Corporation} that is well-priced and gives you a development framework too", journal = "Application Development Advisor", volume = "8", number = "5", pages = "20--25", year = "2004", CODEN = "????", ISSN = "1369-4200", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:POC, author = "Anonymous", title = "Programming with objects: a comparative presentation of object-oriented programming with {C++} and {Java}", journal = j-COMPUT-MATH-APPL, volume = "47", number = "6--7", pages = "1150", year = "2004", CODEN = "CMAPDK", ISSN = "0898-1221 (print), 1873-7668 (electronic)", ISSN-L = "0898-1221", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Mathematics with Applications", } @Article{Anonymous:2004:SCS, author = "Anonymous", title = "{SAP} conference: {SAP} increases support for {Java} on {Netweaver}", journal = "Computer Weekly", pages = "30--31", day = "19", month = oct, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:SDA, author = "Anonymous", title = "Software Desarrollo de aplicaciones informaticas en entornos inalambricos. Lenguaje {Java 2 Micro Edition}", journal = j-REV-ESP-ELECT, volume = "600", pages = "48--51", year = "2004", CODEN = "RVEEBT", ISSN = "0482-6396", bibdate = "Mon Jan 10 05:55:45 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Revista espa{\~n}ola de electronica", } @Article{Anonymous:2004:SJSa, author = "Anonymous", title = "{Sun Java Studio Enterprise 6}", journal = j-PC-MAGAZINE, volume = "23", number = "9", pages = "37", year = "2004", CODEN = "PCMGEP", ISSN = "0888-8507", ISSN-L = "0888-8507", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "PC Magazine", } @Article{Anonymous:2004:SJSb, author = "Anonymous", title = "{Sun Java Studio Creator 2004Q2}", journal = j-PC-MAGAZINE, volume = "23", number = "16", pages = "54", year = "2004", CODEN = "PCMGEP", ISSN = "0888-8507", ISSN-L = "0888-8507", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "PC Magazine", } @Article{Anonymous:2004:SMO, author = "Anonymous", title = "Small but mighty operating system runs full-fledged {Windows}, {Linux}, and {Java}-based software on mobile equipment", journal = j-INFORMATION-WEEK, volume = "979", pages = "61--61", year = "2004", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2004:SRJ, author = "Anonymous", title = "{A} self refreshing {Java GUI} component", journal = "Research Disclosure", volume = "487", pages = "1467", year = "2004", CODEN = "????", ISSN = "0374-4353", bibdate = "Wed Dec 29 09:36:00 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:SVJ, author = "Anonymous", title = "A Study of {VRML-JAVA} Based Robot Motion Simulation", journal = "Mechanical Science and Technology", volume = "23", number = "1", pages = "120--122", year = "2004", CODEN = "????", ISSN = "1003-8728", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:UCI, author = "Anonymous", title = "Utility Company Integrates {COBOL} Application with Enterprise {Java} System", journal = "Computer Economics Report", volume = "26", number = "1", pages = "4--6", year = "2004", CODEN = "????", ISSN = "1054-5026", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2004:VPP, author = "Anonymous", title = "Visual programming: The pros and cons of open source, plus {Java} and {SQLite}", journal = j-PERS-COMPUT-WORLD, volume = "27", number = "5", pages = "212--212", year = "2004", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{Anonymous:2004:WSJ, author = "Anonymous", title = "{Web} services {Java} drives {Mars} mission portal", journal = "Computer Weekly", pages = "29", day = "2", month = mar, year = "2004", CODEN = "????", ISSN = "0010-4787", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Arato:2004:JPB, author = "A. Arato and Z. Juhasz and P. Blenkhorn and G. Evans and G. Evreinov", title = "{Java}-Powered {Braille} Slate Talker", journal = j-LECT-NOTES-COMP-SCI, volume = "3118", pages = "506--513", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Araujo:2004:TAC, author = "W. L. F. Araujo and C. M. Hirata", title = "Translating Activity Cycle Diagrams to {Java} Simulation Programs", journal = "Annual Simulation Symposium", volume = "SYMPOSIUM37", pages = "157--166", year = "2004", CODEN = "????", ISSN = "0272-4715", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Armstrong:2004:JMD, author = "J. N. Armstrong", title = "{Java} \& Monetary Data", journal = j-DDJ, volume = "29", number = "5", pages = "52--56", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Artho:2004:JED, author = "C. Artho and V. Schuppan and A. Biere and P. Eugster and M. Baur and B. Zweimuller", title = "{JNuke}: Efficient Dynamic Analysis for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3114", pages = "462--465", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Arthorne:2004:OEF, author = "John Arthorne and Chris Laffra", title = "Official {Eclipse 3.0 FAQs}", publisher = pub-AW, address = pub-AW:adr, pages = "xxxiv + 386", year = "2004", ISBN = "0-321-26838-5 (paperback)", ISBN-13 = "978-0-321-26838-9 (paperback)", LCCN = "QA76.76.D47 A776 2004", bibdate = "Fri Dec 9 07:26:22 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Eclipse series", acknowledgement = ack-nhfb, subject = "Computer software; Development; Java (Computer program language)", } @Article{Assaf:2004:IEC, author = "M. H. Assaf and R. S. Abielmona and P. Abolghasem and S. R. Das and E. M. Petriu and V. Groza and M. Sahinoglu", title = "Implementation of Embedded Cores-Based Digital Devices in {JBits Java} Simulation Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "3356", pages = "315--325", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bacon:2004:TLF, author = "David F. Bacon and Ravi Konuru and Chet Murthy and Mauricio J. Serrano", title = "Thin Locks: Featherweight Synchronization for {Java}", journal = j-SIGPLAN, volume = "39", number = "4", pages = "583--595", month = apr, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:13 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @TechReport{Barbuti:2004:AIJ, author = "R. Barbuti and N. {De Francesco} and L. Tesei", title = "Abstract Interpretation for {Java} Bytecode Verification", type = "Technical Report", institution = "Dipartimento di Informatica, University of Pisa", address = "Pisa, Italy", year = "2004", bibdate = "Thu Dec 01 07:14:28 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Barros:2004:PMD, author = "T. Barros and R. Boulifa and E. Madelaine", title = "Parameterized Models for Distributed {Java} Objects", journal = j-LECT-NOTES-COMP-SCI, volume = "3235", pages = "43--60", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bartetzko:2004:JJA, author = "D. Bartetzko and C. Fischer and M. Moller and H. Wehrheim", title = "{Jass} --- {Java} with Assertions", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "55", number = "2", pages = "1--15", month = jan, year = "2004", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", pagecount = "15", } @Book{Basham:2004:HFS, author = "Bryan Basham and Kathy Sierra and Bert Bates", title = "Head first servlets and {JSP}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxxii + 854", year = "2004", ISBN = "0-596-00540-7, 0-596-00540-7", ISBN-13 = "978-0-596-00540-5, 978-0-596-00540-5", LCCN = "QA76.3 .B384 2004", bibdate = "Sat Nov 13 10:16:55 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, remark = "Passing the Sun certified Web component developer exam.", subject = "JavaServer pages; Java (Computer program language); Servlets; Electronic data processing personnel; Certification; Study guides", tableofcontents = "Why use servlets and JSPs? \\ Web app architecture \\ Mini MVC tutorial \\ Being a servlet \\ Being a web app \\ Conversational state \\ Being a JSP \\ Script-free pages \\ Custom tags are powerful \\ When even JSTL isn't enough \ldots{} \\ Deploying your web app \\ Keep it secret, keep it safe \\ The power of filters \\ Enterprise design patterns \\ The final coffee cram mock exam.", } @Article{Batov:2004:JGC, author = "V. Batov", title = "{Java} Generics and {C++} Templates", journal = j-CCCUJ, volume = "22", number = "7", pages = "16--21", year = "2004", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{BCS:2004:HTJ, author = "B. C. S.", title = "Hot topic: {Java 1.5}", journal = j-COMPUT-BULL, volume = "46", number = "5", pages = "32--32", month = sep, year = "2004", CODEN = "COBUAH", ISSN = "0010-4531 (print), 1464-357X (electronic)", ISSN-L = "0010-4531", bibdate = "Mon Nov 29 06:56:05 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Computer Bulletin", } @Book{Beck:2004:JPG, author = "Kent Beck", title = "{JUnit} pocket guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "vi + 84", year = "2004", ISBN = "0-596-00743-4 (paperback)", ISBN-13 = "978-0-596-00743-0 (paperback)", LCCN = "QA76.76.T48 B43 2004", bibdate = "Tue Aug 5 17:43:45 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007430", acknowledgement = ack-nhfb, remark = "Quick lookup and advice.", subject = "Computer software; Testing; Java (Computer program language)", } @Misc{Beebe:2004:CJR, author = "Nelson H. F. Beebe", title = "Comments on the {Java Random} class", howpublished = "Web document", day = "24", month = mar, year = "2004", bibdate = "Thu Feb 09 08:58:20 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/prng.bib", note = "This document examines Java support for random numbers, comments on its deficiencies and inefficiencies, and reports the results of two test suites.", URL = "https://www.math.utah.edu/~beebe/java/random/", acknowledgement = ack-nhfb, lastaccess = "09 February 2012", } @Misc{Beebe:2004:JPF, author = "Nelson H. F. Beebe", title = "{Java} programming: Fun with {Fibonacci}", howpublished = "World-Wide Web document", month = mar, year = "2004", bibdate = "Wed Nov 09 18:11:32 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "This report summarizes the origin of the Fibonacci sequence, giving the full Latin text from the original book written in 1202 (not previously available on the Web). Computation of the Fibonacci sequence, and its term ratios, is implemented in about 50 different programming languages. The report comments on the relative difficulty of the task in some of those languages, and on their suitability for numerical computation. It also provides a complete floating-point formatted output package for Java.", URL = "https://www.math.utah.edu/~beebe/software/java/fibonacci/", acknowledgement = ack-nhfb, } @Article{Bellotti:2004:EOM, author = "Francesco Bellotti and Riccardo Berta and Alessandro De Gloria", title = "Evaluation and optimization of method calls in {Java}", journal = j-SPE, volume = "34", number = "4", pages = "395--431", day = "10", month = apr, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.570", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:28 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "5 Jan 2004", } @Article{Ben-Ari:2004:STT, author = "Mordechai Ben-Ari", title = "A suite of tools for teaching concurrency", journal = j-SIGCSE, volume = "36", number = "3", pages = "251--251", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008083", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This poster describes a suite of new or improved tools for teaching concurrent and distributed computation. The tools are written in Java for portability and are freely available at the address http://stwww.weizmann.ac.il/g-cs/~benari/software.htm, under the GNU General Public License. (Some tools invoke other programs which have different licensing arrangements.)", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Benander:2004:FRD, author = "A. Benander and B. Benander and J. Sang", title = "Factors related to the difficulty of learning to program in {Java} --- an empirical study of non-novice programmers", journal = j-INFO-SOFTWARE-TECH, volume = "46", number = "2", pages = "99--107", year = "2004", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Wed Jan 21 08:03:13 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", } @Book{Bergsten:2004:JF, author = "Hans Bergsten", title = "{JavaServer} faces", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiv + 589", year = "2004", ISBN = "0-596-00539-3", ISBN-13 = "978-0-596-00539-9", LCCN = "TK5105.8885.J38 B46 2004", bibdate = "Mon Apr 18 15:07:39 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web sites; Design; Web site development", } @Book{Bergsten:2004:JP, author = "Hans Bergsten", title = "{JavaServer} pages", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xxii + 740", year = "2004", ISBN = "0-596-00563-6", ISBN-13 = "978-0-596-00563-4", LCCN = "TK5105.8885.J38 B47 2004", bibdate = "Mon Apr 18 15:07:54 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web sites; Design; Web site development", } @Article{Bernardeschi:2004:CSI, author = "C. Bernardeschi and N. {De Francesco} and G. Lettieri and L. Martini", title = "Checking secure information flow in {Java} bytecode by code transformation and standard bytecode verification", journal = j-SPE, volume = "34", number = "13", pages = "1225--1255", day = "10", month = nov, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.611", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:34 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "12 Jul 2004", } @Article{Bettini:2004:JPC, author = "L. Bettini", title = "A {Java} Package for Class and Mixin Mobility in a Distributed Setting", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "12--22", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bieg:2004:ETD, author = "C. Bieg and S. Diehl", title = "Educational and technical design of a {Web}-based interactive tutorial on programming in {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "25--36", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Binder:2004:PCM, author = "W. Binder and J. Hulaas", title = "A Portable {CPU}-Management Framework for {Java}", journal = j-IEEE-INTERNET-COMPUT, volume = "8", number = "5", pages = "74--83", year = "2004", CODEN = "IICOFX", ISSN = "1089-7801", ISSN-L = "1089-7801", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Internet Computing", } @Article{Binder:2004:SAP, author = "W. Binder and J. Hulaas", title = "Self-accounting as Principle for Portable {CPU} Control in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3263", pages = "24--38", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bishop:2004:DPG, author = "Judith Bishop and Nigel Horspool", title = "Developing principles of {GUI} programming using views", journal = j-SIGCSE, volume = "36", number = "1", pages = "373--377", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971429", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/csharp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper proposes that GUI development is as important as other aspects of programming, such as a sound understanding of control structures and object orientation. Far less attention has been paid to the programming structures for GUIs and certainly there are few cross language principles to aid the programmer. We propose that principles of GUIs can be extracted and learnt, and that they do enhance good programming practice. These principles have been implemented in our Views system which features an XML-based GUI description notation coupled with an engine that shields the programmer from much of the intricate complexity associated with events, listeners and handlers. The system is programmed primarily in C\# for .NET, but is available in various forms for Java and for other platforms which support .NET through the SSCLI.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Blackburn:2004:MRP, author = "Stephen M. Blackburn and Perry Cheng and Kathryn S. McKinley", title = "Myths and realities: the performance impact of garbage collection", journal = j-SIGMETRICS, volume = "32", number = "1", pages = "25--36", month = jun, year = "2004", CODEN = "????", DOI = "https://doi.org/10.1145/1005686.1005693", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:21:18 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper explores and quantifies garbage collection behavior for three whole heap collectors and generational counterparts: {\em copying semi-space, mark-sweep,\/} and {\em reference counting}, the canonical algorithms from which essentially all other collection algorithms are derived. Efficient implementations in MMTk, a Java memory management toolkit, in IBM's Jikes RVM share all common mechanisms to provide a clean experimental platform. Instrumentation separates collector and program behavior, and performance counters measure timing and memory behavior on three architectures. Our experimental design reveals key algorithmic features and how they match program characteristics to explain the direct and indirect costs of garbage collection as a function of heap size on the SPEC JVM benchmarks. For example, we find that the contiguous allocation of copying collectors attains significant locality benefits over free-list allocators. The reduced collection costs of the generational algorithms together with the locality benefit of contiguous allocation motivates a copying {\em nursery\/} for newly allocated objects. These benefits dominate the overheads of generational collectors compared with non-generational and no collection, disputing the myth that `no garbage collection is good garbage collection.' Performance is less sensitive to the mature space collection algorithm in our benchmarks. However the locality and pointer mutation characteristics for a given program occasionally prefer copying or mark-sweep. This study is unique in its breadth of garbage collection algorithms and its depth of analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "generational; java; mark-sweep; reference counting; semi-space", } @Article{Blumenstein:2004:EAG, author = "Michael Blumenstein and Steven Green and Ann Nguyen and Vallipuram Muthukkumarasamy", title = "An experimental analysis of {GAME}: a generic automated marking environment", journal = j-SIGCSE, volume = "36", number = "3", pages = "67--71", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008016", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes the Generic Automated Marking Environment (GAME) and provides a detailed analysis of its performance in assessing student programming projects and exercises. GAME has been designed to automatically assess programming assignments written in a variety of languages based on the ``structure'' of the source code and the correctness of the program's output. Currently, the system is able to mark programs written in Java, C++ and the C language. To use the system, instructors are required to provide a simple ``marking schema'' for any given assessment item, which includes pertinent information such as the location of files and the model solution. In this research, GAME has been tested on a number of student programming exercises and assignments. The results obtained, have been analysed and compared against a human marker providing encouraging results.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bodden:2004:LLR, author = "Eric Bodden", title = "A lightweight {LTL} runtime verification tool for {Java}", journal = j-SIGPLAN, volume = "39", number = "10", pages = "306--307", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bohme:2004:LFR, author = "H. Bohme and U. Golze", title = "Lightweight Firm Real-Time Extensions for Low Memory Profile {Java} Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "303--314", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{BohneLang:2004:MII, author = "A. BohneLang and E. Lang", title = "{3D-Molekulvisualisierung im Internet Schwerpunkt Java-Applets}. ({German}) [{3D}-Molecular Visualization in {Internet} Center-of-Gravity Applets]", journal = "Biospektrum", volume = "10", number = "2", pages = "167--169", year = "2004", CODEN = "????", ISSN = "0947-0867", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Article{Bonifaci:2004:JBS, author = "V. Bonifaci and C. Demetrescu and I. Finocchi and L. Laura", title = "A {Java}-based system for building animated presentations over the {Web}", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "37--49", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Borger:2004:EAS, author = "E. Borger and R. F. Stark", title = "Exploiting Abstraction for Specification Reuse. The {Java\slash C\#} Case Study", journal = j-LECT-NOTES-COMP-SCI, volume = "3188", pages = "42--76", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boshernitsan:2004:IIS, author = "Marat Boshernitsan and Susan L. Graham", title = "{iXj}: interactive source-to-source transformations for {Java}", journal = j-SIGPLAN, volume = "39", number = "10", pages = "212--213", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bossert:2004:JSC, author = "O. Bossert", title = "A {Java} software for creation of image mosaics", journal = j-COMPUT-METH-PROG-BIOMED, volume = "75", number = "2", pages = "159--161", year = "2004", CODEN = "CMPBEK", ISSN = "0169-2607 (print), 1872-7565 (electronic)", ISSN-L = "0169-2607", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Methods and Programs in Biomedicine", } @Article{Bouchenak:2004:EIE, author = "S. Bouchenak and D. Hagimont and S. Krakowiak and N. De Palma and F. Boyer", title = "Experiences implementing efficient {Java} thread serialization, mobility and persistence", journal = j-SPE, volume = "34", number = "4", pages = "355--393", day = "10", month = apr, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.569", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:28 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "5 Jan 2004", } @Article{Boulifa:2004:MGD, author = "R. Boulifa and E. Madelaine", title = "Model Generation for Distributed {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "139--152", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Boyer:2004:IIT, author = "Truman Parks Boyer and Mohsen Chitsaz", title = "{ICETM} and {ICE\slash TTM}: tools to assist in compiler design and implementation", journal = j-SIGCSE, volume = "36", number = "4", pages = "55--57", month = dec, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1041624.1041657", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:12 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse36.html#BoyerC04; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2004.bib", abstract = "ICE (Intermediate Code Engine) and ICE/T (ICE/Translator) are compiler back ends that execute on a Java Virtual Machine (JVM). They allow the student to complete a working compiler quickly and can execute on any platform that supplies a JVM. ICE is a quadruple interpreter that executes ICE code directly, and includes an assembler, which a builder can use to side-step most symbol management issues. ICE/T is a translator that accepts ICE assembly code as input, and generates an equivalent Java class file as output. This paper advocates the use of these tools in compiler implementation courses.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Brett:2004:WBK, author = "G. Olivier Brett and L. Snoep Jacky", title = "{Web}-based kinetic modelling using {JWS Online}", journal = j-BIOINFORMATICS, volume = "20", number = "13", pages = "2143--2144", day = "1", month = sep, year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Nov 29 06:56:05 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Brodie:2004:JJI, author = "R. Brodie and R. L. Roper and C. Upton", title = "{JDotter}: a {Java} interface to multiple dotplots generated by dotter", journal = j-BIOINFORMATICS, volume = "20", number = "2", pages = "279--281", year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Brosgol:2004:RTJ, author = "Benjamin M. Brosgol", title = "Real-Time {Java} for {Ada} Programmers", journal = j-ADA-USER-J, volume = "25", number = "4", pages = "220--??", month = dec, year = "2004", CODEN = "AUJOET", ISSN = "1381-6551", bibdate = "Wed Sep 1 09:00:38 MDT 2010", bibsource = "http://www.ada-europe.org/AUJ/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Ada User Journal", journal-URL = "http://www.ada-europe.org/auj/archive", } @Article{Bruce:2004:CHT, author = "Kim B. Bruce", title = "Controversy on how to teach {CS} 1: a discussion on the {SIGCSE}-members mailing list", journal = j-SIGCSE, volume = "36", number = "4", pages = "29--34", month = dec, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1041624.1041652", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:12 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse36.html#Bruce04; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2004.bib", abstract = "A discussion took place on the SIGCSE mailing list in late March of 2004 that raised important issues on how to teach introductory courses using Java. This article attempts to summarize several of the important points raised during this discussion, among them whether or how objects should be taught early or late in a CS 1 course, or indeed, whether object-oriented languages should be postponed until a second course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bruce:2004:LWL, author = "K. B. Bruce and J. N. Foster", title = "{LOOJ}: Weaving {LOOM} into {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3086", pages = "389--413", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bruno:2004:CJX, author = "E. J. Bruno", title = "{C++}, {Java}, \& {XML} Processing", journal = j-CCCUJ, volume = "22", number = "7", pages = "6--15", year = "2004", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Bubak:2004:RPJ, author = "M. Bubak and W. Funika and M. Smetek and Z. Kilianski and R. Wismuller", title = "Request Processing in the {Java}-Oriented {OMIS} Compliant Monitoring System", journal = j-LECT-NOTES-COMP-SCI, volume = "3019", pages = "352--359", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bucker:2004:TUC, author = "H. M. Bucker and B. Lang and H. J. Pflug and A. Vehreschild", title = "Threads in an Undergraduate Course: a {Java} Example Illuminating Different Multithreading Approaches", journal = j-LECT-NOTES-COMP-SCI, volume = "3044", pages = "882--891", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Burns:2004:RTS, author = "Alan Burns and Andy Wellings", title = "Real-time systems and programming languages \ [sound recording]: {Ada 95}, real-time {Java} and real-time {Posix}", publisher = "TPB", address = "Enskede, The Netherlands", pages = "2 CD--R (61h 54m)", year = "2004", LCCN = "????", bibdate = "Sat Jan 12 22:43:22 MST 2013", bibsource = "https://www.math.utah.edu/pub/tex/bib/adabooks.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.libris.kb.se:210/libr", URL = "http://katalog.tpb.se/wsHitList.Asp?SCode1=TN&SearchStr1=C30785", acknowledgement = ack-nhfb, remark = "Digital talbok (DAISY 2.02), ljud.. Inl{\"a}st ur: 3. ed. Harlow: Addison-Wesley, cop. 2001.. Boken ing{\aa}r i serien: International computer science series.. S. 713-724 i boken: References.", } @Article{Buytaert:2004:BAJ, author = "Dries Buytaert and Andy Georges and Lieven Eeckhout and Koen {De Bosschere}", title = "Bottleneck analysis in {Java} applications using hardware performance monitors", journal = j-SIGPLAN, volume = "39", number = "10", pages = "172--173", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Cabana:2004:PPJ, author = "Brian Cabana and Suad Alagi{\'c} and Jeff Faulkner", title = "Parametric polymorphism for {Java}: is there any hope in sight?", journal = j-SIGPLAN, volume = "39", number = "12", pages = "22--31", month = dec, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Cai:2004:SMC, author = "H. Cai and A. Wellings", title = "Supporting Mixed Criticality Applications in a {Ravenscar--Java} Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "278--291", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Calejo:2004:ITD, author = "M. Calejo", title = "{InterProlog}: Towards a Declarative Embedding of Logic Programming in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3229", pages = "714--717", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Carrano:2004:DAP, author = "Frank M. Carrano and Janet Prichard", title = "Data Abstraction and Problem Solving with {Java}, Walls and Mirrors", publisher = pub-AW, address = pub-AW:adr, edition = "Updated", pages = "xxii + 808", year = "2004", ISBN = "0-321-19717-8", ISBN-13 = "978-0-321-19717-7", LCCN = "QA76.73.J3 C37 2003", bibdate = "Sat Jan 10 12:56:46 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$93.00", URL = "http://www.aw-bc.com/catalog/academic/product/0,4096,0-321-19717-8,00.html", acknowledgement = ack-nhfb, } @Book{Cavaness:2004:PJS, author = "Chuck Cavaness", title = "Programming {Jakarta Struts}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvii + 450", year = "2004", ISBN = "0-596-00651-9", ISBN-13 = "978-0-596-00651-8", LCCN = "QA76.76.A65 C39 2004", bibdate = "Wed Oct 30 16:15:17 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.oreilly.com/catalog/prdindex.html", price = "US\$44.95, CAN\$65.95, UK\pounds 31.95", URL = "http://www.oreilly.com/catalog/0596006519/", acknowledgement = ack-nhfb, } @Article{Chalasani:2004:AJB, author = "Suresh Chalasani and Robert Barber", title = "Architectures for {Java}-based bioinformatics applications", journal = "Industrial Management \& Data Systems", volume = "104", number = "7", pages = "578--588", day = "1", month = jul, year = "2004", CODEN = "????", ISSN = "0263-5577 (print), 1758-5783 (electronic)", bibdate = "Thu Oct 14 05:44:13 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "11", } @Article{Chalk:2004:SGS, author = "A. M. Chalk and M. Wennerberg and E. L. Sonnhammer", title = "{Sfixem}-graphical sequence feature display in {Java}", journal = j-BIOINFORMATICS, volume = "20", number = "15", pages = "2488--2490", year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Chan:2004:AOT, author = "Jien-Tsai T. Chan and Wuu Yang", title = "Advanced obfuscation techniques for {Java} bytecode", journal = j-J-SYST-SOFTW, volume = "71", number = "1--2", pages = "1--10", month = apr, year = "2004", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed May 18 10:27:24 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Chan:2004:JIP, author = "M. Chan and T. Hansen and P. A. Monney and T. L. Baker", title = "A {Java} implementation of the probabilistic argumentation system for data fusion in missile defense applications [5434-19]", journal = j-PROC-SPIE, volume = "5434", number = "", pages = "176--186", year = "2004", CODEN = "PSISDG", ISSN = "0277-786X (print), 1996-756X (electronic)", ISSN-L = "0277-786X", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the SPIE --- The International Society for Optical Engineering", } @Article{Chan:2004:RTS, author = "Bryan Chan and Tarek S. Abdelrahman", title = "Run-Time Support for the Automatic Parallelization of {Java} Programs", journal = j-J-SUPERCOMPUTING, volume = "28", number = "1", pages = "91--117", month = apr, year = "2004", CODEN = "JOSUED", ISSN = "0920-8542 (print), 1573-0484 (electronic)", ISSN-L = "0920-8542", bibdate = "Sat Dec 4 12:39:12 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.wkap.nl/journalhome.htm/0920-8542; Ingenta database", URL = "http://ipsapp008.kluweronline.com/IPS/content/ext/x/J/5189/I/52/A/6/abstract.htm", acknowledgement = ack-nhfb, fjournal = "The Journal of Supercomputing", journal-URL = "http://link.springer.com/journal/11227", pagecount = "27", } @Article{Chan:2004:TJ, author = "Jien-Tsai T. Chan and Wuu Yang and Jing-Wei W. Huang", title = "Traps in {Java}", journal = j-J-SYST-SOFTW, volume = "72", number = "1", pages = "33--47", month = jun, year = "2004", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed May 18 10:27:24 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Chang:2004:TSP, author = "B. M. Chang and J. D. Choi", title = "Thread-Sensitive Points-to Analysis for Multithreaded {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3280", pages = "945--954", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chawla:2004:GIF, author = "Anil Chawla and Alessandro Orso", title = "A generic instrumentation framework for collecting dynamic information", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022533", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Performing empirical research in software testing involves executing a set of subjects against one or more test suites and measuring some characteristics of these executions. Such measures are often collected using ad-hoc instrumentation, by inserting probes in the code that collect and report dynamic information at run-time. Another possible approach is to collect the needed information by leveraging capabilities of the runtime system. Both these approaches usually result in measurement tools that are not flexible and are, thus, hard to reuse and modify. To address this problem, we present a generic framework for collecting information on the runtime behavior of a Java program. The framework allows for easily collecting different kinds of dynamic information for a set of executions of the program, such as coverage and profiling of various code entities and program traces at different levels. The framework also lets users easily define how to process the collected information. In the paper, we also present a case study that we performed to evaluate the framework, and that shows its effectiveness and efficiency.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2004:EEI, author = "J. Chen and K. Wang", title = "Experiment on Embedding Interception Service into {Java RMI}", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "48--61", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Chen:2004:JFC, author = "N. Chen and K. K. Ma", title = "{Java}'s Future: Challenge and Opportunity", journal = "IT Professional", volume = "6", number = "4", pages = "19--27", year = "2004", CODEN = "????", ISSN = "1520-9202", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2004:MCP, author = "D. J. Chen and C. C. Hwang and S. K. Huang and D. T. K. Chen", title = "Mining Control Patterns from {Java} Program Corpora", journal = j-J-INFO-SCI-ENG, volume = "20", number = "1", pages = "57--84", year = "2004", CODEN = "JINEEY", ISSN = "1016-2364", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of information science and engineering", } @Article{Chen:2004:MES, author = "C. W. Chen and C. K. Chen and J. C. Chen and C. T. Ko and J. K. Lee and H. W. Lin and W. J. Wu", title = "{MM04-1}: Efficient Support of {Java RMI} over Heterogeneous Wireless Networks", journal = "IEEE International Conference on Communications", volume = "3", number = "", pages = "1391--1395", year = "2004", CODEN = "????", ISSN = "0536-1486", bibdate = "Mon Nov 29 06:56:05 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chen:2004:SET, author = "Guangyu Chen and Byung-Tae Kang and Mahmut Kandemir and Narayanan Vijaykrishnan and Mary Jane Irwin and Rajarathnam Chandramouli", title = "Studying Energy Trade Offs in Offloading Computation\slash Compilation in {Java}-Enabled Mobile Devices", journal = j-IEEE-TRANS-PAR-DIST-SYS, volume = "15", number = "9", pages = "795--809", month = sep, year = "2004", CODEN = "ITDSEO", DOI = "https://doi.org/10.1109/TPDS.2004.47", ISSN = "1045-9219 (print), 1558-2183 (electronic)", ISSN-L = "1045-9219", bibdate = "Sat Dec 11 16:24:15 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/trans/td/2004/09/l0795.htm; http://csdl.computer.org/dl/trans/td/2004/09/l0795.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Parallel and Distributed Systems", journal-URL = "http://www.computer.org/tpds/archives.htm", } @Article{Chen:2004:STD, author = "W. Chen and D. Wang and W. Zheng", title = "A Single Thread Discrete Event Simulation Toolkit for {Java}: {STSimJ}", journal = j-LECT-NOTES-COMP-SCI, volume = "3038", pages = "1131--1137", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Christensen:2004:RSX, author = "A. S. Christensen and C. Kirkegaard and A. Moller", title = "A Runtime System for {XML} Transformations in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3186", pages = "143--157", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Clamp:2004:JJA, author = "M. Clamp and J. Cuff and S. M. Searle and G. J. Barton", title = "The {Jalview Java} alignment editor", journal = j-BIOINFORMATICS, volume = "20", number = "3", pages = "426--427", year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Book{Clark:2004:PPA, author = "Mike Clark", title = "Pragmatic project automation: how to build, deploy, and monitor {Java} applications", volume = "3", publisher = pub-PRAGMATIC-BOOKSHELF, address = pub-PRAGMATIC-BOOKSHELF:adr, pages = "xiv + 161", year = "2004", ISBN = "0-9745140-3-9", ISBN-13 = "978-0-9745140-3-1", LCCN = "QA76.76.D47 C53 2004", bibdate = "Tue Aug 5 18:13:42 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Pragmatic starter kit series", URL = "http://www.oreilly.com/catalog/9780974514031", acknowledgement = ack-nhfb, subject = "Ant (Computer file); Computer software; Development; Computer programming; Management; Java (Computer program language)", tableofcontents = "Introduction \\ One-step builds \\ Scheduled builds \\ Push-button releases \\ Installation and deployment \\ Monitoring \\ Resources", } @Article{Coglio:2004:FTJ, author = "A. Coglio and M. Huisman and J. R. Kiniry and P. Muller and E. Poll", title = "Formal Techniques for {Java}-Like Programs ({FTfJP})", journal = j-LECT-NOTES-COMP-SCI, volume = "3344", pages = "76--83", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Coglio:2004:SVT, author = "Alessandro Coglio", title = "Simple verification technique for complex {Java} bytecode subroutines", journal = j-CCPE, volume = "16", number = "7", pages = "647--670", month = jun, year = "2004", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.798", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:54 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "27 Apr 2004", } @Article{Cohen:2004:TTT, author = "F. Cohen", title = "The Testing Toolbox: With these 10 tools, {Java} scalability, performance and functionality are no longer elusive. Chockful of techniques, they enable software developers, {QA} technicians and {IT} managers to effectively proof programs", journal = "Software Development", volume = "12", number = "7", pages = "36--43", year = "2004", CODEN = "????", ISSN = "1070-8588", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Comeau:2004:UOP, author = "T. Comeau and B. Garrett and J. Richon and F. Romelfanger", title = "Using {OpenOffice} as a Portable Interface to {Java}-Based Applications", journal = "Astronomical Society of the Pacific Conference Series", volume = "314", number = "", pages = "701--703", year = "2004", CODEN = "????", ISSN = "1050-3390", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Conrad:2004:ESB, author = "Marc Conrad and Tim French", title = "Exploring the synergies between the object oriented paradigm and mathematics: a {Java} led approach", journal = "International Journal of Mathematical Education in Science and Technology", volume = "35", number = "5", pages = "733--742", month = sep, year = "2004", CODEN = "????", ISSN = "0020-739X (print), 1464-5211 (electronic)", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "10", } @Article{Conrad:2004:USB, author = "Marc Conrad and Tim French", title = "Using the synergies between the object-oriented paradigm and mathematics in joint mathematics\slash computer science programs", journal = j-SIGCSE, volume = "36", number = "3", pages = "254--254", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008086", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Whilst the object oriented paradigm and its instantiation within programming languages such as Java has become a ubiquitous part of both the commercial and educational landscapes, its usage as a visualisation technique within Mathematics undergraduate programmes of study has not been widely recognised. By regarding the object oriented paradigm as a medium for conceptual exploration (rather than merely as a tool) the aim is to show how the close conceptual links between object orientation and certain mathematical structures such as rings and groups can be more fully realised, using the ready-made Java package com.perisic.ring [2]. The package provides classes for abstract rings and can in addition be used as a reference model for other mathematical objects such as groups or vector spaces [3].The intention behind the approach offered here is to build upon these enabling foundations so as to reveal the fundamental synergies that exist between the various entities that are central to the OO paradigm (such as Abstract Data Types) and abstract mathematical structures (such as Rings and Groups). By inviting students to revisit certain fundamental OO constructs and techniques (such as classes, polymorphism, encapsulation and inheritance) within the context of pure mathematics, students may perhaps gain a deeper insight into mathematical abstractions and related algebraic structures. The idea is to generally reinforce students' learning and to generally enhance their mathematical maturity through a process of ``live engagement'' with a familiar and indeed ubiquitous OO paradigm. It is clear that for some authors at least, the use of Java in Mathematics is seen to be purely pragmatic: i.e., merely as a convenient tool used to engineer a graphical user interface or to explore distributed programming [1]. However there has been a heated on-going debate that has sought to identify whether the ``correct'' use of a computer and other automated devices such as calculators, genuinely aids students' learning and analytical abilities, or whether such usage may actually be detrimental to the development of mathematical maturity [1]. We prefer to believe that Java may have a deeper role to play. However, rather than directly seeking to contribute to this pedagogic debate between ``reformers'' and ``traditionalists'' our aim here is to show how (conceptually) the two discipline areas are mutually synergistic. In particular we show how gaining a deeper insight into, and understanding of, object oriented techniques can in fact provide an ideal pedagogic opportunity for our undergraduate target audience to better visualise, hence understand, certain abstract mathematical concepts and entities.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Corradini:2004:TJC, author = "A. Corradini and F. L. Dotti and L. Foss and L. Ribeiro", title = "Translating {Java} Code to Graph Transformation Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "3256", pages = "383--398", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Cowlishaw:2004:FFE, author = "M. Cowlishaw and J. Bloch and J. D. Darcy", title = "Fixed, Floating, and Exact Computation with {Java}'s {BigDecimal}", journal = j-DDJ, volume = "29", number = "7", pages = "22--27", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Csallner:2004:JAR, author = "Christoph Csallner and Yannis Smaragdakis", title = "{JCrasher}: an automatic robustness tester for {Java}", journal = j-SPE, volume = "34", number = "11", pages = "1025--1050", month = sep, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.602", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:33 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "7 Jun 2004", } @Article{Daly:2004:ALS, author = "C. Daly and J. M. Horgan", title = "An Automated Learning System for {Java} Programming", journal = j-IEEE-TRANS-EDUC, volume = "47", number = "1", pages = "10--17", year = "2004", CODEN = "IEEDAB", ISSN = "0018-9359", ISSN-L = "0018-9359", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Education", } @Book{Darwin:2004:JC, author = "Ian F. Darwin", title = "{Java} cookbook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, edition = "Second", pages = "xxiv + 829", year = "2004", ISBN = "0-596-00701-9", ISBN-13 = "978-0-596-00701-0", LCCN = "QA76.73.J38 D348 2004", bibdate = "Sat Jun 11 09:50:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596007010", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{deBeer:2004:DCS, author = "R. deBeer and D. GraveronDemilly and S. Nastase and D. vanOrmondt", title = "A distributed computing system for magnetic resonance imaging: {Java}-based processing and binding of {XML}", journal = j-COMPUT-METH-PROG-BIOMED, volume = "73", number = "3", pages = "221--231", year = "2004", CODEN = "CMPBEK", ISSN = "0169-2607 (print), 1872-7565 (electronic)", ISSN-L = "0169-2607", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Methods and Programs in Biomedicine", } @Article{deCarmo:2004:JOA, author = "L. deCarmo", title = "{Java} \& {The OpenCable Application Platform}", journal = j-DDJ, volume = "29", number = "7", pages = "34--41", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{deMelo:2004:CJF, author = "A. C. deMelo and B. M. Moutinho", title = "On the composition of {Java} frameworks control-flows", journal = j-INFO-SOFTWARE-TECH, volume = "46", number = "5", pages = "301--307", year = "2004", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", } @Article{DeMeuter:2004:OOL, author = "W. DeMeuter and S. Ducasse and T. DHondt and O. L. Madsen", title = "Object-Oriented Language Engineering for the Post-{Java} Era", journal = j-LECT-NOTES-COMP-SCI, volume = "3013", pages = "143--153", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Deng:2004:TWD, author = "Yuetang Deng and Phyllis Frankl and Jiong Wang", title = "Testing web database applications", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Commercial, scientific, and social activities are increasingly becoming dependent on Web database applications. New testing techniques that handle the unique features of these systems are needed. To that end, we have extended AGENDA, a tool set for testing relational database applications, to test web database applications. Application source code is analyzed to extract relevant information about the URLs and their parameters. This information is used to construct and simplify a graph in which nodes represent URLs and edges represent links between URLs. A set of paths through the graph is selected and test cases are generated for each path. The extracted information about the parameters to each URL (e.g., values that an application user would enter into a form), is used to guide AGENDA to generate inputs for the URLs. The URLs on a path and their inputs are stored in an XML file, which is then automatically executed. The current implementation is targeted toward web applications written as Java Servlets and uses an algorithm based on cyclomatic complexity to generate paths. Preliminary empirically evaluation based on the TPC-W benchmark is presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deOliveira:2004:MEE, author = "A. A. {de Oliveira} and T. H. Braga and M. {de, Almeida Maia} and R. {da Silva Bigonha}", title = "{MetaJ}: An Extensible Environment for Metaprogramming in {Java}", journal = j-J-UCS, volume = "10", number = "7", pages = "872--??", day = "28", month = jul, year = "2004", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Wed Jul 6 08:14:46 MDT 2005", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_10_7/metaj_an_extensible_environment", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Article{DeSutter:2004:CJL, author = "B. DeSutter and F. Tip and J. Dolby", title = "Customization of {Java} Library Classes Using Type Constraints and Profile Information", journal = j-LECT-NOTES-COMP-SCI, volume = "3086", pages = "585--610", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{diFlora:2004:IPL, author = "C. diFlora and M. Ficco and S. Russo", title = "Indoor Positioning for Location-Aware Applications on {Java}-Based Mobile Devices", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "383--393", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{DiMaggio:2004:TJS, author = "L. DiMaggio", title = "Testing {Java} Servlets", journal = j-DDJ, volume = "29", number = "8", pages = "26--31", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Ding:2004:EJP, author = "Haibiao Ding and Mansur H. Samadzadeh", title = "Extraction of {Java} program fingerprints for software authorship identification", journal = j-J-SYST-SOFTW, volume = "72", number = "1", pages = "49--57", month = jun, year = "2004", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed May 18 10:27:24 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Dmitriev:2004:PJA, author = "M. Dmitriev", title = "Profiling {Java} Applications Using Code Hotswapping and Dynamic Call Graph Revelation (position paper)", journal = "Software Engineering Notes", volume = "29", number = "1", pages = "139--150", year = "2004", CODEN = "????", ISSN = "0163-5948", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Donovan:2004:CJP, author = "A. Donovan and A. Kiezun and M. S. Tschantz and M. D. Ernst", title = "Converting {Java} Programs to Use Generic Libraries", journal = j-SIGPLAN, volume = "39", number = "10", pages = "15--34", year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Doyle:2004:DIM, author = "Patrick Doyle and Carlos Cavanna and Tarek S. Abdelrahman", title = "The design and implementation of a modular and extensible {Java Virtual Machine}", journal = j-SPE, volume = "34", number = "3", pages = "287--313", month = mar, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.565", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:27 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "5 Jan 2004", } @Article{Doyle:2004:JPT, author = "T. C. Doyle and C. A. April", title = "{Java} Peace Treaty: Nothing seems more surreal than the {Sun--Microsoft} pact, even now", journal = "Varbusiness", volume = "20", number = "10", pages = "22", year = "2004", CODEN = "????", ISSN = "0894-5802", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Dudney:2004:MJF, editor = "Bill Dudney and others", title = "Mastering {JavaServer Faces}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxiii + 456", year = "2004", ISBN = "0-471-46207-1 (paperback)", ISBN-13 = "978-0-471-46207-1 (paperback)", LCCN = "TK5105.8885.J38 M37 2004", bibdate = "Wed Nov 15 10:37:03 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/bios/wiley047/2004274458.html; http://www.loc.gov/catdir/description/wiley042/2004274458.html; http://www.loc.gov/catdir/toc/wiley041/2004274458.html", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web sites; Design; Web site development", } @Article{Dujmovic:2004:VJW, author = "J. Dujmovic and C. Herder", title = "Visualization of {Java} Workloads Using Ternary Diagrams", journal = "Software Engineering Notes", volume = "29", number = "1", pages = "261--265", year = "2004", CODEN = "????", ISSN = "0163-5948", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Dunkel:2004:CJP, author = "J{\"u}rgen Dunkel and Ralf Bruns and Andreas Holitschke", title = "Comparison of {JavaServer Pages} and {XSLT}: a software engineering perspective", journal = j-SPE, volume = "34", number = "1", pages = "1--13", month = jan, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.555", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Mon Feb 9 09:25:26 MST 2004", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "26 Nov 2003", } @Article{Eason:2004:PDU, author = "R. Eason and G. Heath", title = "Paintbrush of Discovery: Using {Java} Applets to Enhance Mathematics Education", journal = j-PRIMUS, volume = "14", number = "1", pages = "79--95", year = "2004", CODEN = "????", ISSN = "1051-1970", ISSN-L = "1051-1970", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "PRIMUS (Problems Resources and Issues in Mathematics Undergraduate Studies)", } @Article{Eichelberger:2004:OOP, author = "Holger Eichelberger and J{\"u}rgen Wolff von Gudenberg", title = "Object-oriented processing of {Java} source code", journal = j-SPE, volume = "34", number = "12", pages = "1157--1185", month = oct, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.607", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:33 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "15 Jun 2004", } @Article{Eisenbach:2004:FTJ, author = "S. Eisenbach and G. T. Leavens and P. Muller and A. PoetzschHeffter and E. Poll", title = "Formal Techniques for {Java}-Like Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3013", pages = "62--71", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Eisenberg:2004:ELX, author = "Andrew Eisenberg and Jim Melton", title = "An Early Look at {XQuery API} for {Java} ({XQJ})", journal = j-SIGMOD, volume = "33", number = "2", pages = "105--111", year = "2004", CODEN = "SRECD8", ISSN = "0163-5808 (print), 1943-5835 (electronic)", ISSN-L = "0163-5808", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGMOD Record", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J689", } @Article{Elnagar:2004:GPP, author = "A. Elnagar and L. Lulu", title = "A global path planning {Java}-based system for autonomous mobile robots", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "107--122", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Emurian:2004:PIT, author = "H. H. Emurian", title = "A programmed instruction tutoring system for {Java}: consideration of learning performance and software self-efficacy", journal = j-COMPUT-HUM-BEHAV, volume = "20", number = "3", pages = "423--459", year = "2004", CODEN = "CHBEEQ", ISSN = "0747-5632", ISSN-L = "0747-5632", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers in Human Behavior", } @Article{English:2004:AAG, author = "John English", title = "Automated assessment of {GUI} programs using {JEWL}", journal = j-SIGCSE, volume = "36", number = "3", pages = "137--141", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008033", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes a system for the automated assessment of GUI-based programs. This uses the JEWL library, a set of Java packages designed for use by complete beginners to Java which allows students to build GUI-based programs from the 'Hello world' stage onwards. This paper describes how JEWL has also been designed so that it can be used to assess such programs automatically.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Erdogan:2004:DEE, author = "N. Erdogan and Y. E. Selcuk and O. Sahingoz", title = "A distributed execution environment for shared {Java} objects", journal = j-INFO-SOFTWARE-TECH, volume = "46", number = "7", pages = "445--455", year = "2004", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", } @Article{Esquembre:2004:EJS, author = "F. Esquembre", title = "Easy {Java} Simulations: a software tool to create scientific simulations in {Java}", journal = j-COMP-PHYS-COMM, volume = "156", number = "2", pages = "199--204", year = "2004", CODEN = "CPHCBZ", ISSN = "0010-4655 (print), 1879-2944 (electronic)", ISSN-L = "0010-4655", bibdate = "Wed Jan 21 08:03:13 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/compphyscomm2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Physics Communications", journal-URL = "http://www.sciencedirect.com/science/journal/00104655", } @Article{Farzan:2004:FAJ, author = "A. Farzan and F. Chen and J. Meseguer and G. Rosu", title = "Formal Analysis of {Java} Programs in {JavaFAN}", journal = j-LECT-NOTES-COMP-SCI, volume = "3114", pages = "501--505", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Feigenbaum:2004:JRS, author = "B. Feigenbaum", title = "{Java} Reflection \& {Smalltalk}-like Method Dispatching", journal = j-DDJ, volume = "29", number = "7", pages = "42--45", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Felber:2004:UJX, author = "U. Dietrich Felber", title = "Using {Java} and {XML} in Interdisciplinary Research: {A} New Data-gathering Tool for Historians Working with {EuroClimHist}", journal = "Historical Methods", volume = "37", number = "4", pages = "174--185", year = "2004", CODEN = "????", ISSN = "0161-5440", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Flanagan:2004:JENa, author = "David Flanagan", title = "{Java} examples in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xiv + 701", year = "2004", ISBN = "0-596-00620-9", ISBN-13 = "978-0-596-00620-4", LCCN = "QA76.73.J38 F485 2004; QA76.73.J38 F552 2004eb; QA76.73.J38 F552 2004; QA76.73.J38 F53 2004", bibdate = "Tue Aug 5 17:42:04 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "A nutshell handbook; The Java series", URL = "http://www.oreilly.com/catalog/9780596006204", acknowledgement = ack-nhfb, remark = "A tutorial companion to Java in a nutshell. Covers Java 2, version 1.4 - cover. Includes indexes.", subject = "Java (Computer program language); Web servers; Object-oriented programming (Computer science)", tableofcontents = "Learning Java \\ Core Java APIs \\ Desktop Java APIs \\ Enterprise Java APIs", } @Book{Flanagan:2004:JENb, author = "David Flanagan", title = "{Java} examples in a nutshell: a tutorial companion to {Java} in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xiv + 701", year = "2004", ISBN = "0-596-00585-7", ISBN-13 = "978-0-596-00585-6", LCCN = "QA76.73.J38 F5518 2004", bibdate = "Mon Apr 18 15:08:09 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "In a nutshell", URL = "http://www.oreilly.com/catalog/9780596005856", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", xxnote = "This ISBN is also assigned to \cite{Greenwald:2004:OEO}.", } @Article{Forax:2004:RIJ, author = "R. Forax and E. Duris and G. Roussel", title = "A reflective implementation of {Java} multi-methods", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "30", number = "12", pages = "1055--1071", month = dec, year = "2004", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2004.90", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1377197", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Book{Ford:2004:AJW, author = "Neal Ford", title = "Art of {Java Web} development: {Struts}, {Tapestry}, {Commons}, {Velocity}, {JUnit}, {Axis}, {Cocoon}, {InternetBeans}, {WebWorks}", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxx + 593", year = "2004", ISBN = "1-932394-06-0", ISBN-13 = "978-1-932394-06-1", LCCN = "QA76.73.J38 F66 2004", bibdate = "Mon Feb 27 16:34:51 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/bios/ipg051/2004271136.html; http://www.loc.gov/catdir/description/ipg051/2004271136.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Web site development", } @Article{Ford:2004:LOG, author = "Lindsey Ford", title = "A learning object generator for programming", journal = j-SIGCSE, volume = "36", number = "3", pages = "268--268", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008103", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We introduce a general tool for creating small learning scenarios (Learning Objects) that can be used by teachers and students for teaching/learning Java.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Frens:2004:TTT, author = "J. D. Frens", title = "Taming the Tiger: Teaching the Next Version of {Java}", journal = j-SIGCSE, volume = "36", number = "1", pages = "151--155", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Mon Apr 19 11:57:57 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Frey:2004:JBU, author = "H. Frey and D. Gorgen and J. K. Lehnert and P. Sturm", title = "A {Java}-Based Uniform Workbench for Simulating and Executing Distributed Mobile Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "116--127", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Frickey:2004:CJA, author = "Tancred Frickey and Andrei Lupas", title = "{CLANS}: a {Java} application for visualizing protein families based on pairwise similarity", journal = j-BIOINFORMATICS, volume = "20", number = "18", pages = "3702--3704", day = "12", month = dec, year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "3", } @Article{Fu:2004:TJW, author = "C. Fu and B. G. Ryder and A. Milanova and D. Wonnacott", title = "Testing of {Java Web} Services for Robustness", journal = "Software Engineering Notes", volume = "29", number = "4", pages = "23--33", year = "2004", CODEN = "????", ISSN = "0163-5948", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Fujiwara:2004:SAJ, author = "Y. Fujiwara and S. Okada and T. Suzuki and Y. Ohnishi and H. Yoshida", title = "Self-Adaptive {Java} Production System and Its Application to a Learning Assistance System", journal = "IEICE Transactions on Information and Systems E Series D", volume = "87", number = "9", pages = "2186--2194", year = "2004", CODEN = "????", ISSN = "0916-8532", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Fung:2004:JBP, author = "Chun Che Fung and Jia Bin Li and Kok Wai Wong and Kit Po Wong", title = "A {Java}-based parallel platform for the implementation of evolutionary computation for engineering applications", journal = j-INT-J-SYST-SCI, volume = "35", number = "13--14", pages = "741--750", month = nov, year = "2004", CODEN = "IJSYA9", ISSN = "0020-7721", ISSN-L = "0020-7721", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, baddate = "Numbers 13-14/20 October-15 November 2004", fjournal = "International Journal of Systems Science", pagecount = "10", } @Article{Funika:2004:MSD, author = "W. Funika and M. Bubak and M. Smetek", title = "Monitoring System for Distributed {Java} Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "3038", pages = "472--479", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gall:2004:BEC, author = "M. Gall and R. Kutner and A. Majerowski and D. Zebrowski", title = "{Bose--Einstein} Condensation Studied by the Real-Time {Monte Carlo} Simulation in the Frame of {Java} Applet", journal = j-LECT-NOTES-COMP-SCI, volume = "3039", pages = "673--678", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gall:2004:PIC, author = "M. Gall and R. Kutner and W. Wesela", title = "The Proof and Illustration of the Central Limit Theorem by {Brownian} Numerical Experiments in Real Time within the {Java} Applet", journal = j-LECT-NOTES-COMP-SCI, volume = "3037", pages = "467--474", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Geary:2004:CJF, author = "David M. Geary and Cay S. Horstmann", title = "{Core JavaServer} faces", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xvii + 658", year = "2004", ISBN = "0-13-146305-5 (paperback)", ISBN-13 = "978-0-13-146305-9 (paperback)", LCCN = "TK5105.8885.J38 G433 2004", bibdate = "Mon Mar 27 09:06:47 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Java 2 platform, enterprise edition series", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web site development; Web sites; Design", } @Article{Georges:2004:JPR, author = "A. Georges and M. Christiaens and M. Ronsse and K. {De Bosschere}", title = "{JaRec}: a portable record\slash replay environment for multi-threaded {Java} applications", journal = j-SPE, volume = "34", number = "6", pages = "523--547", month = may, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.579", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:29 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "24 Feb 2004", } @Article{Georges:2004:MLP, author = "A. Georges and D. Buytaert and L. Eeckhout and K. DeBosschere", title = "Method-Level Phase Behavior in {Java} Workloads", journal = j-SIGPLAN, volume = "39", number = "10", pages = "270--287", year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Gestwicki:2004:JJI, author = "Paul V. Gestwicki and Bharat Jayaraman", title = "{JIVE}: {Java} interactive visualization environment", journal = j-SIGPLAN, volume = "39", number = "10", pages = "226--228", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Ghosh:2004:GJC, author = "Debasish Ghosh", title = "Generics in {Java} and {C++}: a comparative model", journal = j-SIGPLAN, volume = "39", number = "5", pages = "40--47", month = may, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Goldman:2004:CFI, author = "Kenneth J. Goldman", title = "A concepts-first introduction to computer science", journal = j-SIGCSE, volume = "36", number = "1", pages = "432--436", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971446", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We present a unique ``concepts-first'' curriculum that exposes students without programming experience to the intellectual depth and breadth of computer science through hands-on experience with software development. The curriculum is supported by JPie, a tightly integrated programming environment that enables live construction of Java applications through direct manipulation of graphical representations of programming abstractions. The curriculum, projects, and classroom experience are described.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Goldman:2004:IEB, author = "K. J. Goldman", title = "An interactive environment for beginning {Java} programmers", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "3--24", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Gonzalez:2004:WOO, author = "S. Gonzalez and W. DeMeuter and P. Costanza and S. Ducasse and R. Gabriel and T. DHondt", title = "2nd Workshop on Object-Oriented Language Engineering for the Post-{Java} Era: Back to Dynamicity", journal = j-LECT-NOTES-COMP-SCI, volume = "3344", pages = "49--61", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Goodrich:2004:DSA, author = "Michael T. Goodrich and Roberto Tamassia", title = "Data Structures and Algorithms in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Third", pages = "xvii + 681", year = "2004", ISBN = "0-471-46983-1 (hardcover)", ISBN-13 = "978-0-471-46983-4 (hardcover)", LCCN = "QA76.73.J38 G66 2004", bibdate = "Thu Mar 22 12:04:32 MDT 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/bios/wiley046/2003071070.html; http://www.loc.gov/catdir/description/wiley041/2003071070.html; http://www.loc.gov/catdir/toc/wiley041/2003071070.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Data structures (Computer science); Computer algorithms", } @Article{Gordon:2004:C, author = "Donald Gordon and James Noble and Robert Biddle", title = "{ConstrainedJava}", journal = j-SIGPLAN, volume = "39", number = "10", pages = "33--34", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Gray:2004:JBA, author = "J. Gray", title = "A {Java}-based approach for teaching principles of adaptive and evolvable software", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "51--69", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Groce:2004:HMC, author = "Alex Groce and Willem Visser", title = "Heuristics for model checking {Java} programs", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "6", number = "4", pages = "260--276", month = aug, year = "2004", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-003-0130-9", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Jul 5 08:24:02 MDT 2005", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1433-2779&volume=6&issue=4; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1433-2779&volume=6&issue=4&spage=260", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Article{Gundersen:2004:DSJ, author = "Geir Gundersen and Trond Steihaug", title = "Data structures in {Java} for matrix computations", journal = j-CCPE, volume = "16", number = "8", pages = "799--815", month = jul, year = "2004", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.793", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:54 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "10 Jun 2004", } @Book{Habibi:2004:JRE, author = "Mehran Habibi", title = "{Java} Regular Expressions: Taming the {java.util.regex} Engine", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "255 (est.)", year = "2004", ISBN = "1-59059-107-0", ISBN-13 = "978-1-59059-107-9", LCCN = "????", bibdate = "Sat Apr 03 08:05:36 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Harder:2004:JUV, author = "R. W. Harder and R. R. Hill and J. T. Moore", title = "A {Java} universal vehicle router for routing unmanned aerial vehicles", journal = j-INT-TRANS-OPL-RES, volume = "11", number = "3", pages = "259--275", month = may, year = "2004", CODEN = "ITORF9", ISSN = "0969-6016", ISSN-L = "0969-6016", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "International Transactions in Operational Research", pagecount = "17", } @Book{Harold:2004:JNP, author = "Elliotte Rusty Harold", title = "{Java} network programming", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xxii + 735", year = "2004", ISBN = "0-596-00721-3", ISBN-13 = "978-0-596-00721-8", LCCN = "QA76.625; QA76.625 .H367 2004eb; QA76.625 .H367 2004; QA76.625 .H367 2005", bibdate = "Tue Aug 5 17:43:16 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007218", acknowledgement = ack-nhfb, remark = "Developing networked applications. Previous edition 2000.", subject = "Internet programming; Handbooks, manuals, etc; Application program interfaces (Computer software); Java (Computer program language)", } @Article{Hauswirth:2004:PEU, author = "Matthias Hauswirth and Peter F. Sweeney and Amer Diwan", title = "Performance explorer: understanding {Java} application behavior", journal = j-SIGPLAN, volume = "39", number = "10", pages = "31--32", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Havelund:2004:MJP, author = "K. Havelund and G. Rosu", title = "Monitoring {Java} Programs with {Java PathExplorer}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "55", number = "2", pages = "1--18", month = jan, year = "2004", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", pagecount = "18", } @Article{Havelund:2004:ORV, author = "K. Havelund and G. Rosu", title = "An Overview of the Runtime Verification Tool {Java PathExplorer}: Special Issue on Selected Papers from the {First International Workshop on Runtime Verification Held in Paris, July 2001 (RV01)}", journal = j-FORM-METHODS-SYST-DES, volume = "24", number = "2", pages = "189--215", month = mar, year = "2004", CODEN = "FMSDE6", ISSN = "0925-9856", ISSN-L = "0925-9856", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Formal Methods in System Design", pagecount = "27", } @Article{Hayden:2004:INW, author = "T. W. Hayden and E. C. Loomis", title = "Integrating New {Web\slash Java} Technologies: Results from {KnowledgeKinetics Version 4.0 Research and Development}", journal = j-SIM-SERIES, volume = "36", number = "1", publisher = "Society for Computer Simulation", pages = "56--61", year = "2004", CODEN = "SMCPAX", ISSN = "0735-9276", bibdate = "Mon Jan 10 05:55:45 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Simulation series", } @Article{Heidinger:2004:JMS, author = "F. Heidinger and M. Mathes and H. Dohmann", title = "{Java Messaging Service (JMS)---Einsatz in der Industrieautomation}. ({German}) [{Java Messaging Service (JMS)}---Employment in industrial automation]", journal = "Automatisierungstechnische Praxis", volume = "46", number = "5", pages = "61--70", year = "2004", CODEN = "????", ISSN = "0178-2320", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Article{Hendrix:2004:EFP, author = "T. Dean Hendrix and James H. {Cross II} and Larry A. Barowski", title = "An extensible framework for providing dynamic data structure visualizations in a lightweight {IDE}", journal = j-SIGCSE, volume = "36", number = "1", pages = "387--391", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971433", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A framework for producing dynamic data structure visualizations within the context of a lightweight IDE is described. Multiple synchronized visualizations of a data structure can be created with minimal coding through the use of an external viewer model. The framework supplies a customizable viewer template as well as high-level APIs to a graph drawing library and the Java Debugger Interface. Initial classroom use has demonstrated the framework's ease of use as well as its potential to as an aid to student learning.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hepper:2004:JPS, author = "S. Hepper", title = "The {Java} Portlet Specification. {Die Java Portlet Spezifikation}", journal = "IT", volume = "46", number = "5", pages = "233--244", year = "2004", CODEN = "????", ISSN = "1611-2776", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Higuera:2004:MMR, author = "T. Higuera and V. Issarny and M. Banatre and F. Parain", title = "Memory Management for Real-Time {Java}: An Efficient Solution using Hardware Support", journal = j-REAL-TIME-SYST, volume = "26", number = "1", pages = "63--87", year = "2004", CODEN = "RESYE9", ISSN = "0922-6443", ISSN-L = "0922-6443", bibdate = "Mon Jan 5 17:25:38 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Real-Time Systems", } @Article{HigueraToledano:2004:SBS, author = "M. T. HigueraToledano", title = "Studying the Behaviour of the Single Parent Rule in Real-Time {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "268--277", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Holliday:2004:JAI, author = "M. A. Holliday", title = "A {Java} Applet for Illustrating {Internet} Error Control", journal = j-MATH-COMP-EDU, volume = "38", number = "3", pages = "326--332", year = "2004", CODEN = "MCEDDA", ISSN = "0730-8639", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mathematics and computer education", } @Article{Holloway:2004:JGI, author = "A. Holloway", title = "{James Gosling}: The inventor of {Java} on programming, luck and his grandmother", journal = "Canadian Business", volume = "77", number = "8", pages = "74--74", year = "2004", CODEN = "????", ISSN = "0008-3100", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Holzner:2004:E, author = "Steven Holzner", title = "{Eclipse}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiv + 317", year = "2004", ISBN = "0-596-00641-1", ISBN-13 = "978-0-596-00641-9", LCCN = "QA76.73.J38 H63 2004", bibdate = "Thu Apr 21 09:26:17 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596006419", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Book{Holzner:2004:EC, author = "Steve Holzner", title = "{Eclipse} Cookbook", publisher = pub-ORA, address = pub-ORA:adr, pages = "362 (est.)", year = "2004", ISBN = "0-596-00710-8", ISBN-13 = "978-0-596-00710-2", LCCN = "", bibdate = "Sat Jul 17 07:34:58 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95, CAN\$65.95, UK\pounds 31.95", URL = "http://www.oreilly.com/catalog/eclipseckbk/", acknowledgement = ack-nhfb, } @Article{Hu:2004:XED, author = "E. Y. S. Hu and A. Wellings and G. Bernat", title = "{XRTJ}: An Extensible Distributed High-Integrity Real-Time {Java} Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "2968", pages = "208--228", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Huang:2004:FPL, author = "H. Huang and L. Zhang and Q. Cui and T. Jiang and S. Ma and Y. Gao", title = "Finding Potential Ligands for {PDZ} Domains by {Tailfit}, a {JAVA} Program", journal = "Chinese Medical Sciences Journal", volume = "19", number = "2", pages = "97--104", year = "2004", CODEN = "????", ISSN = "1001-9294", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Huang:2004:MIV, author = "S. Huang and R. Baimouratov and P. Xiao and A. Ananthasubramaniam and W. L. Nowinski", title = "A medical imaging and visualization toolkit in {Java} [5367-05]", journal = j-PROC-SPIE, volume = "5367", number = "", pages = "48--58", year = "2004", CODEN = "PSISDG", ISSN = "0277-786X (print), 1996-756X (electronic)", ISSN-L = "0277-786X", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Proceedings of the SPIE --- The International Society for Optical Engineering", } @Article{Hubbers:2004:IFV, author = "E. Hubbers and M. Oostdijk and E. Poll", title = "Implementing a {Formally Verifiable Security Protocol} in {Java Card}", journal = j-LECT-NOTES-COMP-SCI, volume = "2802", pages = "213--226", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Mar 3 07:11:27 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Hubbers:2004:RAC, author = "E. Hubbers and E. Poll", title = "Reasoning about Card Tears and Transactions in {Java Card}", journal = j-LECT-NOTES-COMP-SCI, volume = "2984", number = "??", pages = "114--128", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Huet:2004:HPJ, author = "Fabrice Huet and Denis Caromel and Henri E. Bal", title = "A High Performance {Java} Middleware with a Real Application", crossref = "ACM:2004:SHP", pages = "2--2", year = "2004", bibdate = "Tue Dec 27 07:57:20 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Hulaas:2004:EJG, author = "J. Hulaas and W. Binder and G. DiMarzoSerugendo", title = "Enhancing {Java Grid} Computing Security with Resource Control", journal = j-LECT-NOTES-COMP-SCI, volume = "3270", pages = "30--47", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Hunt:2004:PUT, author = "Andrew Hunt and David Thomas", title = "Pragmatic unit testing: in {Java} with {JUnit}", volume = "2, [pt. 2]", publisher = pub-PRAGMATIC-BOOKSHELF, address = pub-PRAGMATIC-BOOKSHELF:adr, pages = "xv + 159", year = "2004", ISBN = "0-9745140-1-2", ISBN-13 = "978-0-9745140-1-7", LCCN = "QA76.76.T48 H862 2004", bibdate = "Tue Aug 5 18:13:38 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Pragmatic starter kit series", URL = "http://www.oreilly.com/catalog/9780974514017", acknowledgement = ack-nhfb, remark = "The Pragmatic Programmers.", subject = "Computer programs; Testing; Computer programming; Java (Computer program language)", tableofcontents = "Introduction \\ Your first unit tests \\ Writing tests in JUnit \\ What to test : the right-BICEP \\ CORRECT boundary conditions \\ Using mock objects \\ Properties of good tests \\ Testing on a project \\ Design issues", } @Article{Ishii:2004:SJS, author = "Y. Ishii and T. Ito", title = "A secure {Java} System with Confined Types and its Application", journal = "Record of Electrical and Communication Engineering Conversazione Tohoku University", volume = "72", number = "2", pages = "132--133", year = "2004", CODEN = "????", ISSN = "0385-7719", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{IssiCamy:2004:WPD, author = "L{\'a}zaro {Issi Camy} and Joseph {Issi Cohen}", title = "The {Web} programmer's desk reference: a complete cross-reference to {HTML}, {CSS}, and {JavaScript}", publisher = pub-NO-STARCH, address = pub-NO-STARCH:adr, pages = "xxxiii + 1068", year = "2004", ISBN = "1-59327-011-9", ISBN-13 = "978-1-59327-011-7", LCCN = "TK5105.888 .I572 2004eb", bibdate = "Tue Aug 5 18:17:39 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9781593270117", acknowledgement = ack-nhfb, subject = "Web sites; Design; Internet programming; HTML (Document markup language)", xxpages = "xxxiii + 1085", } @Article{Itani:2004:JAL, author = "W. Itani and A. Kayssi", title = "{J2ME} application-layer end-to-end security for m-commerce", journal = j-J-NETW-COMPUT-APPL, volume = "27", number = "1", pages = "13--32", month = jan, year = "2004", CODEN = "JNCAF3", ISSN = "1084-8045 (print), 1095-8592 (electronic)", ISSN-L = "1084-8045", bibdate = "Tue Jan 27 06:08:07 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Network and Computer Applications", journal-URL = "http://www.sciencedirect.com/science/journal/10848045", pagecount = "20", } @Article{Jacobs:2004:JPV, author = "B. Jacobs and E. Poll", title = "{Java} Program Verification at {Nijmegen}: Developments and Perspective", journal = j-LECT-NOTES-COMP-SCI, volume = "3233", pages = "134--153", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jacobs:2004:STS, author = "P. H. M. Jacobs and A. Verbraeck", title = "Single-Threaded Specification of Process-Interaction Formalism in {Java}", journal = "Winter Simulation Conference", volume = "2", pages = "1548--1555", year = "2004", CODEN = "????", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Jacobs:2004:WPC, author = "B. Jacobs", title = "Weakest pre-condition reasoning for {Java} programs with {JML} annotations", journal = j-J-LOGIC-ALG-PROG, volume = "58", number = "1--2", pages = "61--88", year = "2004", CODEN = "????", ISSN = "1567-8326", ISSN-L = "1567-8326", bibdate = "Tue Jan 27 06:08:07 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Logic and Algebraic Programming", } @Article{Jacobson:2004:ITE, author = "N. Jacobson and A. Thornton", title = "It is Time to Emphasize {ArrayLists} over {Arrays} in {Java}-based First Programming Courses", journal = j-SIGCSE, volume = "36", number = "4", pages = "88--92", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Jeong:2004:JBS, author = "J. Jeong and D. Shin and D. Shin and K. Moon", title = "{Java}-Based Single Sign-On Library Supporting {SAML (Security Assertion Markup Language)} for Distributed {Web} Services", journal = j-LECT-NOTES-COMP-SCI, volume = "3007", pages = "891--894", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jiahai:2004:TWO, author = "Yang Jiahai and Duan Haixin and Wu Jianping and Li Xing", title = "Thresholds: Workflow Oriented Network Management: a {Web\slash Java} Approach", journal = "Journal of Network and Systems Management", volume = "12", number = "4", pages = "431--439", month = dec, year = "2004", CODEN = "????", ISSN = "1064-7570", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "9", } @Article{Jian:2004:DJJ, author = "L. Jian", title = "Distributed {Java} Just-in-Time compiler for embedded system", journal = "Cognitive Science Research Paper- University of Sussex Csrp", volume = "571", pages = "30--31", year = "2004", CODEN = "????", ISSN = "1350-3162", bibdate = "Sat Dec 18 11:38:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Jipping:2004:IWW, author = "M. J. Jipping and A. Kalafut and N. Kooistra and K. Ludewig", title = "Investigating Wired and Wireless Networks Using a {Java}-based Programmable Sniffer", journal = j-SIGCSE, volume = "36", number = "3", pages = "12--16", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Jo:2004:CCF, author = "J. W. Jo and B. M. Chang", title = "Constructing Control Flow Graph for {Java} by Decoupling Exception Flow from Normal Flow", journal = j-LECT-NOTES-COMP-SCI, volume = "3043", pages = "106--113", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jo:2004:UEA, author = "Jang-Wu Jo and Byeong-Mo Chang and Kwangkeun Yi and Kwang-Moo Choe", title = "An uncaught exception analysis for {Java}", journal = j-J-SYST-SOFTW, volume = "72", number = "1", pages = "59--69", month = jun, year = "2004", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed May 18 10:27:24 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @InProceedings{Jordan:2004:EJT, author = "Mick Jordan and Grzegorz Czajkowski and Kirill Kouklinski and Glenn Skinner", title = "Extending a {J2EE} Server with Dynamic and Flexible Resource Management", crossref = "Jacobsen:2004:MAI", pages = "439--??", year = "2004", bibdate = "Mon Jun 06 06:28:13 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Juric:2004:JRR, author = "Matjaz B. Juric and Bostjan Kezmah and Marjan Hericko and Ivan Rozman and Ivan Vezocnik", title = "{Java RMI}, {RMI} tunneling and {Web} services comparison and performance analysis", journal = j-SIGPLAN, volume = "39", number = "5", pages = "58--65", month = may, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Kaczmarek:2004:SEE, author = "J. Kaczmarek and M. Kucharski", title = "Size and effort estimation for applications written in {Java}", journal = j-INFO-SOFTWARE-TECH, volume = "46", number = "9", pages = "589--601", year = "2004", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", } @Article{Kaiya:2004:MDF, author = "H. Kaiya and K. Sasaki and K. Kaijiri", title = "A Method to Develop Feasible Requirements for {Java} Mobile Code Application", journal = "IEICE Transactions on Information and Systems E Series d", volume = "87", number = "4", pages = "811--821", year = "2004", CODEN = "????", ISSN = "0916-8532", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Kalinovsky:2004:CJT, author = "Alex Kalinovsky", title = "Covert {Java}: Techniques for Decompiling, Patching, and Reverse Engineering", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "x + 268", year = "2004", ISBN = "0-672-32638-8", ISBN-13 = "978-0-672-32638-7", LCCN = "QA76.73.J38 K35 2004", bibdate = "Sat Jul 03 14:44:33 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$29.99", acknowledgement = ack-nhfb, } @Article{Kamina:2004:MDI, author = "T. Kamina and T. Tamai", title = "{McJava} --- {A} Design and Implementation of {Java} with Mixin-Types", journal = j-LECT-NOTES-COMP-SCI, volume = "3302", pages = "398--414", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Keen:2004:JFD, author = "A. W. Keen and T. Ge and J. T. Maris and R. A. Olsson", title = "{JR}: Flexible Distributed Programming in an Extended {Java}", journal = j-TOPLAS, volume = "26", number = "3", pages = "578--608", year = "2004", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Keschenau:2004:REU, author = "Martin Keschenau", title = "Reverse engineering of {UML} specifications from {Java} programs", journal = j-SIGPLAN, volume = "39", number = "10", pages = "326--327", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Khondkar:2004:AAI, author = "P. Khondkar and M. A. Fukase and C. D. Lima and T. Nakamura", title = "An Architecture to Allow Intrinsic Concurrency on {Java} Processors for Embedded Systems", journal = "Information", volume = "7", number = "3", pages = "351--366", year = "2004", CODEN = "????", ISSN = "1343-4500", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Khondkar:2004:EEB, author = "P. Khondkar and M. A. Fukase and T. Nakamura", title = "Enhancing Execution Bandwidth of {Java}-Embedded Processor", journal = "Information", volume = "7", number = "2", pages = "215--226", year = "2004", CODEN = "????", ISSN = "1343-4500", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Khurshid:2004:CJI, author = "S. Khurshid and D. Marinov", title = "Checking {Java} Implementation of a Naming Architecture Using {Testera}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "55", number = "3", pages = "1--21", month = jan, year = "2004", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", pagecount = "21", } @Article{Khurshid:2004:TSB, author = "S. Khurshid and D. Marinov", title = "{TestEra} Specification-Based Testing of {Java} Programs Using {SAT}", journal = "Automated Software Engineering", volume = "11", number = "4", pages = "403--434", year = "2004", CODEN = "????", ISSN = "0928-8910", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kiczales:2004:CLG, author = "G. Kiczales", title = "Crosscut: a Little Goes a Long Way: Attributes in {C\#} and annotations in {Java} provide a hook for principled macros and metaprogramming in the {C} family. {Lisp} has had this technology for years, offering many lessons", journal = "Software Development", volume = "12", number = "5", pages = "52--53", year = "2004", CODEN = "????", ISSN = "1070-8588", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kim:2004:EEJ, author = "S. Kim and S. Tomar and N. Vijaykrishnan and M. Kandemir and M. J. Irwin", title = "Energy-efficient {Java} execution using local memory and object co-location", journal = j-IEE-PROC-COMPUT-DIGIT-TECH, volume = "151", number = "1", pages = "33--42", year = "2004", CODEN = "ICDTEA", ISSN = "1350-2387 (print), 1359-7027 (electronic)", ISSN-L = "1350-2387", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEE Proceedings. Computers and Digital Techniques", } @Article{Kim:2004:JMRa, author = "M. Kim and S. Kannan and I. Lee and O. Sokolsky and M. Viswanathan", title = "{Java-MaC} --- {A} Run-time Assurance Tool for {Java} Programs", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "55", number = "2", pages = "1--18", month = jan, year = "2004", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", pagecount = "18", } @Article{Kim:2004:JMRb, author = "M. Kim and M. Viswanathan and S. Kannan and I. Lee and O. Sokolsky", title = "{Java-MaC}: a Run-Time Assurance Approach for {Java} Programs", journal = j-FORM-METHODS-SYST-DES, volume = "24", number = "2", pages = "129--155", month = mar, year = "2004", CODEN = "FMSDE6", ISSN = "0925-9856", ISSN-L = "0925-9856", bibdate = "Mon Apr 5 09:19:58 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", note = "Special Issue on Selected Papers from the First International Workshop on Runtime Verification Held in Paris, July 2001 (RV01).", acknowledgement = ack-nhfb, fjournal = "Formal Methods in System Design", pagecount = "27", } @Article{Kim:2004:VJJ, author = "S. Kim and S. M. Moon and K. Ebcioglu and E. Altman", title = "{VLaTTe}: a {Java} Just-in-Time Compiler for {VLIW} with Fast Scheduling and Register Allocation", journal = "IEICE Transactions on Information and Systems E Series D", volume = "87", number = "7", pages = "1712--1720", year = "2004", CODEN = "????", ISSN = "0916-8532", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kirkegaard:2004:SAX, author = "C. Kirkegaard and A. Moller and M. I. Schwartzbach", title = "Static Analysis of {XML} Transformations in {Java}", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "30", number = "3", pages = "181--192", month = mar, year = "2004", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2004.1271173", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1271173", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Ko:2004:TCG, author = "K. M. Ko and S. G. Kim", title = "Target Code Generation Using the Code Expansion Technique for {Java} Bytecode", journal = j-LECT-NOTES-COMP-SCI, volume = "3320", pages = "752--755", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kodaganallur:2004:ILP, author = "Viswanathan Kodaganallur", title = "Incorporating Language Processing into {Java} Applications: a {JavaCC} Tutorial", journal = j-IEEE-SOFTWARE, volume = "21", number = "4", pages = "70--77", month = jul # "\slash " # aug, year = "2004", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2004.16", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Thu Nov 10 09:16:24 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/so/2004/04/s4070s.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Koga:2004:CAT, author = "M. Koga", title = "Computer Aided Total Development of Control System --- Control System Design in {Java}", journal = j-SYST-CONTROL-INFO, volume = "48", number = "4", pages = "138--143", year = "2004", CODEN = "SYCNA9", ISSN = "0916-1600", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Systems, Control and Information = Shisutemu Seigyo Joho Gakkai shi", } @Article{Kolling:2004:EAB, author = "M. Kolling and D. J. Barnes", title = "Enhancing Apprentice-Based Learning of {Java}", journal = j-SIGCSE, volume = "36", number = "1", pages = "286--290", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Mon Apr 19 11:57:57 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kong:2004:IDI, author = "J. Kong", title = "The implementation of {Dicom} interface software using {Java}", journal = "Chinese Journal of Biomedical Engineering", volume = "23", number = "1", pages = "10--14", year = "2004", CODEN = "????", ISSN = "0258-8021", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kortenkamp:2004:GTW, author = "U. Kortenkamp and D. Materlik", title = "Geometry teaching in wireless classroom environments using {Java} and {J2ME}", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "71--85", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Kosa:2004:TVC, author = "Martha J. Kosa and Mark A. Boshart", title = "Treemap visualizations for {CS2}", journal = j-SIGCSE, volume = "36", number = "3", pages = "259--259", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008092", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Computer science instructors periodically need to update their classroom examples and programming assignments in order to reflect changes in current practice in the field and to discourage copying by students. As experienced CS2 instructors, we regularly face this challenge. The topics in our CS2 course are standard and include recursion, lists, stacks, queues, and trees (including B-trees as well as standard binary search trees and AVL trees). Our students use Java (including GUIs). We have experimented with having students use and write programs to visualize various data structures. The students have written programs to visualize search trees using the traditional approach in which ovals represent nodes and lines represent links. They have also written programs to visualize search trees via a Web browser [2]. We propose an alternate visualization technique based on treemaps. We believe that treemaps are a rich source for classroom examples and assignments for CS2 instructors. Trees are useful for storing hierarchical data, and they are naturally recursive. A tree is either empty, or it has a root node with subtrees. A root is connected to its subtrees by links or branches. We had an idea to draw a tree in a square, which would be split into multiple rectangles, one for each node in the tree. As we moved down a level in the tree, we toggled the direction of the split in the rectangles from vertical to horizontal or vice versa. The root node's size in the current rectangle corresponded to its relative weight in the current subtree. The structure of the tree could be inferred by the relationships among the rectangles and their relative widths and heights. We drew several of these embeddings by hand and noted that the patterns resembled art by the Dutch abstract artist Piet Mondrian [6]. We then implemented this visualization using the Java Power Tools [4] library and noted that this visualization can be enriched with colors and graphical patterns, as in the Kaleidoscope example [3]. Our idea is an active research area in computer graphics [7]. However, it still appears to be a novel teaching idea for CS2. Ben Shneiderman [5] was the first to study two-dimensional space-filling representations of trees; he called them ``treemaps''. His motivating problem was to visualize directories in order to determine disk utilization. His algorithm was similar to our algorithm. XML documents can also be visualized using his algorithm and others [1]. Our goal is to synthesize this treemap visualization literature [1, 5] into classroom materials for CS2 instructors.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kouh:2004:DJP, author = "H. J. Kouh and K. T. Kim and S. M. Jo and W. H. Yoo", title = "Debugging of {Java} Programs Using {HDT} with Program Slicing", journal = j-LECT-NOTES-COMP-SCI, volume = "3046", pages = "524--533", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Kozlenkov:2004:PRB, author = "A. Kozlenkov and M. Schroeder", title = "{PROVA}: Rule-Based {Java}-Scripting for a {Bioinformatics Semantic Web}", journal = j-LECT-NOTES-COMP-SCI, volume = "2994", pages = "17--30", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Krishna:2004:ERT, author = "A. Krishna and D. Schmidt and R. Klefstad", title = "Enhancing {Real-Time CORBA} via {Real-Time Java} Features", journal = "International Conference on Distributed Computing Systems", volume = "24", number = "??", pages = "66--73", year = "2004", CODEN = "????", ISSN = "1063-6927", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kulkarni:2004:VJS, author = "P. Kulkarni and A. Kembhavi and S. Kale", title = "{VOTable JAVA} Streaming Writer and Applications", journal = "Astronomical Society of the Pacific Conference Series", volume = "314", number = "", pages = "346--349", year = "2004", CODEN = "????", ISSN = "1050-3390", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kumar:2004:WBT, author = "A. Kumar", title = "{Web}-Based Tutors for Learning Programming in {C++\slash Java}", journal = j-SIGCSE, volume = "36", number = "3", pages = "266", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kurniawan:2004:CSW, author = "B. Kurniawan and J. Xue", title = "A Comparative Study of {Web} Application Design Models Using the {Java} Technologies", journal = j-LECT-NOTES-COMP-SCI, volume = "3007", pages = "711--721", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Kurniawan:2004:JFP, author = "Budi Kurniawan", title = "{JavaServer Faces} programming", publisher = "McGraw-Hill/Osborne", address = "New York, NY, USA", pages = "xxii + 503", year = "2004", ISBN = "0-07-222983-7", ISBN-13 = "978-0-07-222983-7", LCCN = "TK5105.8885.J38 K87 2004", bibdate = "Wed Nov 15 10:37:03 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/description/mh051/2004303988.html; http://www.loc.gov/catdir/toc/mh051/2004303988.html", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web sites; Design; Web site development", } @Article{Langr:2004:TCS, author = "J. Langr", title = "Tech Center: Sweet and Simple {Java 1.5}'s new features-including enhanced for loops, autoboxing, variable arguments, typesafe enum, static import and metadata-make coding easier and more enjoyable to write. {Part} 3 of 3", journal = "Software Development", volume = "12", number = "5", pages = "48--51", year = "2004", CODEN = "????", ISSN = "1070-8588", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Lau:2004:NLJ, author = "H. T. (Hang Tong) Lau", title = "A numerical library in {Java} for scientists and engineers", publisher = pub-CHAPMAN-HALL-CRC, address = pub-CHAPMAN-HALL-CRC:adr, pages = "xxiii + 1063", year = "2004", ISBN = "1-58488-430-4", ISBN-13 = "978-1-58488-430-9", LCCN = "QA76.73.J38 L363 2004", bibdate = "Fri Sep 26 14:28:47 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0646/2003055149-d.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Lee:2004:EJE, author = "SeungIl Lee and Byung-Sun Yang and Soo-Mook Moon", title = "Efficient {Java} exception handling in just-in-time compilation", journal = j-SPE, volume = "34", number = "15", pages = "1463--1480", month = dec, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.622", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:35 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "18 Oct 2004", } @Article{Lee:2004:HJP, author = "H. K. Lee and B. Carpenter and G. Fox and S. B. Lim", title = "{HP Java}: programming support for high-performance {Grid}-enabled applications", journal = j-PARALLEL-ALGORITHMS-APPL, volume = "19", number = "2/3", pages = "175--193", year = "2004", CODEN = "PAAPEC", ISSN = "1063-7192", ISSN-L = "1026-7689", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Parallel Algorithms and Applications", journal-URL = "http://www.tandfonline.com/loi/gpaa20", } @Article{Lee:2004:JBN, author = "Y. Lee and S. Na", title = "{Java} Bytecode-to-{.NET} {MSIL} Translator for Construction of Platform Independent Information Systems", journal = j-LECT-NOTES-COMP-SCI, volume = "3215", pages = "826--832", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Lee:2004:OPD, author = "H. J. (Hyun Jin) Lee and W. E. Schiesser", title = "Ordinary and partial differential equation routines in {C}, {C++}, {Fortran}, {Java$^\reg $}, {Maple$^\reg $}, and {{MATLAB$^\reg $}}", publisher = pub-CHAPMAN-HALL-CRC, address = pub-CHAPMAN-HALL-CRC:adr, pages = "xiii + 519", year = "2004", ISBN = "1-58488-423-1", ISBN-13 = "978-1-58488-423-1", LCCN = "QA371.5.D37 L44 2004", MRclass = "34-04 (35-04 65-04)", MRnumber = "MR2027726 (2004j:34001)", bibdate = "Tue Mar 30 16:16:28 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/fortran3.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/maple-extract.bib; https://www.math.utah.edu/pub/tex/bib/matlab.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, keywords = "C; C++; Fortran; Maple; Matlab", subject = "Differential equations; Data processing; Differential equations, Partial; Data processing", } @InProceedings{Leff:2004:AES, author = "Avraham Leff and James T. Rayfield", title = "Alternative Edge-Server Architectures for {Enterprise JavaBeans} Applications", crossref = "Jacobsen:2004:MAI", pages = "195--??", year = "2004", bibdate = "Mon Jun 06 06:28:13 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Lhotak:2004:JBB, author = "Ond{\v{r}}ej Lhot{\'a}k and Laurie Hendren", title = "{Jedd}: a {BDD}-based relational extension of {Java}", journal = j-SIGPLAN, volume = "39", number = "6", pages = "158--169", month = may, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Li:2004:ACF, author = "Peng Li and Steve Zdancewic", title = "Advanced control flow in {Java} card programming", journal = j-SIGPLAN, volume = "39", number = "7", pages = "165--174", month = jul, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Li:2004:DID, author = "C. Li", title = "Design and implementation of database connection --- pool based on {Java}", journal = "Journal- Anhui University of Technology", volume = "21", number = "1", pages = "53--56", year = "2004", CODEN = "????", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Li:2004:FRT, author = "S. Q. Li and H. Y. Chen and Y. X. Su", title = "A Framework of Reachability Testing for {Java} Multithread Programs", journal = "IEEE International Conference on Systems Man and Cybernetics", volume = "3", pages = "2730--2734", year = "2004", CODEN = "????", ISSN = "1062-922X", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Li:2004:MSJ, author = "B. X. Li and X. C. Fan and J. Pang", title = "A Model for Slicing {JAVA} Programs Hierarchically", journal = j-J-COMP-SCI-TECH, volume = "19", number = "6", pages = "848--858", year = "2004", CODEN = "JCTEEM", ISSN = "1000-9000", ISSN-L = "1000-9000", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of computer science and technology", } @Article{Li:2004:WAS, author = "H. Li and J. Cai and R. Zhu", title = "Wireless applications service platform based on {XML} and {Java}", journal = "Journal- Zhejiang University of Technology", volume = "32", number = "2", pages = "182--185", year = "2004", CODEN = "????", ISSN = "1006-4303", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @InProceedings{Likos:2004:JBCa, author = "Johannis Likos", title = "{$ \mu o \nu o 2 \pi o \lambda \upsilon $}: {Java}-Based Conversion of Monotonic to Polytonic {Greek}", crossref = "Syropoulos:2004:TXD", pages = "34--54", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Nov 16 17:43:44 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Likos:2004:PMJb, author = "Johannis Likos", title = "\pkg{monopoly}: {Java}-based conversion of monotonic to polytonic {Greek}", journal = j-TUGboat, volume = "25", number = "0", pages = "111--111", month = aug, year = "2004", CODEN = "????", ISSN = "0896-3207", ISSN-L = "0896-3207", bibdate = "Mon Aug 10 16:57:56 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/tugboat.bib", URL = "https://tug.org/TUGboat/tb25-0/likos.pdf", acknowledgement = ack-nhfb, fjournal = "TUGboat", issue = "79", journal-URL = "https://tug.org/TUGboat/", } @Article{Lim:2004:IAW, author = "B. Lim and S. R. Ajjarapu and K. Thummala", title = "Interfacing with {Amazon Web} Services Using {Java} and {.NET}: a Comparative Study", journal = "Journal of Internet Commerce", volume = "3", number = "4", pages = "19--42", year = "2004", CODEN = "????", ISSN = "1533-2861", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Lin:2004:OJB, author = "L. Lin and L. Huang and Y. Sun", title = "Optimizing {Java} Based {Web} Services by Partial Evaluation", journal = j-LECT-NOTES-COMP-SCI, volume = "3032", pages = "1071--1074", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lindquist:2004:JCS, author = "T. Lindquist and M. Diarra and B. Millard", title = "A {Java} Cryptography Service Provider Implementing One-Time Pad ({INIDP04})", journal = "Proceedings of the Annual Hawaii International Conference on System Sciences", volume = "CONF37", pages = "189", year = "2004", CODEN = "????", ISSN = "1060-3425", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2004:AJI, author = "H. Liu and Q. Peng and J. Shen and C. Yan", title = "Algorithms and {Java} Implementation of {NASO} Publish-Propagate Replication Scheme", journal = j-MINI-MICRO-SYSTEMS, volume = "25", number = "7", pages = "1307--1312", year = "2004", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Liu:2004:DFA, author = "C. H. Liu", title = "Data Flow Analysis and Testing of {Java Server Pages}", journal = "Compsac", volume = "CONF28", number = "SUPP", pages = "114--119", year = "2004", CODEN = "????", ISSN = "0730-3157", bibdate = "Sat Dec 18 11:38:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Liu:2004:JBD, author = "Z. Liu and H. Yu and E. P. Lim and M. Yin and D. H. Goh and Y. L. Theng and W. K. Ng", title = "A {Java}-based digital library portal for geography education", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "87--105", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Liu:2004:JPV, author = "H. Liu and J. S. Moore", title = "{Java} Program Verification via a {JVM} Deep Embedding in {ACL2}", journal = j-LECT-NOTES-COMP-SCI, volume = "3223", pages = "184--200", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Lopez-Herrejon:2004:UIT, author = "Roberto E. Lopez-Herrejon and Morrie Schulman", title = "Using interactive technology in a short {Java} course: an experience report", journal = j-SIGCSE, volume = "36", number = "3", pages = "203--207", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008051", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Keeping students alert and responsive during lectures is a challenge even for experienced teachers in small group settings. Research has shown the importance of student participation and involvement in the learning process. Many ideas and strategies have been proposed to promote these two vital education elements [5]. Among them is the use of interactive technology where the instructor asks a question to the class and each student answers individually. These answers are tallied and the professor can get immediate, quantitative, and real-time feedback information that can be used to detect and address comprehension problems and to adapt the lecture plan accordingly. In this paper we report our experiences using a wireless interactive system named the Classroom Performance System (CPS) [9] in a fast-paced, short but comprehensive Java programming course. We present the challenges we faced and the lessons we learned in designing and delivering lectures using this type of technology.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{LopezHerrejon:2004:UIT, author = "R. E. {Lopez Herrejon} and M. Schulman", title = "Using Interactive Technology in a Short {Java} Course: An Experience Report", journal = j-SIGCSE, volume = "36", number = "3", pages = "203--207", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Lu:2004:DIM, author = "E. J. Lu and Y. Y. Cheng", title = "Design and implementation of a mobile database for {Java} phones", journal = j-COMP-STANDARDS-INTERFACES, volume = "26", number = "5", pages = "401--410", year = "2004", CODEN = "CSTIEZ", ISSN = "0920-5489 (print), 1872-7018 (electronic)", ISSN-L = "0920-5489", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Standards and Interfaces", } @Misc{Luke:2004:DMT, author = "Sean Luke", title = "Documentation for the {Mersenne Twister} in {Java}", howpublished = "Web site.", month = oct, year = "2004", bibdate = "Wed May 13 15:49:46 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/prng.bib", URL = "http://www.cs.gmu.edu/~sean/research/mersenne", acknowledgement = ack-nhfb, } @Article{Ma:2004:JTP, author = "H. Ma and C. Zhang", title = "{JAVA} and Threads Programming", journal = "Hebei Journal of Industrial Science and Technology", volume = "21", number = "4", pages = "40--42", year = "2004", CODEN = "????", ISSN = "1008-1534", bibdate = "Mon Nov 29 06:56:05 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Mahmoud:2004:PEJ, author = "Q. H. Mahmoud", title = "Practice and experience with {Java} in education", journal = j-SCI-COMPUT-PROGRAM, volume = "53", number = "1", pages = "1--2", year = "2004", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Mahmoud:2004:RIC, author = "Q. H. Mahmoud and W. Dobosiewicz and D. Swayne", title = "Redesigning Introductory Computer Programming with {HTML}, {JavaScript}, and {Java}", journal = j-SIGCSE, volume = "36", number = "1", pages = "120--124", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Mon Apr 19 11:57:57 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Mahmoud:2004:WJA, author = "Qusay H. Mahmoud", title = "Wireless {Java} Applications Development", journal = j-LOGIN, volume = "29", number = "2", pages = "??--??", month = apr, year = "2004", CODEN = "LOGNEM", ISSN = "1044-6397", bibdate = "Tue Apr 11 10:52:38 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.usenix.org/publications/login/2004-04/index.html", URL = "http://www.usenix.org/publications/login/2004-04/pdfs/Mahmoud.pdf", acknowledgement = ack-nhfb, fjournal = ";login: the USENIX Association newsletter", } @Article{Marche:2004:KTC, author = "C. Marche and C. Paulin Mohring and X. Urbain", title = "The {KRAKATOA} tool for certification of {JAVA\slash JAVACARD} programs annotated in {JML}", journal = j-J-LOGIC-ALG-PROG, volume = "58", number = "1--2", pages = "89--106", year = "2004", CODEN = "????", ISSN = "1567-8326", ISSN-L = "1567-8326", bibdate = "Tue Jan 27 06:08:07 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Logic and Algebraic Programming", } @Article{McGinnis:2004:DLS, author = "L. F. McGinnis", title = "Distributing a Large-Scale, Complex Fab Simulation Using {HLA} and {Java}: Issues and Lessons", journal = "Winter Simulation Conference", volume = "2", pages = "1891--1895", year = "2004", CODEN = "????", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{McLaughlin:2004:JTD, author = "Brett McLaughlin and David Flanagan", title = "{Java 1.5 Tiger}: a developer's notebook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xix + 177", year = "2004", ISBN = "0-596-00738-8", ISBN-13 = "978-0-596-00738-6", LCCN = "QA76.73.J38 M3897 2004", bibdate = "Thu Apr 21 09:27:35 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "The developer's notebook series", URL = "http://www.oreilly.com/catalog/9780596007386", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Merson:2004:MJR, author = "P. Merson", title = "Managing {J2EE} Risks: If you're making the leap to distributed application development with {Java 2 Enterprise Edition}, take heart: You're smack in the middle of the bell curve. {Here}'s a handy guide to assessing whether your team has what it takes to succeed with {J2EE}", journal = "Software Development", volume = "12", number = "7", pages = "44--47", year = "2004", CODEN = "????", ISSN = "1070-8588", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Meunier:2004:MRT, author = "J. N. Meunier and F. Lippert and R. Jadhav and N. Harding", title = "{MDA} and Real-Time Java: The {HIDOORS} Project", journal = "Technical Report --- University of Kent at Canterbury Computing Laboratory", volume = "17", pages = "89--95", year = "2004", CODEN = "????", ISSN = "1368-1036", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, xxnote = "Check: looks like techreport, not journal, but has volume and pages??", } @Article{Mlsna:2004:WPM, author = "P. A. Mlsna", title = "Work in progress: Mastery of digital logic skills through practice using {Java} applets", journal = j-FRONTIERS-EDU-CONF, volume = "CONF34", number = "VOL 1", pages = "T1D-13--T1D14", year = "2004", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Mohapatra:2004:ETD, author = "D. P. Mohapatra and R. Mall and R. Kumar", title = "An Efficient Technique for Dynamic Slicing of Concurrent {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3285", pages = "255--262", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Moller:2004:LCO, author = "M. Moller and E. R. Olderog and H. Rasch and H. Wehrheim", title = "Linking {CSP-OZ} with {UML} and {Java}: a Case Study", journal = j-LECT-NOTES-COMP-SCI, volume = "2999", number = "??", pages = "267--286", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Monson-Haefel:2004:EJ, author = "Richard Monson-Haefel", title = "{Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fourth", pages = "xxi + 763", year = "2004", ISBN = "0-596-00530-X", ISBN-13 = "978-0-596-00530-6", LCCN = "QA76.73.J38 M65 2004", bibdate = "Mon Apr 18 15:07:33 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005306", acknowledgement = ack-nhfb, subject = "Java (Computer program language); JavaBeans", } @Article{Moodley:2004:CMP, author = "K. Moodley and H. Murrell", title = "A colour-map plugin for the open source, {Java} based, image processing package, {ImageJ}", journal = j-COMP-GEOSCI, volume = "30", number = "6", pages = "609--618", year = "2004", CODEN = "CGEODT, CGOSDN", ISSN = "0098-3004 (print), 1873-7803 (electronic)", ISSN-L = "0098-3004", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Geosciences", } @Article{Moreno:2004:PAJ, author = "Andr{\'e}s Moreno and Niko Myller and Mordechai Ben-Ari and Erkki Sutinen", title = "Program animation in {Jeliot 3}", journal = j-SIGCSE, volume = "36", number = "3", pages = "265--265", month = sep, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1026487.1008099", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Jeliot is a family of program animation systems [1]. It has been successfully used to improve the teaching of introductory programming by supplying a concrete language in which to explain programming structures and concepts [2]. Jeliot 3 [4] retains the novice-oriented GUI and animation display of the previous version, Jeliot 2000. Both versions automatically visualize the execution of user-written Java programs. Jeliot 3 introduces a new kind of design in order to make the system extendable and to add new features [5]. The front-end of system has been replaced by the DynamicJava interpreter, which was instrumented to produce an intermediate code, MCode, describing the program's runtime trace. The MCode trace is then rendered by the graphics back-end. The previous version of Jeliot animated variables, expressions, I/O and static method calls. Jeliot 3 is also capable of animating concepts for object-oriented programming: objects, class inheritance, constructors, method calls, instance fields, and reference semantics of arrays and objects. Jeliot 3 is intended to be a simple tool to be used in different kinds of learning scenarios [3]. It can be used to show and teach the basics of programming during a lecture. The lecturer can explain different concepts and show their corresponding animations with Jeliot. Students may use Jeliot 3 by themselves after the lectures to complete and understand the follow-up assignments related to the concepts learned at the lectures. Jeliot 3 can be used as a tool in interactive laboratory sessions. The visual display of the program can be used to facilitate communications about the errors. It can also support virtual courses, as where Jeliot 3 provides a tool that can assist students when external help is not available. Jeliot 3 is available under the GPL for downloading at http://www.cs.joensuu.fi/jeliot/. We intend to form a community around Jeliot 3, where teachers, students and developers could propose ideas and solutions in order to im- prove Jeliot 3 and the teaching of programming. The forum is available on the website and open for anyone interested. There are also plans for further development, for example, a new tool called JeCo (Jeliot Collaborative) [3] aims to integrate Jeliot 3 into a co-authoring environment where students can develop and visualize their programs together.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Mountjoy:2004:WDG, author = "Jon Mountjoy and Avinash Chugh", title = "{WebLogic}: The Definitive Guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 828", year = "2004", ISBN = "0-596-00432-X", ISBN-13 = "978-0-596-00432-3", LCCN = "TK5105.8885.B4 M68 2004", bibdate = "Mon Apr 18 15:06:22 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596004323", acknowledgement = ack-nhfb, remark = "``Covers versions 7 and 8.1'' --- cover. ``Development, deployment and maintenance'' --- cover.", subject = "BEA WebLogic server; Web servers; Application software; Development; Client/server computing; Java (Computer program language)", } @Article{Nakano:2004:AVF, author = "J. Nakano and M. Y. Huh and Y. Yamamoto and T. Fujiwara and I. Kobayashi", title = "Adding visualization functions of {DAVIS} to {Jasp}: Mixing two {Java}-based statistical systems", journal = j-COMP-STAT, volume = "19", number = "1", pages = "137--146", year = "2004", CODEN = "CSTAEB", ISSN = "0943-4062", ISSN-L = "0943-4062", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computational Statistics", } @Book{Nash:2004:EGJ, author = "Michael P. Nash", title = "Explorer's Guide to {Java} Open Source Tools", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "300 (est.)", year = "2004", ISBN = "1-932394-19-2", ISBN-13 = "978-1-932394-19-1", LCCN = "", bibdate = "Tue Aug 10 14:44:51 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95", URL = "http://www.manning.com/catalog/view.php?book=nash", acknowledgement = ack-nhfb, } @Article{Naumovich:2004:SAR, author = "Gleb Naumovich and Paolina Centonze", title = "Static analysis of role-based access control in {J2EE} applications", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022530", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This work describes a new technique for analysis of Java 2, Enterprise Edition (J2EE) applications. In such applications, Enterprise Java Beans (EJBs) are commonly used to encapsulate the core computations performed on Web servers. Access to EJBs is protected by application servers, according to role-based access control policies that may be created either at development or deployment time. These policies may prohibit some types of users from accessing specific EJB methods. We present a static technique for analyzing J2EE access control policies with respect to security-sensitive fields of EJBs and other server-side objects. Our technique uses points-to analysis to determine which object fields are accessed by which EJB methods, directly or indirectly. Based on this information, J2EE access control policies are analyzed to identify potential inconsistencies that may lead to security holes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nelson:2004:ESC, author = "G. Nelson", title = "Extended Static Checking for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3125", pages = "1", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Nepomuceno-Chamorro:2004:JSM, author = "I. A. Nepomuceno-Chamorro", title = "A {Java} Simulator for Membrane Computing", journal = j-J-UCS, volume = "10", number = "5", pages = "620--??", day = "28", month = may, year = "2004", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Wed Jul 6 08:14:45 MDT 2005", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_10_5/a_java_simulator_for", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Article{Newman:2004:EJC, author = "D. J. Newman", title = "Embedded {Java} Controllers", journal = "Circuit Cellar", volume = "166", pages = "16--21", year = "2004", CODEN = "????", ISSN = "1528-0608", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Nilsson:2004:IJC, author = "A. Nilsson and A. Ive and T. Ekman and G. Hedin", title = "Implementing {Java} Compilers Using {ReRAGs}", journal = j-NORDIC-J-COMPUT, volume = "11", number = "3", pages = "213--234", year = "2004", CODEN = "NJCOFR", ISSN = "1236-6064", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Nordic Journal of Computing", } @Article{Nimmer:2004:SVD, author = "J. W. Nimmer and M. D. Ernst", title = "Static verification of dynamically detected program invariants --- Integrating {Daikon} and {ESC\slash Java}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "55", number = "2", pages = "1--22", month = jan, year = "2004", CODEN = "????", ISSN = "1571-0661", bibdate = "Mon Feb 9 12:01:30 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", pagecount = "22", } @Book{Nolan:2004:DJ, author = "Godfrey Nolan", title = "Decompiling {Java}", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xiii + 264", year = "2004", ISBN = "1-59059-265-4", ISBN-13 = "978-1-59059-265-6", LCCN = "QA76.73.J38 N65 2004", bibdate = "Mon May 16 07:20:56 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Book{Oaks:2004:JT, author = "Scott Oaks and Henry Wong", title = "{Java} threads", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xvi + 340", year = "2004", ISBN = "0-596-00782-5", ISBN-13 = "978-0-596-00782-9", LCCN = "QA76.73.J38 O25 2004; QA76.73.J38 O25 2004eb; QA76.73.J38", bibdate = "Tue Aug 5 17:44:17 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007829", acknowledgement = ack-nhfb, remark = "Covers J2SE 5.0. Previous edition 1999.", subject = "Java (Computer program language); Threads (Computer programs)", } @Article{Offutt:2004:EMS, author = "Jeff Offutt and Yu-Seung Ma and Yong-Rae Kwon", title = "An experimental mutation system for {Java}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022537", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mutation is a powerful but complicated and computationally expensive testing method. Mutation is also a valuable experimental research technique that has been used in many studies. Mutation has been experimentally compared with other test criteria, and also used to support experimental comparisons of other test criteria, by using mutants as a method to create faults. In effect, mutation is often used as a ``gold standard'' for experimental evaluations of test methods. This paper presents a publicly available mutation system for Java that supports both traditional statement-level mutants and newer inter-class mutants. MUJAVA can be freely downloaded and installed with relative ease under both Unix and Windows. MUJAVA is offered as a free service to the community and we hope that it will promote the use of mutation analysis for experimental research in software testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ogasawara:2004:OPO, author = "Takeshi Ogasawara and Hideaki Komatsu and Toshio Nakatani", title = "Optimizing precision overhead for x86 processors", journal = j-SPE, volume = "34", number = "9", pages = "875--893", day = "25", month = jul, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.596", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:31 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "It is a major challenge for a Java JIT compiler to perform single-precision floating-point operations efficiently for the x86 processors. In previous research, the double-precision mode is set as the default precision mode when methods are invoked. Sophisticated approaches then use heuristic approaches to optimization by considering the trade-offs between roundings and mode switches. However, this convention introduces redundant mode switches across method boundaries. Furthermore, methods that include both single- and double-precision operations cannot switch the mode, even if single-precision operations are dominant. We propose a new approach to these problems. We eliminate redundant mode switches by ignoring the default precision mode and calling a method in the same precision mode as the caller. For methods that include both single- and double-precision methods, we reduce the overhead of rounding by isolating code segments of a given method that should be executed in the single-precision mode. We implemented our approach in IBM's Just-in-Time compiler, and obtained experimental results demonstrating that, in SPECjvm98, it consistently shows the best performance in any configuration of benchmark programs, inline policies, and processor architectures compared with previous research approaches.", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "floating-point operations; Java; precision control; x86 processors", onlinedate = "27 Apr 2004", } @Article{Olsson:2004:JPL, author = "R. A. Olsson and A. W. Keen", title = "The {JR} Programming Language: Concurrent Programming in an Extended {Java}", journal = "Kluwer International Series in Engineering and Computer Science", volume = "774", pages = "??--??", year = "2004", CODEN = "????", ISSN = "0893-3405", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Onodera:2004:LRJ, author = "T. Onodera and K. Kawachiya and A. Koseki", title = "Lock Reservation for {Java} Reconsidered", journal = j-LECT-NOTES-COMP-SCI, volume = "3086", pages = "560--584", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Orso:2004:SRT, author = "Alessandro Orso and Nanjuan Shi and Mary Jean Harrold", title = "Scaling regression testing to large software systems", journal = j-SIGSOFT, volume = "29", number = "6", pages = "241--251", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029928", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When software is modified, during development and maintenance, it is ``regression tested'' to provide confidence that the changes did not introduce unexpected errors and that new features behave as expected. One important problem in regression testing is how to select a subset of test cases, from the test suite used for the original version of the software, when testing a modified version of the software. Regression-test-selection techniques address this problem. Safe regression-test-selection techniques select every test case in the test suite that may behave differently in the original and modified versions of the software. Among existing safe regression testing techniques, efficient techniques are often too imprecise and achieve little savings in testing effort, whereas precise techniques are too expensive when used on large systems. This paper presents a new regression-test-selection technique for Java programs that is safe, precise, and yet scales to large systems. It also presents a tool that implements the technique and studies performed on a set of subjects ranging from 70 to over 500 KLOC. The studies show that our technique can efficiently reduce the regression testing effort and, thus, achieve considerable savings.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @TechReport{Owen:2004:JJE, author = "T. Owen and I. Wakeman and J. Rathke", title = "{JPolicy}: a {Java} Extension For Dynamic Access Control", type = "Technical report", institution = "University of Sussex Computer Science Department", year = "2004", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Panda:2004:WDA, author = "D. Panda", title = "What the database administrator needs to know about {Java}", journal = "Elektron: Journal of the South African Institute of Electrical Engineers", volume = "21", number = "7", pages = "74--77", year = "2004", CODEN = "????", ISSN = "1026-9193", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Pardi:2004:PCD, author = "W. {Pardi Jr.}", title = "Programming Concurrent and Distributed Algorithms In {Java}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "5", number = "11", pages = "5--5", month = nov, year = "2004", CODEN = "????", DOI = "https://doi.org/10.1109/MDSO.2004.32", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Fri Jul 15 17:50:17 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/iel5/8968/30052/01377092.pdf?isnumber=30052&prod=JNL&arnumber=1377092&arSt=+5&ared=+5&arAuthor=+Pardi%2C+W.%2C+Jr.; http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=30052&arnumber=1377092&count=5&index=4", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Parker:2004:PAC, author = "D. Parker and D. Cleary", title = "A {P2P} Approach to {ClassLoading} in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2872", pages = "144--149", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Parlante:2004:GJ, author = "Nick Parlante", title = "Graphics and {Java}", journal = j-SIGCSE, volume = "36", number = "2", pages = "26--27", month = jun, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1024338.1024364", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:09 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse36.html#Parlante04; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2004.bib", abstract = "I remember way back in the old days, it was so easy to talk to other CSE people about CS1, since we basically all knew the plot of Cooper and Clancy's of Oh Pascal! I could talk about problems with ``the var parameter lecture'' and people pretty much knew what I was talking about since the basic layout of the course was so well understood.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Parlante:2004:N, author = "Nick Parlante", title = "Niftiness", journal = j-SIGCSE, volume = "36", number = "4", pages = "26--27", month = dec, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1041624.1041650", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:12 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse36.html#Parlante04a; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2004.bib", abstract = "Back around March 21 2004, there was a long and interesting discussion on the SIGCSE list, reflecting the powerful promise and frustrations of using Java and OOP in CSI (see http://listserv.acm.org/archives/sigcse-members.html and also Bruce Kim's article this issue). For this column, I would like to use the history of the Nifty Assignments as a way to look at this complex situation.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Parlante:2004:NAG, author = "N. Parlante", title = "Nifty Assignments: Graphics and {Java}", journal = j-SIGCSE, volume = "36", number = "2", pages = "26--27", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Pasareanu:2004:VJP, author = "C. S. Pasareanu and W. Visser", title = "Verification of {Java} Programs Using Symbolic Execution and Invariant Generation", journal = j-LECT-NOTES-COMP-SCI, volume = "2989", pages = "164--181", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Pascarello:2004:JYV, author = "Eric Pascarello", title = "{JavaScript}: your visual blueprint for building dynamic {Web} pages", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xiii + 321", year = "2004", ISBN = "0-7645-7497-3 (paperback)", ISBN-13 = "978-0-7645-7497-9 (paperback)", LCCN = "TK5105.888 .P375 2004", bibdate = "Mon Jul 13 15:59:59 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Read less, learn more", URL = "http://www.loc.gov/catdir/enhancements/fy0620/2004112337-b.html; http://www.loc.gov/catdir/enhancements/fy0620/2004112337-d.html; http://www.loc.gov/catdir/toc/wiley051/2004112337.html", acknowledgement = ack-nhfb, subject = "Web site development; JavaScript (Computer program language); Internet programming", } @Article{Paterson:2004:AOP, author = "J. H. Paterson and J. Haddow", title = "Approaches to Object Persistence in {Java} Projects", journal = j-SIGCSE, volume = "36", number = "3", pages = "256", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Payne:2004:PJB, author = "W. Payne", title = "{Periscope Java} is becoming the platform of choice for developing a new generation of medical devices", journal = "British Journal of Healthcare Computing and Information Management", volume = "21", number = "7", pages = "14--14", year = "2004", CODEN = "????", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Perry:2004:JSJ, author = "Bruce W. Perry", title = "{Java} servlet and {JSP} cookbook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xix + 723", year = "2004", ISBN = "0-596-00572-5", ISBN-13 = "978-0-596-00572-6", LCCN = "QA76.73.J38 P469 2004", bibdate = "Mon Apr 18 15:08:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005726", acknowledgement = ack-nhfb, keywords = "Practical solutions to real-world problems", subject = "Java (Computer program language); JavaServer pages; Web site development; Servlets", } @Article{Pfeffer:2004:RTG, author = "M. Pfeffer and T. Ungerer and S. Fuhrmann and J. Kreuzinger and U. Brinkschulte", title = "Real-Time Garbage Collection for a Multithreaded {Java} Microcontroller", journal = j-REAL-TIME-SYST, volume = "26", number = "1", pages = "89--106", year = "2004", CODEN = "RESYE9", ISSN = "0922-6443", ISSN-L = "0922-6443", bibdate = "Mon Jan 5 17:25:38 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Real-Time Systems", } @Article{Pietrzak:2004:ABS, author = "B. Pietrzak and B. Walter and J. R. Nawrocki", title = "Automatic bad-smell detection in {Java} programs", journal = "Foundations of Computing and Decision Sciences", volume = "29", number = "1/4", pages = "149--165", year = "2004", CODEN = "????", ISSN = "0867-6356", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Pilone:2004:EVE, author = "M. Pilone", title = "The {Eclipse Visual Editor} for {Java}", journal = j-DDJ, volume = "29", number = "10", pages = "67--71", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Book{Pistoia:2004:EJS, author = "Marco Pistoia and Nataraj Nagaratnam and Larry Koved and Anthony Nadalin", title = "Enterprise {Java} Security: building secure {J2EE} applications", publisher = pub-AW, address = pub-AW:adr, pages = "xxiii + 581", year = "2004", ISBN = "0-321-11889-8", ISBN-13 = "978-0-321-11889-9", LCCN = "QA76.73.J3E58 2004", bibdate = "Sat Apr 03 07:42:35 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Computer security", } @Article{Potratz:2004:PCB, author = "E. Potratz", title = "A Practical Comparison Between {Java} and {Ada} in Implementing a Real-Time Embedded System", journal = j-SIGADA-LETTERS, volume = "24", number = "1", pages = "71--83", year = "2004", CODEN = "AALEE5", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Pratikakis:2004:TPJ, author = "P. Pratikakis and J. Spacco and M. Hicks", title = "Transparent Proxies for {Java} Futures", journal = j-SIGPLAN, volume = "39", number = "10", pages = "206--223", year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Proulx:2004:JIT, author = "V. K. Proulx and R. Rasala", title = "{Java IO} and Testing Made Simple", journal = j-SIGCSE, volume = "36", number = "1", pages = "161--165", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Mon Apr 19 11:57:57 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ramirez:2004:CBS, author = "R. Ramirez and J. Martinez", title = "Constraint-Based Synchronization and Verification of Distributed {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3132", pages = "473--474", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ranganath:2004:PIR, author = "V. P. Ranganath and J. Hatcliff", title = "Pruning Interference and Ready Dependence for Slicing Concurrent {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "2985", pages = "39--56", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Reimer:2004:SSA, author = "Darrell Reimer and Edith Schonberg and Kavitha Srinivas and Harini Srinivasan and Bowen Alpern and Robert D. Johnson and Aaron Kershenbaum and Larry Koved", title = "{SABER}: smart analysis based error reduction", journal = j-SIGSOFT, volume = "29", number = "4", pages = "243--251", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007545", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present an approach to automatically detect high impact coding errors in large Java applications which use frameworks. These high impact errors cause serious performance degradation and outages in real world production environments, are very time-consuming to detect, and potentially cost businesses thousands of dollars. Based on 3 years experience working with IBM customer production systems, we have identified over 400 high impact coding patterns, from which we have been able to distill a small set of pattern detection algorithms. These algorithms use deep static analysis, thus moving problem detection earlier in the development cycle from production to development. Additionally, we have developed an automatic false positive filtering mechanism based on domain specific knowledge to achieve a level of usability acceptable to IBM field engineers. Our approach also provides necessary contextual information around the sources of the problems to help in problem remediation. We outline how our approach to problem determination can be extended to multiple programming models and domains. We have implemented this problem determination approach in the SABER tool and have used it successfully to detect many serious code defects in several large commercial applications. This paper shows results from four such applications that had over 60 coding defects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reis:2004:TPI, author = "Charles Reis and Robert Cartwright", title = "Taming a professional {IDE} for the classroom", journal = j-SIGCSE, volume = "36", number = "1", pages = "156--160", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971357", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "An important question that must be addressed in a coherent computing curriculum is which programming environments to use across the curriculum. For Java, currently the most widely used language in computing education, a wide variety of professional integrated development environments (IDEs) are available---including the increasingly popular, open-source Eclipse environment. Professional IDEs for Java work well in advanced courses, but they are poorly matched to introductory courses because they deluge beginning students with a complex array of features. In addition, professional IDEs fail to shield students from distracting complications like the Java command line interface and Java console I/O. For this reason, many educators favor using a ``pedagogic'' IDE such as BlueJ or DrJava to provide a gentle introduction to the mechanics of Java programming. To eliminate the gap between pedagogic and professional IDEs for Java, we have developed a plug-in for Eclipse that supports exactly the same programming interface as DrJava. It features an Interactions pane for evaluating program statements and expressions ``on the fly'' as in DrJava. With this plug-in, Eclipse is accessible to beginning programmers. In this configuration, Eclipse is a suitable vehicle for teaching introductory programming--enabling Eclipse to be used across the entire spectrum of the computing curriculum.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ren:2004:CTC, author = "X. Ren and F. Shah and F. Tip and B. G. Ryder and O. Chesley", title = "{Chianti}: a Tool for Change Impact Analysis of {Java} Programs", journal = j-SIGPLAN, volume = "39", number = "10", pages = "432--448", year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Robbins:2004:DHS, author = "Steven Robbins", title = "A disk head scheduling simulator", journal = j-SIGCSE, volume = "36", number = "1", pages = "325--329", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971413", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Disk head scheduling is a standard topic in undergraduate operating systems courses. Disk drives were once fairly simple devices with little intelligence. Disk head scheduling and bad block mapping were done exclusively by operating systems. As disk drives became larger and faster, they took on some of these tasks. Modern drives often have a large cache and hide their internal structure from the outside world. In spite of changes in disk technology, the teaching of disk head scheduling has changed little over the last decade. This paper describes a disk head scheduling simulator that allows students to explore traditional disk scheduling algorithms as well as the consequences of modern disk technology. The simulator, which is written in Java and is freely available, can be run remotely from a browser or downloaded for local execution. We present methods for modifying the traditional curriculum to make the presentation of disk head scheduling more relevant and interesting.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberts:2004:DCL, author = "Eric Roberts", title = "The dream of a common language: the search for simplicity and stability in computer science education", journal = j-SIGCSE, volume = "36", number = "1", pages = "115--119", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971343", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In recent years, the languages, paradigms, and tools used to teach computer science have become increasingly complex. This added complexity puts pressure on designers of introductory courses, who must cover more material in an already overcrowded syllabus. The problem of complexity is exacerbated by the fact that languages and tools change quickly, which leads to profound instability in the manner in which computer science is taught. The situation has reached a point where it is difficult for individual computer science teachers to keep up. This paper examines the factors that promote complexity and instability in computer science. It then goes on to argue that we, as educators, must take responsibility for breaking this cycle of rapid obsolescence by developing a stable and effective collection of Java-based teaching resources that will meet the needs of the computer science education community. Such an initiative is already in progress under the direction of a special task force appointed by the ACM Education Board. The charter and current plans for that task force are being presented in a special session at this symposium.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberts:2004:RSU, author = "E. Roberts", title = "Resources to Support the Use of {Java} in Introductory Computer Science", journal = j-SIGCSE, volume = "36", number = "1", pages = "233--234", year = "2004", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Mon Apr 19 11:57:57 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rodriguez:2004:ETJ, author = "N. Rodriguez and L. J. Pulido and J. P. Jessel", title = "Enhancing a Telerobotics {Java} Tool with Augmented Reality", journal = j-LECT-NOTES-COMP-SCI, volume = "3061", pages = "9--18", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Rodziewicz:2004:OAJ, author = "P. Rodziewicz and B. Bell", title = "Overview and architecture of the {Java} integration framework, hybrid scheduler, and {Web}-enabled {LIMS}", journal = "Journal --- Association for Laboratory Automation", volume = "9", number = "6", pages = "411--420", year = "2004", CODEN = "????", ISSN = "1535-5535", bibdate = "Tue Jan 4 05:03:45 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Rosenschein:2004:WPP, author = "J. S. Rosenschein and T. Vilner and E. Zur", title = "Work in progress: Programming knowledge: Does it affect success in the course introduction to computer science using {Java}?", journal = j-FRONTIERS-EDU-CONF, volume = "CONF34", number = "VOL 1", pages = "T2H-3--T2H4", year = "2004", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Rountev:2004:FCA, author = "A. Rountev and A. Milanova and B. G. Ryder", title = "Fragment Class Analysis for Testing of Polymorphism in {Java} Software", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "30", number = "6", pages = "372--387", month = jun, year = "2004", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2004.20", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1321060", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Rountev:2004:SDA, author = "A. Rountev and S. Kagan and M. Gibas", title = "Static and Dynamic Analysis of Call Chains in {Java}", journal = "Software Engineering Notes", volume = "29", number = "4", pages = "1--11", year = "2004", CODEN = "????", ISSN = "0163-5948", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Ruiz:2004:FRD, author = "J. L. Ruiz and J. L. Arciniegas and R. Ceron and J. Bermejo and J. C. Duenas", title = "A Framework for Resolution of Deployment Dependencies in {Java}-Enabled Service Gateways", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "1--11", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ryan:2004:AAT, author = "C. Ryan and C. Westhorpe", title = "Application Adaptation Through Transparent and Portable Object Mobility in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3291", pages = "1262--1284", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{S:2004:HTJ, author = "B. C. S.", title = "Hot topic: {Java 1.5}", journal = j-COMPUT-BULL, volume = "46", number = "5", pages = "32--32", month = sep, year = "2004", CODEN = "COBUAH", ISSN = "0010-4531 (print), 1464-357X (electronic)", ISSN-L = "0010-4531", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "The Computer Bulletin", pagecount = "1", } @Article{Sadjadi:2004:TJT, author = "S. M. Sadjadi and P. K. McKinley and B. H. C. Cheng and R. E. K. Stirewalt", title = "{TRAP/J}: Transparent Generation of Adaptable {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3291", pages = "1243--1261", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sage:2004:JTS, author = "S. Sage and G. Grandjean and J. Verly", title = "{Java Tomography System (JaTS)}, a Seismic Tomography Software Using {Fresnel} Volumes, a Fast Marching Eikonal Solver and a Probabilistic Reconstruction Method: Conclusive Synthetic Test Cases", journal = "Lecture Notes in Earth Sciences", volume = "104", pages = "226--235", year = "2004", CODEN = "????", ISSN = "0930-0317", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Saldanha:2004:JTE, author = "Alok J. Saldanha", title = "{Java Treeview} --- extensible visualization of microarray data", journal = j-BIOINFORMATICS, volume = "20", number = "17", pages = "3246--3248", day = "22", month = nov, year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Sat Dec 18 11:38:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{Samet:2004:OBI, author = "Hanan Samet", title = "Object-based and image-based object representations", journal = j-COMP-SURV, volume = "36", number = "2", pages = "159--217", month = jun, year = "2004", CODEN = "CMSVAN", DOI = "https://doi.org/10.1145/1031120.1031123", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Thu Jun 19 10:19:57 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "An overview is presented of object-based and image-based representations of objects by their interiors. The representations are distinguished by the manner in which they can be used to answer two fundamental queries in database applications: (1) Feature query: given an object, determine its constituent cells (i.e., their locations in space). (2) Location query: given a cell (i.e., a location in space), determine the identity of the object (or objects) of which it is a member as well as the remaining constituent cells of the object (or objects). Regardless of the representation that is used, the generation of responses to the feature and location queries is facilitated by building an index (i.e., the result of a sort) either on the objects or on their locations in space, and implementing it using an access structure that correlates the objects with the locations. Assuming the presence of an access structure, implicit (i.e., image-based) representations are described that are good for finding the objects associated with a particular location or cell (i.e., the location query), while requiring that all cells be examined when determining the locations associated with a particular object (i.e., the feature query). In contrast, explicit (i.e., object-based) representations are good for the feature query, while requiring that all objects be examined when trying to respond to the location query. The goal is to be able to answer both types of queries with one representation and without possibly having to examine every cell. Representations are presented that achieve this goal by imposing containment hierarchies on either space (i.e., the cells in the space in which the objects are found), or objects. In the former case, space is aggregated into successively larger-sized chunks (i.e., blocks), while in the latter, objects are aggregated into successively larger groups (in terms of the number of objects that they contain). The former is applicable to image-based interior-based representations of which the space pyramid is an example. The latter is applicable to object-based interior-based representations of which the R-tree is an example. The actual mechanics of many of these representations are demonstrated in the VASCO JAVA applets found at \path=http://www.cs.umd.edu/~hjs/quadtree/index.html=.", acknowledgement = ack-nhfb, fjournal = "ACM Computing Surveys", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "Access methods; feature query; geographic information systems (GIS); image space; location query; object space; octrees; pyramids; quadtrees; R-trees; space-filling curves; spatial databases", } @Article{Sanchez:2004:JMB, author = "J. Sanchez and S. Dormido and R. Pastor and F. Morilla", title = "A {Java\slash} {Matlab}-Based Environment for Remote Control System Laboratories: Illustrated With an Inverted Pendulum", journal = j-IEEE-TRANS-EDUC, volume = "47", number = "3", pages = "321--329", year = "2004", CODEN = "IEEDAB", ISSN = "0018-9359", ISSN-L = "0018-9359", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Education", } @Article{Sanden:2004:CJT, author = "B. Sanden", title = "Coping with {Java} Threads: {Java} works for many kinds of concurrent software, but it was not designed for safety-critical real-time applications and does not protect the programmer from the pitfalls associated with multithreading", journal = j-COMPUTER, volume = "37", number = "4", pages = "20--27", year = "2004", CODEN = "CPTRB4", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Article{Sandya:2004:JJL, author = "S. M. Sandya", title = "Jazzing up {JVMs} with off-line profile data: does it pay?", journal = j-SIGPLAN, volume = "39", number = "8", pages = "72--80", month = aug, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Satoh:2004:CNP, author = "I. Satoh", title = "Configurable Network Processing for Mobile Agents on the {Internet}", journal = "Cluster Computing", volume = "7", number = "1", pages = "73--83", month = jan, year = "2004", CODEN = "????", ISSN = "1386-7857", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "11", } @Article{Schirmer:2004:AJP, author = "Norbert Schirmer", title = "Analysing the {Java} package\slash access concepts in {Isabelle\slash HOL}", journal = j-CCPE, volume = "16", number = "7", pages = "689--706", month = jun, year = "2004", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.800", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:54 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "27 Apr 2004", } @Article{Schmalenbach:2004:JVM, author = "C. Schmalenbach and C. Hofig", title = "The {Java Virtual Machine} Profiler Interface", journal = j-DDJ, volume = "29", number = "7", pages = "28--33", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Schoeberl:2004:JTF, author = "M. Schoeberl", title = "{Java} Technology in an {FPGA}", journal = j-LECT-NOTES-COMP-SCI, volume = "3203", pages = "917--921", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Schoeberl:2004:TPI, author = "M. Schoeberl", title = "A Time Predictable Instruction Cache for a {Java} Processor", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "371--382", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Schrefl:2004:URJ, author = "Michael Schrefl and Thomas Thalhammer", title = "Using roles in {Java}", journal = j-SPE, volume = "34", number = "5", pages = "449--464", day = "25", month = apr, year = "2004", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.571", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:28 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "23 Jan 2004", } @Article{Schrijvers:2004:JGJ, author = "T. Schrijvers", title = "{JmmSolve}: a Generative {Java} Memory Model Implemented in {Prolog} and {CHR}", journal = j-LECT-NOTES-COMP-SCI, volume = "3132", pages = "475--476", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Schroder:2004:GEH, author = "L. Schroder and T. Mossakowski", title = "Generic Exception Handling and the {Java} Monad", journal = j-LECT-NOTES-COMP-SCI, volume = "3116", pages = "443--459", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Seegmiller:2004:PRO, author = "R. Seegmiller", title = "Product Review: {Optimal Java}: a review of {Compuware's OptimalJ 3.1}", journal = "Application Development Trends", volume = "11", number = "3", pages = "48--49", year = "2004", CODEN = "????", ISSN = "1073-9564", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Selcuk:2004:JEJ, author = "Y. E. Selcuk and N. Erdogan", title = "{JAWIRO}: Enhancing {Java} with Roles", journal = j-LECT-NOTES-COMP-SCI, volume = "3280", pages = "927--934", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Shao:2004:RPF, author = "J. L. Shao and Y. Q. Ye", title = "Realization of programming functions using {Java} in a {VRML} world", journal = "Computers and Applied Chemistry", volume = "21", number = "4", pages = "641--644", year = "2004", CODEN = "????", ISSN = "1001-4160", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Shaofeng:2004:MJB, author = "Wang Shaofeng", title = "A method of {Java}-based electronic document publishing system", journal = j-ELECTRONIC-LIBRARY, volume = "22", number = "4", pages = "351--356", day = "1", month = apr, year = "2004", CODEN = "ELLIDZ", ISSN = "0264-0473", ISSN-L = "0264-0473", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Library", pagecount = "6", } @Article{Shimizu:2004:JOL, author = "Naohiko Shimizu and Chiaki Kon", title = "{Java} Object Look Aside Buffer for Embedded Applications", journal = j-COMP-ARCH-NEWS, volume = "32", number = "3", pages = "43--49", month = jun, year = "2004", CODEN = "CANED2", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Fri May 12 09:41:01 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", } @Article{Shudo:2004:CEC, author = "K. Shudo and S. Sekiguchi and Y. Muraoka", title = "Cost-Effective Compilation Techniques for {Java} Just-in-Time Compilers", journal = j-SYS-COMP-JAPAN, volume = "35", number = "12", pages = "10--24", year = "2004", CODEN = "SCJAEP", ISSN = "0882-1666 (print), 1520-684X (electronic)", ISSN-L = "0882-1666", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Systems and computers in Japan", } @Article{Sigg:2004:MDJ, author = "R. Sigg", title = "{Mobile Dienste mit Java realisieren}. ({German}) [Mobile services with a {Java} implementation]", journal = "Comtec", volume = "82", number = "2", pages = "28--30", year = "2004", CODEN = "????", ISSN = "1420-3715", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, language = "German", } @Book{Simmons:2004:HJ, author = "Robert {Simmons, Jr.}", title = "Hardcore {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 324", year = "2004", ISBN = "0-596-00568-7", ISBN-13 = "978-0-596-00568-9", LCCN = "QA76.73.J38 S553 2004", bibdate = "Mon Apr 18 15:07:57 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596005689", abstract = "Focuses on the little-touched but critical parts of the Java programming language that the expert programmers use. Learn about extremely powerful and useful programming techniques such as reflection, advanced data modeling, advanced GUI design, and advanced aspects of JDO, EJB, and XML-based web clients. This unique book reveals the true wizardry behind the complex and often mysterious Java environment--O'Reilly web site.", acknowledgement = ack-nhfb, remark = "``Secrets of the Java masters'' --- cover.", subject = "Java (Computer program language)", } @Book{Simmons:2004:HJS, author = "Robert {Simmons, Jr.}", title = "Hardcore {Java}: Secrets of the Java masters", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 324", year = "2004", ISBN = "0-596-00568-7", ISBN-13 = "978-0-596-00568-9", LCCN = "QA76.73.J38 S553 2004", bibdate = "Sat Apr 03 07:43:09 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "From the publisher: Focuses on the little-touched but critical parts of the Java programming language that the expert programmers use. Learn about extremely powerful and useful programming techniques such as reflection, advanced data modeling, advanced GUI design, and advanced aspects of JDO, EJB, and XML-based web clients. This unique book reveals the true wizardry behind the complex and often mysterious Java environment.", acknowledgement = ack-nhfb, } @Article{Siveroni:2004:OSJ, author = "I. A. Siveroni", title = "Operational semantics of the {Java Card Virtual Machine}", journal = j-J-LOGIC-ALG-PROG, volume = "58", number = "1--2", pages = "3--25", year = "2004", CODEN = "????", ISSN = "1567-8326", ISSN-L = "1567-8326", bibdate = "Tue Jan 27 06:08:07 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Logic and Algebraic Programming", } @Article{Snook:2004:ECC, author = "C. F. Snook and R. Harrison", title = "Experimental comparison of the comprehensibility of a {Z} specification and its implementation in {Java}", journal = j-INFO-SOFTWARE-TECH, volume = "46", number = "14", pages = "955--971", year = "2004", CODEN = "ISOTE7", ISSN = "0950-5849 (print), 1873-6025 (electronic)", ISSN-L = "0950-5849", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Software Technology", } @Article{Sooriamurthi:2004:JET, author = "R. Sooriamurthi and S. Menzel and A. Sengupta and K. Moor and S. Stamm and K. Borner", title = "{Java} engagement for teacher training: an experience report", journal = j-FRONTIERS-EDU-CONF, volume = "CONF34", number = "VOL 1", pages = "T2D-17", year = "2004", CODEN = "PFECDR", ISSN = "0190-5848", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Frontiers in Education Conference", } @Article{Stahl:2004:DTD, author = "R. Stahl and F. Catthoor and R. Lauwereins and D. Verkest", title = "Design-Time Data-Access Analysis for Parallel {Java} Programs with Shared-Memory Communication Model", journal = j-LECT-NOTES-COMP-SCI, volume = "3149", pages = "206--213", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Misc{Stallman:2004:FSJ, author = "Richard Stallman", title = "Free But Shackled --- The {Java} Trap", howpublished = "World-Wide Web document", day = "12", month = apr, year = "2004", bibdate = "Sat Oct 07 10:41:21 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.gnu.org/philosophy/java-trap.html", acknowledgement = ack-nhfb, remark = "Sun's implementation of Java is non-free. Blackdown is also non-free; it is an adaptation of Sun's proprietary code. The standard Java libraries are non-free also. We do have free implementations of Java, such as the GNU Compiler for Java (GCJ) and GNU Classpath, but they don't support all the features yet. We are still catching up.", } @Article{Stark:2004:FSC, author = "Eugene W. Stark", title = "Formally specifying {CARA} in {Java}", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "5", number = "4", pages = "331--350", month = may, year = "2004", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-003-0124-7", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Tue Nov 23 15:01:42 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", remark = "Special section: Analysis of requirements for a medical device the computer-assisted resuscitation algorithm (CARA) experience", } @Book{Steeb:2004:PSS, author = "W.-H. Steeb and Yorick Hardy and Alexandre Hardy and Ruedi Stoop", title = "Problems and solutions in scientific computing: with {C++} and {Java} simulations", publisher = pub-WORLD-SCI, address = pub-WORLD-SCI:adr, pages = "ix + 420", year = "2004", ISBN = "981-256-112-9, 981-256-125-0 (paperback)", ISBN-13 = "978-981-256-112-1, 978-981-256-125-1 (paperback)", LCCN = "QA297 .P743 2004", bibdate = "Tue May 27 08:40:36 MDT 2014", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/numana2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Numerical analysis; Computer programs; Problems, exercises, etc.; Science; Mathematics", } @Article{Stenzel:2004:FVC, author = "K. Stenzel", title = "A Formally Verified Calculus for Full {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "3116", pages = "491--505", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Stubblebine:2004:SHD, author = "Tony Stubblebine and Junko Mishima", title = "Seiki hyogen desukutoppu rifarensu: regular expressions for {Perl}, {C}, {PHP}, {Python}, {Java}, and {.NET}", publisher = "Orairi Japan", address = "Tokyo, Japan", pages = "vi + 96", year = "2004", ISBN = "4-87311-170-6", ISBN-13 = "978-4-87311-170-4", LCCN = "????", bibdate = "Wed Oct 14 08:00:43 MDT 2015", bibsource = "fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/ora.bib; https://www.math.utah.edu/pub/tex/bib/python.bib", acknowledgement = ack-nhfb, } @Article{Suganuma:2004:EJJ, author = "T. Suganuma and T. Ogasawara and K. Kawachiya and M. Takeuchi and K. Ishizaki and A. Koseki and T. Inagaki and T. Yasue and M. Kawahito and T. Onodera", title = "Evolution of a {Java} just-in-time compiler for {IA-32} platforms", journal = j-IBM-JRD, volume = "48", number = "5/6", pages = "767--796", year = "2004", CODEN = "IBMJAE", ISSN = "0018-8646 (print), 2151-8556 (electronic)", ISSN-L = "0018-8646", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IBM Journal of Research and Development", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5288520", } @Article{Sun:2004:JBA, author = "H. Sun and R. V. Davuluri", title = "{Java}-based application framework for visualization of gene regulatory region annotations", journal = j-BIOINFORMATICS, volume = "20", number = "5", pages = "727--734", day = "22", month = mar, year = "2004", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "8", } @Article{Sung:2004:JBC, author = "M. Y. Sung and D. H. Lee", title = "A {Java}-Based Collaborative Authoring System for Multimedia Presentation", journal = j-LECT-NOTES-COMP-SCI, volume = "3332", pages = "96--103", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jan 4 05:03:45 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Suokas:2004:JHS, author = "J. Suokas", title = "{JAVA ALS HANDY-STANDARD}?", journal = "Telekompraxis", volume = "BAND81", number = "NUMB 11/12", pages = "22--23", year = "2004", CODEN = "????", ISSN = "0938-5460", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Surveyer:2004:SAO, author = "J. Surveyer", title = "{Sun} adds to opensource {Java IDE} roster: a review of {NetBeans Java IDE}", journal = "Application Development Trends", volume = "11", number = "9", pages = "48--48", year = "2004", CODEN = "????", ISSN = "1073-9564", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Surveyer:2004:SJS, author = "J. Surveyer", title = "{Sun Java Studio Creator}: The {VB} of {Java}?", journal = "Application Development Trends", volume = "11", number = "11", pages = "46--47", year = "2004", CODEN = "????", ISSN = "1073-9564", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Talpin:2004:HRT, author = "J. P. Talpin and A. Gamatie and D. Berner and B. LeDez and P. LeGuernic", title = "Hard Real-Time Implementation of Embedded Software in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "2952", pages = "33--47", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Tan:2004:EEE, author = "Roy Patrick Tan and Stephen H. Edwards", title = "Experiences evaluating the effectiveness of {JML}-{JUnit} testing", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022545", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the issues the authors encountered while evaluating the JML-JUnit unit testing strategy. Given a predefined set of parameter values, JML-JUnit can automatically provide unit tests for Java programs that have specifications. We present a mutation testing experiment that evaluates the effectiveness of this testing strategy, and the lessons learned from doing this experiment. We conclude that a benchmark will enable the testing research community to meaningfully assess testing approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tanaka:2004:DCR, author = "S. Tanaka and T. Yamada and S. Shiraishi", title = "Dynamic Code Repositioning for {Java}", journal = "IEICE Transactions on Information and Systems E Series D", volume = "87", number = "7", pages = "1737--1742", year = "2004", CODEN = "????", ISSN = "0916-8532", bibdate = "Wed Aug 18 06:22:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Tangermann:2004:EIF, author = "M. Tangermann and C. Schwab and A. Luder and L. Ferrarini and C. Veber", title = "Encapsulation of {IEC 61499} Function Blocks Using Real-Time {Java} According to the {RTSJ}", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "346--358", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Tate:2004:BFL, author = "Bruce Tate and Justin Gehtland", title = "Better, Faster, Lighter {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 243", year = "2004", ISBN = "0-596-00676-4", ISBN-13 = "978-0-596-00676-1", LCCN = "QA76.73.J38 T36 2004", bibdate = "Fri Jul 09 11:23:09 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$34.95, CAN\$50.95, UK\pounds 24.95", URL = "http://www.oreilly.com/catalog/bfljava/", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Java (Computer program language); Handbooks, manuals, etc", } @Article{Tellis:2004:IMC, author = "W. M. Tellis and K. P. Andriole", title = "Integrating Multiple Clinical Information Systems using the {Java Message Service Framework}", journal = j-J-DIGITAL-IMAGING, volume = "17", number = "2", pages = "80--86", year = "2004", CODEN = "JDIMEW", ISSN = "0897-1889", ISSN-L = "0897-1889", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Digital Imaging", } @Article{Tilevich:2004:PED, author = "Eli Tilevich and Yannis Smaragdakis", title = "Portable and Efficient Distributed Threads for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3231", pages = "478--492", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 18 08:11:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ton:2004:SHC, author = "Lee-Ren Ton and Lung-Chung Chang and Jyh-Jiun Shann and Chung-Ping Chung", title = "A software\slash hardware cooperated stack operations folding model for {Java} processors", journal = j-J-SYST-SOFTW, volume = "72", number = "3", pages = "377--387", month = aug, year = "2004", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Wed May 18 10:27:25 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Tonella:2004:ETC, author = "Paolo Tonella", title = "Evolutionary testing of classes", journal = j-SIGSOFT, volume = "29", number = "4", pages = "119--128", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object oriented programming promotes reuse of classes in multiple contexts. Thus, a class is designed and implemented with several usage scenarios in mind, some of which possibly open and generic. Correspondingly, the unit testing of classes cannot make too strict assumptions on the actual method invocation sequences, since these vary from application to application. In this paper, a genetic algorithm is exploited to automatically produce test cases for the unit testing of classes in a generic usage scenario. Test cases are described by chromosomes, which include information on which objects to create, which methods to invoke and which values to use as inputs. The proposed algorithm mutates them with the aim of maximizing a given coverage measure. The implementation of the algorithm and its application to classes from the Java standard library are described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tran:2004:TCB, author = "F. D. Tran and J. P. Fassino and O. Lobry and J. Pulou and N. Rivierre", title = "Toward a Component-Based Embedded {Java}-Oriented Operating System", journal = j-LECT-NOTES-COMP-SCI, volume = "3292", pages = "256--267", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Tremblett:2004:JME, author = "P. Tremblett", title = "{Java} Management Extensions", journal = j-DDJ, volume = "29", number = "7", pages = "14--21", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Trofin:2004:FRRa, author = "Mircea Trofin", title = "A framework for removing redundant context management services in {Enterprise JavaBeans} application servers", journal = j-SIGPLAN, volume = "39", number = "10", pages = "58--59", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Trofin:2004:FRRb, author = "Mircea Trofin", title = "A framework for removing redundant context management services in enterprise {JavaBeans} application servers", journal = j-SIGPLAN, volume = "39", number = "10", pages = "312--313", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Tsang:2004:OPB, author = "A. C. W. Tsang and N. Chan", title = "An Online Problem-Based Model for the Learning of {Java}", journal = "Journal of Electronic Commerce in Organizations", volume = "2", number = "2", pages = "55--64", year = "2004", CODEN = "????", ISSN = "1539-2937", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Tuisku:2004:WJE, author = "M. Tuisku", title = "Wireless {Java}-Enabled {MIDP} Devices as Peers in a {Grid} Infrastructure", journal = j-LECT-NOTES-COMP-SCI, volume = "2970", pages = "273--281", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Sat Apr 3 08:12:24 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Umphress:2004:BJI, author = "David A. Umphress and James H. {Cross II} and Jhilmil Jain and Nischita Meda and Larry A. Barowski", title = "Bringing {J2ME} industry practice into the classroom", journal = j-SIGCSE, volume = "36", number = "1", pages = "301--305", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971407", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes efforts to use industry wireless software development practices in the classroom. Nokia's OK Java 2 Platform Micro Edition (J2ME) application certification program was chosen for use in a core set of wireless software engineering courses. The adaptation process included (1) modifying Nokia OK application standards for classroom use as examples of what is expected of industry-quality software; (2) incorporating Nokia OK software development tools into a student-friendly software development environment; and (3) implementing in-house Nokia OK certification procedures as a basis for assessing student projects and providing feedback.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{VanCamp:2004:TNS, author = "S. VanCamp", title = "Tech-nically Speaking: {Sun Microsystems} is banking on its {Java} platform to restore a measure of respectability", journal = "Brandweek", volume = "45", number = "30", pages = "14--19", year = "2004", CODEN = "????", ISSN = "1064-4318", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Vieira:2004:LEH, author = "Luiz Filipe M. Vieira and Marcos Augusto M. Vieira and Newton J. Vieira", title = "Language emulator, a helpful toolkit in the learning process of computer theory", journal = j-SIGCSE, volume = "36", number = "1", pages = "135--139", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971348", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Language Emulator, written in Java, is a toolkit to help undergraduate students to understand the concepts of Automata Theory. The software allows the manipulation of regular expressions, regular grammars, deterministic finite automata, nondeterministic finite automata with and without lambda transitions, and Moore and Mealy machines. Language Emulator introduces error-detecting and internationalization functionalities into automata tools. It has been accepted by 95\% of students in a recent survey, indicating that it is a helpful toolkit in learning Automata Theory.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Visser:2004:TIG, author = "W. Visser and C. S. Pasareanu and S. Khurshid", title = "Test Input Generation with {Java PathFinder}", journal = "Software Engineering Notes", volume = "29", number = "4", pages = "97--107", year = "2004", CODEN = "????", ISSN = "0163-5948", bibdate = "Wed Sep 22 17:19:17 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{vonDincklage:2004:CJC, author = "D. vonDincklage and A. Diwan", title = "Converting {Java} Classes to Use Generics", journal = j-SIGPLAN, volume = "39", number = "10", pages = "1--14", year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Wahli:2004:WSJ, editor = "Ueli Wahli and others", title = "{WebSphere Studio 5.1.2 JavaServer Faces and Service Data Objects}", publisher = "IBM International Technical Support Organization", address = "????", pages = "xxiv + 566", month = jul, year = "2004", ISBN = "0-7384-9041-5", ISBN-13 = "978-0-7384-9041-0", LCCN = "TK5105.8885.W43 W4322 2004", bibdate = "Wed Nov 15 10:37:03 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", note = "Publication number SG24-6361-00", series = "IBM redbooks", acknowledgement = ack-nhfb, subject = "WebSphere; Application software; Development; Web site development", } @Book{Walls:2004:XA, author = "Craig Walls and Norman Richards and Rickard Oberg", title = "{XDoclet} in Action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxxii + 591", year = "2004", ISBN = "1-932394-05-2", ISBN-13 = "978-1-932394-05-4", LCCN = "QA76.73.J38 W343 2004", bibdate = "Sat Jan 10 12:52:35 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/bios/ipg051/2004271287.html; http://www.loc.gov/catdir/description/ipg051/2004271287.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", xxauthor = "Craig Walls and Norman Richards", } @Article{Wang:2004:UJL, author = "H. Wang", title = "Use of {Java} Language on the {Web} of Real-Time Observed Tide Data", journal = "Marine Science Bulletin", volume = "23", number = "2", pages = "51--55", year = "2004", CODEN = "????", ISSN = "1001-6392", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Washizaki:2004:SSJ, author = "Hironori Washizaki and Yoshiaki Fukazawa", title = "A search system for {Java} programs by using extracted {JavaBeans} components", journal = j-SIGPLAN, volume = "39", number = "10", pages = "200--201", month = oct, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:56 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Weatherly:2004:EPI, author = "R. M. Weatherly and E. H. Page", title = "Efficient Process Interaction Simulation in {Java}: Implementing Co-Routines Within a Single {Java} Thread", journal = "Winter Simulation Conference", volume = "2", pages = "1437--1443", year = "2004", CODEN = "????", ISSN = "0743-1902 (print), 2160-9276 (electronic)", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Weaver:2004:BJN, author = "James L. Weaver and Kevin Mukhar and Jim Crume", title = "Beginning {J2EE 1.4}: From Novice to Professional: The Essentials of the Platform", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "700 (est.)", year = "2004", ISBN = "1-59059-341-3", ISBN-13 = "978-1-59059-341-7", LCCN = "????", bibdate = "Sat Apr 03 07:31:47 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Weaver:2004:ECS, author = "Alfred C. Weaver", title = "Electronic commerce software laboratory", journal = j-SIGCSE, volume = "36", number = "1", pages = "453--456", month = mar, year = "2004", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1028174.971455", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:06 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "With NSF support we developed a hands-on laboratory to augment our CS453 Electronic Commerce Technologies course. We conducted weekly lab sessions that covered HTML, CSS, JavaScript, Perl, CGI, SQL, ASP, and Flash programming. Each topic was covered over a period of one to three weeks and each topic was supported by 10 to 26 individual programming exercises. Four teaching assistants provided real-time support during the laboratory period. Answers to all exercises were accessible on-line so that no student would be needlessly delayed by any particular problem. In this paper we discuss the laboratory's design goals, topical content, and the students' performance, reactions, and suggestions for improvement.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Webb:2004:LJB, author = "S. C. Webb and A. Attwood and T. Brooks and T. Freeman and P. Gardner and C. Pritchard and D. Williams and P. Underhill and M. A. Strivens and A. Greenfield", title = "{LIMaS}: the {JAVA}-based application and database for microarray experiment tracking", journal = "Mammalian Genome", volume = "15", number = "9", pages = "740--747", year = "2004", CODEN = "????", ISSN = "0938-8990", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Weiss:2004:JCE, author = "Jason Weiss", title = "{Java} Cryptography Extensions: Practical Guide for Programmers", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "xv + 158", year = "2004", ISBN = "0-12-742751-1", ISBN-13 = "978-0-12-742751-5", LCCN = "QA76.73.J38 W445 2004", bibdate = "Tue Jul 27 05:22:17 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$21.95", acknowledgement = ack-nhfb, } @Book{Wellings:2004:CRT, author = "Andrew J. Wellings", title = "Concurrent and real-time programming in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xiv + 431", year = "2004", ISBN = "0-470-84437-X (paperback)", ISBN-13 = "978-0-470-84437-3 (paperback)", LCCN = "QA76.73.J38 W465 2004", bibdate = "Thu Mar 23 07:09:46 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0616/2004008522-b.html; http://www.loc.gov/catdir/enhancements/fy0616/2004008522-d.html; http://www.loc.gov/catdir/toc/ecip0417/2004008522.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Parallel programming (Computer science); Real-time programming", } @Article{Wells:2004:LIJ, author = "G. C. Wells and A. G. Chalmers and P. G. Clayton", title = "{Linda} implementations in {Java} for concurrent systems", journal = j-CCPE, volume = "16", number = "10", pages = "1005--1022", day = "25", month = aug, year = "2004", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.794", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:55 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "10 Jun 2004", } @Article{Wen:2004:IDE, author = "Y. Wen and X. Liu", title = "Intelligence Data Extraction Based on {Java XML} and {Web}", journal = "Journal- Sichuan University Natural Science Edition", volume = "41", number = "2", pages = "318--321", year = "2004", CODEN = "????", ISSN = "0490-6756", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Williams:2004:MAJ, author = "A. Williams", title = "Mixing {ActiveX} with {Java}", journal = j-DDJ, volume = "29", number = "7", pages = "64--70", year = "2004", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Sep 28 15:27:39 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Williams:2004:WLC, author = "T. Williams and J. Anderson", title = "Write Less Code and Deliver {Java} Apps Faster With {Eclipse 3.0}", journal = j-ELECTRONIC-DESIGN, volume = "52", number = "21", pages = "71--72", year = "2004", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Willsey:2004:BLD, author = "J. W. Willsey", title = "{Browsersoft} lets developers write a little {Java}", journal = "Application Development Trends", volume = "11", number = "10", pages = "46--47", year = "2004", CODEN = "????", ISSN = "1073-9564", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Winkler:2004:CCJ, author = "J. F. H. Winkler", title = "{C\#}: a Competitor of {Java}?", journal = "It", volume = "46", number = "2", pages = "85--93", year = "2004", CODEN = "????", ISSN = "1611-2776", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wolfe:2004:TJJ, author = "Alexander Wolfe", title = "Toolkit: {Java} is Jumpin'", journal = j-QUEUE, volume = "1", number = "10", pages = "16--19", month = feb, year = "2004", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Sat Mar 6 07:19:32 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Wong:2004:JPN, author = "W. Wong", title = "{Java 5.0} Perks Up With New Language Constructs", journal = j-ELECTRONIC-DESIGN, volume = "52", number = "26", pages = "44--45", year = "2004", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Wed Dec 29 09:36:00 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Woo:2004:AAJ, author = "J. Woo and J. L. Gaudiot and A. L. Wendelborn", title = "Alias Analysis in {Java} with Reference-Set Representation for High-Performance Computing", journal = j-INT-J-PARALLEL-PROG, volume = "32", number = "1", pages = "39--76", year = "2004", CODEN = "IJPPE5", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Mon Feb 23 16:27:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", } @Article{Woodward:2004:XPS, author = "W. Woodward", title = "{XML} persistence self-describing serialized {Java} objects", journal = "Research Disclosure", volume = "484", pages = "1134", year = "2004", CODEN = "????", ISSN = "0374-4353", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Wutka:2004:STY, author = "Mark Wutka and Alan Moffet and Kunal Mittal", title = "{Sams} teach yourself {Javaserver Pages 2.0} in 24 hours, complete starter kit", publisher = pub-SAMS, address = pub-SAMS:adr, pages = "xvi + 527", year = "2004", ISBN = "0-672-32597-7", ISBN-13 = "978-0-672-32597-7", LCCN = "TK5105.8885.J38 W88 2004", bibdate = "Sat Jan 10 12:46:07 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, subject = "JavaServer pages; Apache Tomcat; Web sites; Design; Web site development", } @Article{Xiang:2004:RWG, author = "N. Xiang and H. Peng", title = "A research of {WEB GIS} based on {Java} and {XML}", journal = "Journal of the Hebei Institute of Technology", volume = "26", number = "3", pages = "46--48", year = "2004", CODEN = "????", ISSN = "1007-2829", bibdate = "Tue Sep 14 07:40:46 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Xu:2004:MAO, author = "B. Xu and A. Xu", title = "Mobile active objects in {Java}", journal = j-ADV-ENG-SOFTWARE, volume = "35", number = "3--4", pages = "231--235", year = "2004", CODEN = "AESODT", ISSN = "0965-9978 (print), 0141-1195 (electronic)", ISSN-L = "0965-9978", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Advances in Engineering Software (1978)", journal-URL = "http://www.sciencedirect.com/science/journal/01411195", } @Article{Yamamoto:2004:NGM, author = "T. Yamamoto", title = "Next-generation Mobile Tool by {Java} for Mobile Phone ``{sMobile}''", journal = "Sumitomo Heavy Industries Technical Review", volume = "155", pages = "39--42", year = "2004", CODEN = "????", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Yang:2004:TWO, author = "Jiahai Yang and Haixin Duan and Jianping Wu and Xing Li", title = "Thresholds: Workflow Oriented Network Management: a {Web\slash Java} Approach", journal = "Journal of Network and Systems Management", volume = "12", number = "4", pages = "431--439", month = dec, year = "2004", CODEN = "????", ISSN = "1064-7570", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "9", } @Article{Yeo:2004:JBW, author = "C. K. Yeo and S. C. Hui and B. S. Lee", title = "{Java}-Based, {WAP-Enabled} Unified Messaging System", journal = j-INT-J-COMPUT-APPL, volume = "26", number = "4", pages = "191--198", year = "2004", CODEN = "IJCAFW", DOI = "https://doi.org/10.1080/1206212X.2004.11441741", ISSN = "1206-212X (print), 1925-7074 (electronic)", ISSN-L = "1206-212X", bibdate = "Sat Apr 21 17:21:54 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ijca.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "https://www.tandfonline.com/doi/full/10.1080/1206212X.2004.11441741", acknowledgement = ack-nhfb, fjournal = "International Journal of Computers and Applications", journal-URL = "https://www.tandfonline.com/loi/tjca20", online-date = "11 Jul 2015", xxpages = "1--8", } @Article{Yilmaz:2004:IDC, author = "G. Yilmaz and N. Erdogan", title = "Integrating Distributed Composite Objects into {Java} Environment", journal = j-LECT-NOTES-COMP-SCI, volume = "3261", pages = "322--331", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 18 08:11:17 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Yu:2004:EJO, author = "Z. C. H. Yu and F. C. M. Lau and C. L. Wang", title = "Exploiting {Java} Objects Behavior for Memory Management and Optimizations", journal = j-LECT-NOTES-COMP-SCI, volume = "3302", pages = "437--452", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Yuan:2004:JCH, author = "M. J. Yuan", title = "{Java} Center: From Headless to Rich {UI}: The {OSGi} framework isn't just for embedded gateway devices --- this versatile set of open specifications is universally useful", journal = "Software Development", volume = "12", number = "5", pages = "28--29", year = "2004", CODEN = "????", ISSN = "1070-8588", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Yusuf:2004:EMU, author = "Kareem Yusuf", title = "Enterprise Messaging Using {JMS} and {IBM WebSphere}", publisher = pub-IBM-PRESS, address = pub-IBM-PRESS:adr, pages = "xvi + 330", year = "2004", ISBN = "0-13-146863-4", ISBN-13 = "978-0-13-146863-4", LCCN = "QA76.73.J38 Y87 2004", bibdate = "Sat Apr 03 07:34:07 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "An IBM Press book", URL = "http://java.sun.com/products/jms/docs.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Telecommunication; Message processing; Electronic mail systems; WebSphere; Application software; Development", } @Article{Zhang:2004:ACU, author = "Lingli Zhang and Chandra Krintz", title = "Adaptive code unloading for resource-constrained {JVMs}", journal = j-SIGPLAN, volume = "39", number = "7", pages = "155--164", month = jul, year = "2004", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Thu Dec 2 05:49:55 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Zhang:2004:CAD, author = "M. T. Zhang and K. Goldberg", title = "A Computer-Aided Design Tool in {Java} for Planar Gripper Design", journal = "Journal of Computing and Information Science in Engineering", volume = "4", number = "1", pages = "43--48", year = "2004", CODEN = "????", ISSN = "1530-9827", bibdate = "Mon May 17 14:50:36 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zhao:2004:GJB, author = "Y. Zhao and W. Chen and Y. Qiu and J. Shi", title = "{GVis}: a {Java}-Based Architecture for {Grid} Enabled Interactive Visualization", journal = j-LECT-NOTES-COMP-SCI, volume = "3252", pages = "704--711", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Zhen:2004:IBS, author = "Z. Zhen and B. Fei and L. Kejun", title = "The implementation of 128 bit strong encryption for {SSL} by using {Java} Applet", journal = "Journal --- Huazhong University of Science and Technology Nature Science Chinese Edition", volume = "32", number = "4", pages = "74--76", year = "2004", CODEN = "????", ISSN = "1671-4512", bibdate = "Fri Jun 18 08:03:35 MDT 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Zheng:2004:JBH, author = "H. Zheng and J. M. Keith", title = "{JAVA}-Based Heat Transfer Visualization Tools", journal = "Chemical Engineering Education", volume = "38", number = "4", pages = "282--285", year = "2004", CODEN = "????", ISSN = "0009-2479", bibdate = "Mon Dec 6 06:44:22 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Zhuk:2004:IRA, author = "Jeff Zhuk", title = "Integration-ready architecture and design: software engineering with {XML}, {Java}, {.NET}, wireless, speech, and knowledge technologies", publisher = pub-CAMBRIDGE, address = pub-CAMBRIDGE:adr, pages = "xxx + 609", year = "2004", ISBN = "0-521-52583-7 (paperback)", ISBN-13 = "978-0-521-52583-1 (paperback)", LCCN = "QA76.758 .Z48 2004", bibdate = "Thu Jun 23 18:36:26 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/description/cam041/2003065381.html; http://www.loc.gov/catdir/toc/cam041/2003065381.html", acknowledgement = ack-nhfb, subject = "Software engineering; Expert systems (Computer science)", } @Article{Zuo:2004:FJD, author = "T. Zuo and J. Han and P. Chen", title = "Formalizing {Java} Dynamic Loading in {HOL}", journal = j-LECT-NOTES-COMP-SCI, volume = "3223", pages = "287--304", year = "2004", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Nov 11 05:40:33 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Abi-Antoun:2005:ISD, author = "Marwan Abi-Antoun and Jonathan Aldrich and David Garlan and Bradley Schmerl and Nagi Nahas and Tony Tseng", title = "Improving system dependability by enforcing architectural intent", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083218", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Developing dependable software systems. requires enforcing conformance between architecture and implementation during software development and evolution. We address this problem with a multi-pronged approach: (a) automated refinement of a component-and-connector (C\&C) architectural view into an initial implementation, (b) enforcement of architectural structure at the programming language level, (c) automated abstraction of a C\&C view from an implementation, and (d) semi-automated incremental synchronization between the architectural and the implementation C\&C views. We use an Architecture Description Language (ADL), Acme, to describe the architecture, and ArchJava, an implementation language which embeds a C\&C architecture specification within Java implementation code. Although both Acme and ArchJava specify C\&C views, a number of structural differences may arise. Our approach can detect structural differences which correspond directly to implementation-level violations of the well thoughtout architectural intent. Furthermore, supplementing the C\&C view extracted from the implementation with architectural types and styles can uncover additional violations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Abraham:2005:ABP, author = "Erika {\'A}brah{\'a}m and Frank S. de Boer and Willem-Paul de Roever and Martin Steffen", title = "An assertion-based proof system for multithreaded {Java}", journal = j-THEOR-COMP-SCI, volume = "331", number = "2--3", pages = "251--290", day = "25", month = feb, year = "2005", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Fri Jul 8 14:05:15 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/03043975", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Book{Adamson:2005:QJD, author = "Chris Adamson", title = "{QuickTime} for {Java}: a developer's notebook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xix + 233", year = "2005", ISBN = "0-596-00822-8", ISBN-13 = "978-0-596-00822-2", LCCN = "TR899 .A33 2005; TR899; TR899 .A33 2005eb", bibdate = "Tue Aug 5 17:44:46 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596008222", acknowledgement = ack-nhfb, subject = "QuickTime; Motion pictures; Editing; Data processing; Java (Computer program language)", } @Article{Ahern:2005:FJR, author = "Alexander Ahern and Nobuko Yoshida", title = "Formalising {Java RMI} with explicit code mobility", journal = j-SIGPLAN, volume = "40", number = "10", pages = "403--422", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Al-Jaroodi:2005:JJO, author = "Jameela Al-Jaroodi and Nader Mohamed and Hong Jiang and David Swanson", title = "{JOPI}: a {Java} object-passing interface", journal = j-CCPE, volume = "17", number = "7--8", pages = "775--795", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.854", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Alford:2005:IIJ, author = "Torey Alford and Vijay P. Shah and Anthony Skjellum and Nicholas H. Younan and Clayborne D. Taylor", title = "{inAspect}: interfacing {Java} and {VSIPL} applications", journal = j-CCPE, volume = "17", number = "7--8", pages = "919--940", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.862", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{AlJaroodi:2005:JJO, author = "J. AlJaroodi and N. Mohamed and H. Jiang and D. Swanson", title = "{JOPI}: a {Java Object-Passing Interface}", journal = j-CCPE, volume = "17", number = "7/8", pages = "775--796", year = "2005", CODEN = "CCPEBO", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", } @Article{Almquist:2005:ITS, author = "J. Almquist and I. Gorton and J. Haack", title = "Integration of a Text Search Engine with a {Java} Messaging Service", journal = j-LECT-NOTES-COMP-SCI, volume = "3437", pages = "19--30", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @InProceedings{Alpern:2005:PVE, author = "Bowen Alpern and Joshua Auerbach and Vasanth Bala and Thomas Frauenhofer and Todd Mummert and Michael Pigott", title = "{PDS}: a virtual execution environment for software deployment", crossref = "ACM:2005:PFA", pages = "175--185", year = "2005", DOI = "https://doi.org/10.1145/1064979.1065004", bibdate = "Sat Oct 14 16:55:50 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Progressive Deployment System (PDS) is a virtual execution environment and infrastructure designed specifically for deploying software, or ``assets'', on demand while enabling management from a central location. PDS intercepts a select subset of system calls on the target machine to provide a partial virtualization at the operating system level. This enables an asset's install-time environment to be reproduced virtually while otherwise not isolating the asset from peer applications on the target machine. Asset components, or ``shards'', are fetched as they are needed (or they may be pre-fetched), enabling the asset to be progressively deployed by overlapping deployment with execution. Cryptographic digests are used to eliminate redundant shards within and among assets, which enables more efficient deployment. A framework is provided for intercepting interfaces above the operating system (e.g., Java class loading), enabling optimizations requiring semantic awareness not present at the OS level. The paper presents the design of PDS, motivates its ``porous isolation model'' with respect to the challenges of software deployment, and presents measurements of PDS's execution characteristics.", acknowledgement = ack-nhfb, } @Article{Alt:2005:AJR, author = "Martin Alt and Sergei Gorlatch", title = "Adapting {Java RMI} for grid computing", journal = j-FUT-GEN-COMP-SYS, volume = "21", number = "5", pages = "699--707", month = may, year = "2005", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Fri Jul 15 08:00:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/0167739X; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Alur:2005:SIS, author = "Rajeev Alur and Pavol {\v{C}}ern{\'y} and P. Madhusudan and Wonhong Nam", title = "Synthesis of Interface Specifications for {Java} Classes", journal = j-SIGPLAN, volume = "40", number = "1", pages = "98--109", month = jan, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:15 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Amandi:2005:JFB, author = "Anal{\'\i}a Amandi and Marcelo Campo and Alejandro Zunino", title = "{JavaLog}: a framework-based integration of {Java} and {Prolog} for agent-oriented programming", journal = j-COMP-LANGS-SYS-STRUCT, volume = "31", number = "1", pages = "17--33", month = apr, year = "2005", CODEN = "????", ISSN = "1477-8424 (print), 1873-6866 (electronic)", ISSN-L = "1477-8424", bibdate = "Thu Jul 14 18:30:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/14778424", acknowledgement = ack-nhfb, fjournal = "Computer Languages, Systems and Structures", journal-URL = "http://www.sciencedirect.com/science/journal/14778424", } @Article{Ancona:2005:PBC, author = "Davide Ancona and Ferruccio Damiani and Sophia Drossopoulou and Elena Zucca", title = "Polymorphic Bytecode: Compositional Compilation for {Java}-like Languages", journal = j-SIGPLAN, volume = "40", number = "1", pages = "26--37", month = jan, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:15 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Anonymous:2005:BKJ, author = "Anonymous", title = "{Bluetooth-Kommunikation unter Java: Ein System zur Konfiguration funkbasierter Automatisierungssysteme}. ({German}) [{Bluetooth} Communication under {Java}: a system for the configuration of radio-based automation systems]", journal = j-ELECTRONIK, volume = "54", number = "7", pages = "56--61", year = "2005", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", language = "German", } @Article{Anonymous:2005:CBE, author = "Anonymous", title = "{Compuware}, {Borland} Eye Development While {Compuware} upgrades its {Java} development projects, {Borland} buys a company", journal = j-INFOWORLD, volume = "27", number = "4", pages = "17", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:COE, author = "Anonymous", title = "{C\#} offers an easy-to-use alternative to {Java}", journal = "Computer Weekly", pages = "30--30", day = "18", month = jan, year = "2005", CODEN = "????", ISSN = "0010-4787", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2005:FJI, author = "Anonymous", title = "Four {Java IDEs} Duke It Out", journal = j-INFOWORLD, volume = "27", number = "13", pages = "32--38", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Mon Apr 18 13:33:57 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:JF, author = "Anonymous", title = "{Java} in the factory", journal = j-CONTROL-ENG, volume = "52", number = "4", pages = "46--52", year = "2005", CODEN = "CENGAX", ISSN = "0010-8049", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Control Engineering", } @Article{Anonymous:2005:JGS, author = "Anonymous", title = "{Java} Grows Suites: {Sun}'s {Java Enterprise System} is dividing into suites tailored to specific functions such as identity management", journal = j-INFOWORLD, volume = "27", number = "5", pages = "16--18", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:JND, author = "Anonymous", title = "{Java} and {.NET} differences remain unresolved", journal = "Computer Weekly", pages = "14--15", day = "28", month = jun, year = "2005", CODEN = "????", ISSN = "0010-4787", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2005:JPF, author = "Anonymous", title = "{Java} project fires up supporters, critics", journal = j-ELECTRONIC-ENG-TIMES, volume = "1364", pages = "8--19", year = "2005", CODEN = "????", ISSN = "0192-1541", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic engineering times", } @Article{Anonymous:2005:OSJ, author = "Anonymous", title = "{Oracle AS 1Og} Shares the {Java} Joy: Primed for business, {Orcale Application Server 1Og Release 2} frees {Java} apps from traditional server binds", journal = j-INFOWORLD, volume = "27", number = "15", pages = "23--25", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Wed May 11 18:58:37 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:PHS, author = "Anonymous", title = "{Presentations}: Home servers: {Java} programming", journal = "Av Magazine", volume = "1", pages = "33", year = "2005", CODEN = "????", ISSN = "1361-3685", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2005:SAS, author = "Anonymous", title = "Security Audits for Source Code Fortify Source Code: {Analysis Suite 3.0} brings deep, intelligent security analysis to {C}, {C++}, {C\#}, {Java}, {JSP}, and {SQL} program code", journal = j-INFOWORLD, volume = "27", number = "3", pages = "24--25", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:SSE, author = "Anonymous", title = "{Sicherheitskritische Software: Echtzeittaugliches Java}", journal = j-ELECTRONIK, volume = "54", number = "HEFT1", pages = "26--27", year = "2005", CODEN = "EKRKAR", ISSN = "0013-5658", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Elektronik", } @Article{Anonymous:2005:SSS, author = "Anonymous", title = "Subscription Suites: {Sun Microsystems} seeks to undercut competitors by reorganizing its {Java} middleware stack into suites", journal = j-INFORMATION-WEEK, volume = "1025", pages = "32--33", year = "2005", CODEN = "INFWE4", ISSN = "8750-6874", ISSN-L = "1938-3371", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information Week", } @Article{Anonymous:2005:TPI, author = "Anonymous", title = "Two Plug-ins Rev Up: {Eclipse M7 NitroX} and {MyEclipse Enterprise Workbench} bring depth and breadth to {Java Web} coding", journal = j-INFOWORLD, volume = "27", number = "6", pages = "26--28", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:TTT, author = "Anonymous", title = "{TIGER}, {TIGER}: There's a new release of {Java} and although {Pan Pantziarka} isn't sure what to call it, he knows where to learn about it", journal = "Application Development Advisor", volume = "9", number = "1", pages = "28--29", year = "2005", CODEN = "????", ISSN = "1369-4200", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Anonymous:2005:VBJ, author = "Anonymous", title = "{Vanward} Beefs Up {Java} Project Tracking", journal = j-INFOWORLD, volume = "27", number = "16", pages = "32--33", year = "2005", CODEN = "INWODU", ISSN = "0199-6649", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "InfoWorld", } @Article{Anonymous:2005:VPS, author = "Anonymous", title = "Visual programming: Some tips on how to make using the {Java} platform easier and how to make coding simpler", journal = j-PERS-COMPUT-WORLD, volume = "28", number = "3", pages = "179--182", year = "2005", CODEN = "PCWODU", ISSN = "0142-0232", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Personal computer world", } @Article{April:2005:NJP, author = "C. A. April", title = "{.NET-to-Java} Porting Made Easy: {Mainsoft} offers a tool to alleviate the headaches {ISVs} face when porting applications", journal = "Varbusiness", volume = "21", number = "4", pages = "46--46", year = "2005", CODEN = "????", ISSN = "0894-5802", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Arnold:2005:JPL, author = "Ken Arnold and James Gosling and David (David Colin) Holmes", title = "The {Java{\TM}} Programming Language", publisher = pub-AW, address = pub-AW:adr, edition = "Fourth", pages = "xxviii + 891", year = "2005", ISBN = "0-321-34980-6", ISBN-13 = "978-0-321-34980-4", LCCN = "QA76.73.J38 A76 2005", bibdate = "Mon Oct 03 12:27:10 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Avgustinov:2005:OA, author = "Pavel Avgustinov and Aske Simon Christensen and Laurie Hendren and Sascha Kuzins and Jennifer Lhot{\'a}k and Ond{\v{r}}ej Lhot{\'a}k and Oege de Moor and Damien Sereni and Ganesh Sittampalam and Julian Tibble", title = "Optimising {aspectJ}", journal = j-SIGPLAN, volume = "40", number = "6", pages = "117--128", month = jun, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 21 17:04:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Avvenuti:2005:MUJ, author = "Marco Avvenuti and Alessio Vecchio", title = "{MobileRMI}: upgrading {Java Remote Method Invocation} towards mobility", journal = j-SPE, volume = "35", number = "10", pages = "939--975", month = aug, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.658", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Oct 4 05:39:37 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "14 Apr 2005", } @Article{Back:2005:KJR, author = "Godmar Back and Wilson C. Hsieh", title = "The {KaffeOS Java} runtime system", journal = j-TOPLAS, volume = "27", number = "4", pages = "583--630", month = jul, year = "2005", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Sep 15 14:26:27 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Badjonski:2005:AJA, author = "Mihal Badjonski and Mirjana Ivanovic and Zoran Budimac", title = "{Adaptable Java Agents (AJA)} --- a Tool for Programming of Multi-Agent Systems", journal = j-SIGPLAN, volume = "40", number = "2", pages = "17--26", month = feb, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:15 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Barabash:2005:PIM, author = "Katherine Barabash and Ori Ben-Yitzhak and Irit Goft and Elliot K. Kolodner and Victor Leikehman and Yoav Ossia and Avi Owshanko and Erez Petrank", title = "A parallel, incremental, mostly concurrent garbage collector for servers", journal = j-TOPLAS, volume = "27", number = "6", pages = "1097--1146", month = nov, year = "2005", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1108970.1108972", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jan 11 05:23:15 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Multithreaded applications with multigigabyte heaps running on modern servers provide new challenges for garbage collection (GC). The challenges for ``server-oriented'' GC include: ensuring short pause times on a multigigabyte heap while minimizing throughput penalty, good scaling on multiprocessor hardware, and keeping the number of expensive multicycle fence instructions required by weak ordering to a minimum. We designed and implemented a collector facing these demands building on the mostly concurrent garbage collector proposed by Boehm et al. [1991]. Our collector incorporates new ideas into the original collector. We make it parallel and incremental; we employ concurrent low-priority background GC threads to take advantage of processor idle time; we propose novel algorithmic improvements to the basic mostly concurrent algorithm improving its efficiency and shortening its pause times; and finally, we use advanced techniques, such as a low-overhead work packet mechanism to enable full parallelism among the incremental and concurrent collecting threads and ensure load balancing. We compared the new collector to the mature, well-optimized, parallel, stop-the-world mark-sweep collector already in the IBM JVM. When allowed to run aggressively, using 72\% of the CPU utilization during a short concurrent phase, our collector prototype reduces the maximum pause time from 161 ms to 46 ms while only losing 11.5\% throughput when running the SPECjbb2000 benchmark on a 600-MB heap on an 8-way PowerPC 1.1-GHz processors. When the collector is limited to a nonintrusive operation using only 29\% of the CPU utilization, the maximum pause time obtained is 79 ms and the loss in throughput is 15.4\%.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Bardram:2005:JCA, author = "J. E. Bardram", title = "The {Java Context Awareness Framework} ({JCAF}) --- {A} Service Infrastructure and Programming Framework for Context-Aware Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "3468", pages = "98--115", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Book{Bauer:2005:HA, author = "Christian Bauer and Gavin King", title = "Hibernate in Action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxiii + 408", year = "2005", ISBN = "1-932394-15-X", ISBN-13 = "978-1-932394-15-3", LCCN = "QA76.64 .B393 2005", bibdate = "Tue Aug 10 14:50:47 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", URL = "http://www.manning.com/bauer", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Beatty:2005:FYW, author = "Andrew Beatty", title = "Feeling your way in {Java}: An essay on society and emotion", journal = "Ethnos", volume = "70", number = "1", pages = "53--78", month = mar, year = "2005", CODEN = "????", ISSN = "0014-1844", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "26", } @Article{Beck:2005:CLT, author = "Leland L. Beck and Alexander W. Chizhik and Amy C. McElroy", title = "Cooperative learning techniques in {CS1}: design and experimental evaluation", journal = j-SIGCSE, volume = "37", number = "1", pages = "470--474", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047495", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A set of cooperative learning exercises were designed for use in a Java-based CS1 course. The exercises used specific roles to focus students' attention on key concepts of the Java language, and on key mental processes of programming and problem solving. A controlled experiment was conducted to evaluate the effectiveness of this approach. The results show that the cooperative learning experience had a significant positive effect on student performance, and may have been of special benefit to women and minority students.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bellia:2005:HOP, author = "Marco Bellia and M. Eugenia Occhiuto", title = "Higher order Programming in {Java}: Introspection, Subsumption and Extraction", journal = j-FUND-INFO, volume = "67", number = "1--3", pages = "29--44", month = jan, year = "2005", CODEN = "FUMAAJ", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:03:23 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Beloglavec:2005:ALM, author = "Simon Beloglavec and Marjan Heri{\v{c}}ko and Matja{\v{z}} B. Juri{\v{c}} and Ivan Rozman", title = "Analysis of the limitations of multiple client handling in a {Java} server environment", journal = j-SIGPLAN, volume = "40", number = "4", pages = "20--28", month = apr, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 21 17:04:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Benaya:2005:APJ, author = "Tamar Benaya and Ela Zur", title = "Advanced programming in {Java} workshop: teaching methodology", journal = j-SIGCSE, volume = "37", number = "3", pages = "348--348", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067547", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes the Advanced Programming in Java Workshop given in the Computer Science (CS) department of the Open University of Israel (OUI). The workshop is based primarily on J2EE technologies. We will describe the methodology of the workshop which combines several academic skills which we believe every university graduate must be exposed to.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bergel:2005:CJC, author = "Alexandre Bergel and St{\'e}phane Ducasse and Oscar Nierstrasz", title = "{Classbox\slash J}: controlling the scope of change in {Java}", journal = j-SIGPLAN, volume = "40", number = "10", pages = "177--189", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bergin:2005:AJ, author = "Joseph Bergin", title = "Academic jeopardy", journal = j-SIGCSE, volume = "37", number = "3", pages = "389--389", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067592", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A simple Java application is presented that can assist an instructor to carry on a review of a linked set of topics in a fun way. It encourages students to express the necessary ideas in their own words. It is available from the author.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bergin:2005:TPE, author = "Joseph Bergin and Eugene Wallingford and Michael Caspersen and Michael Goldweber and Michael Kolling", title = "Teaching polymorphism early", journal = j-SIGCSE, volume = "37", number = "3", pages = "342--343", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067541", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Is it possible to teach dynamic polymorphism early? What techniques could facilitate teaching it in Java. This panel will bring together people who have considered this question and attempted to implement it in various ways, some more completely than others. It will also give participants an opportunity to explore the topic and to share their own ideas.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bergstra:2005:NAJ, author = "J. A. Bergstra and I. Bethke", title = "Network algebra in {Java}", journal = j-J-LOGIC-ALG-PROG, volume = "62", number = "2", pages = "247--271", year = "2005", CODEN = "????", ISSN = "1567-8326", ISSN-L = "1567-8326", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Logic and Algebraic Programming", } @Article{Berzal:2005:JTF, author = "F. Berzal", title = "{Java} Tools and Frameworks for {Web} Application Development", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "6", number = "5", pages = "5--5", month = may, year = "2005", CODEN = "????", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Fri Jul 15 17:50:20 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/iel5/8968/31212/01453474.pdf?isnumber=31212&prod=JNL&arnumber=1453474&arSt=+5&ared=+5&arAuthor=+Berzal%2C+F.; http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=31212&arnumber=1453474&count=4&index=2", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Bettini:2005:JPT, author = "L. Bettini", title = "A {Java} Package for Transparent Code Mobility", journal = j-LECT-NOTES-COMP-SCI, volume = "3409", pages = "112--122", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bierhoff:2005:LOS, author = "Kevin Bierhoff and Jonathan Aldrich", title = "Lightweight object specification with typestates", journal = j-SIGSOFT, volume = "30", number = "5", pages = "217--226", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081741", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Previous work has proven typestates to be useful for modeling protocols in object-oriented languages. We build on this work by addressing substitutability of subtypes as well as improving precision and conciseness of specifications. We propose a specification technique for objects based on abstract states that incorporates state refinement, method refinement, and orthogonal state dimensions. Union and intersection types form the underlying semantics of method specifications. The approach guarantees substitutability and behavioral subtyping. We designed a dynamic analysis to check existing object-oriented software for protocol conformance and validated our approach by specifying two standard Java libraries. We provide preliminary evidence for the usefulness of our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Binder:2005:ESJ, author = "W. Binder and J. Hulaas", title = "Extending Standard {Java} Runtime Systems for Resource Management", journal = j-LECT-NOTES-COMP-SCI, volume = "3437", pages = "154--169", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bishop:2005:EIJ, author = "Judith Bishop and R. Nigel Horspool and Basil Worrall", title = "Experience in integrating {Java} with {C\#} and {.NET}", journal = j-CCPE, volume = "17", number = "5--6", pages = "663--680", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.858", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Book{Bloch:2005:JPT, author = "Joshua Bloch and Neal Gafter", title = "{Java} puzzlers: traps, pitfalls, and corner cases", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 282", year = "2005", ISBN = "0-321-33678-X (paperback)", ISBN-13 = "978-0-321-33678-1 (paperback)", LCCN = "QA76.73.J38 B58 2005", bibdate = "Mon Mar 27 07:41:13 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip0513/2005015278.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Boehm:2005:CRJ, author = "H. J. Boehm", title = "The constructive reals as a {Java} library", journal = j-J-LOGIC-ALG-PROG, volume = "64", number = "1", pages = "3--11", year = "2005", CODEN = "????", ISSN = "1567-8326", ISSN-L = "1567-8326", bibdate = "Tue May 31 14:15:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Logic and Algebraic Programming", } @Article{Boldi:2005:MSJ, author = "Paolo Boldi and Sebastiano Vigna", title = "Mutable strings in {Java}: design, implementation and lightweight text-search algorithms", journal = j-SCI-COMPUT-PROGRAM, volume = "54", number = "1", pages = "3--23", month = jan, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:43 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Borger:2005:HLM, author = "Egon B{\"o}rger and Nicu G. Fruja and Vincenzo Gervasi and Robert F. St{\"a}rk", title = "A high-level modular definition of the semantics of {C\#}", journal = j-THEOR-COMP-SCI, volume = "336", number = "2--3", pages = "235--284", day = "26", month = may, year = "2005", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Thu Jul 7 14:28:18 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/03043975", URL = "http://www.only4gurus.net/miscellaneous/cs03.pdf", abstract = "We propose a structured mathematical definition of the semantics of C\# programs to provide a platform-independent interpreter view of the language for the C\# programmer, which can also be used for a precise analysis of the ECMA standard of the language and as a reference model for teaching. The definition takes care to reflect directly and faithfully---as much as possible without becoming inconsistent or incomplete---the descriptions in the C\# standard to become comparable with the corresponding models for Java in St{\"a}rk et al. (Java and Java Virtual Machine---Definition, Verification, Validation, Springer, Berlin, 2001) and to provide for implementors the possibility to check their basic design decisions against an accurate high-level model. The model sheds light on some of the dark corners of C\# and on some critical differences between the ECMA standard and the implementations of the language.", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", keywords = "C-sharp (C\#)", } @Article{Boroday:2005:DAJ, author = "S. Boroday and A. Petrenko and J. Singh and H. Hallal", title = "Dynamic analysis of {Java} applications for multithreaded antipatterns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083247", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/multithreading.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Formal verification is not always applicable to large industrial software systems due to scalability issues and difficulties in formal model and requirements specification. The scalability and model derivation problems could be alleviated by runtime trace analysis, which combines both testing and formal verification. We implement and compare an ad-hoc custom approach and a formal approach to detect common bug patterns in multithreaded Java software. We use the tracing platform of the Eclipse IDE and state-of-the-art model checker Spin.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Briggs:2005:TMJ, author = "L. L. Briggs", title = "There's more to {Java} vs. {.NET} than technology", journal = "Application Development Trends", volume = "12", number = "5", pages = "43--47", year = "2005", CODEN = "????", ISSN = "1073-9564", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Brinkschulte:2005:ICA, author = "U. Brinkschulte and M. Pacher", title = "Implementing Control Algorithms Within a Multithreaded {Java} Microcontroller", journal = j-LECT-NOTES-COMP-SCI, volume = "3432", pages = "33--49", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Brosgol:2005:CME, author = "B. M. Brosgol", title = "A Comparison of the Mutual Exclusion Features in {Ada} and the Real-Time Specification for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3555", pages = "129--143", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Bruce:2005:CHT, author = "Kim B. Bruce", title = "Controversy on how to teach {CS} 1: a discussion on the {SIGCSE}-members mailing list", journal = j-SIGCSE, volume = "37", number = "2", pages = "111--117", month = jun, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1083431.1083477", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:18 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse37.html#Bruce05; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib", abstract = "A discussion took place on the SIGCSE mailing list in late March of 2004 that raised important issues on how to teach introductory courses using Java. This article attempts to summarize several of the important points raised during this discussion, among them whether or how objects should be taught early or late in a CS 1 course, or indeed, whether object-oriented languages should be postponed until a second course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bruckschlegel:2005:MCC, author = "T. Bruckschlegel", title = "Microbenchmarking {C++}, {C\#}, and {Java}", journal = j-CCCUJ, volume = "23", number = "7", pages = "14--21", year = "2005", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Bruno:2005:JWS, author = "E. J. Bruno", title = "{Java Web} Services \& Application Architectures", journal = j-DDJ, volume = "30", number = "2", pages = "16--23", year = "2005", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Budimlic:2005:CAW, author = "Zoran Budimli{\'c} and Ken Kennedy", title = "Compiling almost-whole {Java} programs", journal = j-CCPE, volume = "17", number = "5--6", pages = "573--588", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.850", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", xxpages = "573--587", } @Article{Buhr:2005:ISM, author = "Peter A. Buhr and Ashif S. Harji", title = "Implicit-signal monitors", journal = j-TOPLAS, volume = "27", number = "6", pages = "1270--1343", month = nov, year = "2005", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1108970.1108975", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jan 11 05:23:15 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "An implicit (automatic) signal monitor uses a waituntil predicate statement to construct synchronization, as opposed to an explicit-signal monitor using condition variables and signal/wait statements for synchronization. Of the two synchronization approaches, the implicit-signal monitor is often easier to use and prove correct, but has an inherently high execution cost. Hence, its primary use is for prototyping concurrent systems using monitors, where speed and accuracy of software development override execution performance. After a concurrent system is working, any implicit-signal monitor that is a performance bottleneck can be converted to an explicit-signal monitor. Unfortunately, many monitor-based concurrency systems provide only explicit-signal monitors, precluding the design benefits of implicit-signal monitors. This article presents a historical look at the development of the implicit-signal monitor in relation to its counterpart the explicit-signal monitor. An analysis of the different kinds of implicit-signal monitors shows the effects certain design decisions have on the problems that can be solved and the performance of the solutions. Finally, an extensive discussion is presented on simulating an implicit-signal monitor via different explicit-signal monitors. These simulations are reasonably complex, depending on the kind of explicit-signal monitor available for the simulation and the desired semantics required for the implicit-signal monitor. Interestingly, the complexity of the simulations also illustrates certain deficiencies with explicit-signal monitors, which are discussed in detail. Performance comparisons are made among the different simulations with monitors from the concurrent systems PThreads, Java, and $ \mu $C++.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Book{Burnette:2005:EIP, author = "Ed Burnette", title = "{Eclipse IDE}: pocket guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "ix + 117", year = "2005", ISBN = "0-596-10065-5", ISBN-13 = "978-0-596-10065-0", LCCN = "QA76.73.J38 B875 2005", bibdate = "Thu Oct 6 07:24:49 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596100650", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Cabri:2005:ERB, author = "Giacomo Cabri and Luca Ferrari and Letizia Leonardi", title = "Exploiting runtime bytecode manipulation to add roles to {Java} agents", journal = j-SCI-COMPUT-PROGRAM, volume = "54", number = "1", pages = "73--98", month = jan, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:43 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Cabri:2005:IRJ, author = "G. Cabri and L. Ferrari and L. Leonardi", title = "Injecting roles in {Java} agents through runtime bytecode manipulation", journal = j-IBM-SYS-J, volume = "44", number = "1", pages = "185--208", month = "????", year = "2005", CODEN = "IBMSA7", ISSN = "0018-8670", bibdate = "Sat Apr 16 18:29:42 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/", URL = "http://www.research.ibm.com/journal/sj/441/cabri.html; http://www.research.ibm.com/journal/sj/441/cabri.pdf; http://www.research.ibm.com/journal/sj/441/cabri.txt", acknowledgement = ack-nhfb, fjournal = "IBM Systems Journal", ordernumber = "G321-0156", } @Article{Cahoon:2005:RAE, author = "Brendon Cahoon and Kathryn S. McKinley", title = "Recurrence analysis for effective array prefetching in {Java}", journal = j-CCPE, volume = "17", number = "5--6", pages = "589--616", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.851", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Article{Cepa:2005:MGM, author = "V. Cepa and M. Mezini", title = "{MobCon}: a Generative Middleware Framework for {Java} Mobile Applications", journal = "Proceedings of the Annual Hawaii International Conference on System Sciences", volume = "CONF38", pages = "283--283", year = "2005", CODEN = "????", ISSN = "1060-3425", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Chan:2005:UXJ, author = "W. L. Chan and Z. Qu", title = "Using {XML\slash Java} to Enhance an Online Learning Architecture for Engineering Education", journal = j-INT-J-ENG-EDUC, volume = "21", number = "2", pages = "288--296", year = "2005", CODEN = "IEEDEF", ISSN = "0949-149X", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "International Journal of Engineering Education", } @Article{Chang:2005:EJG, author = "Aaron N. Chang and Jason McDermott and Ram Samudrala", title = "An enhanced {Java} graph applet interface for visualizing interactomes", journal = j-BIOINFORMATICS, volume = "21", number = "8", pages = "1741--1742", day = "15", month = apr, year = "2005", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Apr 18 13:33:57 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "2", } @Article{Chang:2005:RIR, author = "R. S. Chang", title = "Review of {{\em Integration-Ready Architecture and Design: Software Engineering with XML, Java, .NET, Wireless, Speech, and Knowledge Technologies\/} by Jeff Zhuk, Cambridge University Press, 2004, \$75.00, ISBN 0-521-52583-7}", journal = j-QUEUE, volume = "3", number = "2", pages = "58--58", month = mar, year = "2005", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Thu Mar 24 17:18:57 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Chatley:2005:KLP, author = "Robert Chatley and Thomas Timbul", title = "{KenyaEclipse}: learning to program in eclipse", journal = j-SIGSOFT, volume = "30", number = "5", pages = "245--248", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081746", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A fundamental part of a Computer Science degree is learning to program. Rather than starting students on a full commercial language, we favour using a dedicated ``teaching language'' to introduce programming concepts. At the same time, we want to introduce students to popular tools that assist in the software development process. However, up until now our teaching language, Kenya, has not been supported by professional IDEs. Therefore, we have been unable to progress smoothly from first principles to the state of the art within one environment. We present work that integrates the Kenya language into the Eclipse environment. Students can now become familiar with the major features of a professional IDE while learning to program, and experience a smooth transition to commercial languages within the same environment. One of the hardest things to teach students is good programming style. Compilers reveal syntactic and type errors, but do not analyse style. We have harnessed as-you-type code checking, as seen in Eclipse's Java development tools, to provide advice on program style as well as correctness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chavez:2005:JFE, author = "H. Z. Chavez", title = "{JavaServer Faces}: An Excellent Learning Tool", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "6", number = "2", pages = "6--6", month = feb, year = "2005", CODEN = "????", DOI = "https://doi.org/10.1109/MDSO.2005.11", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Fri Jul 15 17:50:18 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/iel5/8968/30522/01407763.pdf?isnumber=30522&prod=JNL&arnumber=1407763&arSt=+6&ared=+6&arAuthor=Chavez%2C+H.Z.; http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=30522&arnumber=1407763&count=5&index=4", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Che:2005:REC, author = "Haoyang Che", title = "Review of {{\booktitle{The Elements of C++ Style}} by Trevor Misfeldt, Gregory Bumgardner, and Andrew Gray; Cambridge University Press: Cambridge, 2004, 0-521-89308-9}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "29--29", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050869", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When we first write an article, generally speaking, we may not pay a lot of attention to the style. However, after a few more pieces, we will gradually find that these articles need polishing not only in the contents, but also in the styles, so we turn to Struck and White's The Elements of Style for help. Similarly, in the field of computer languages, there have many books (The Elements of Java Style, The Elements of C++ Style, The Elements of UML Style) furnishing a set of rules for writing in a certain language like C++ or Java. To some extent, conforming to style is a symbol of specialty. Consistent style facilitates communication and will be honored by other members in the same team.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2005:IPF, author = "Stephen Chen and Stephen Morris", title = "Iconic programming for flowcharts, {Java}, {Turing}, etc", journal = j-SIGCSE, volume = "37", number = "3", pages = "104--107", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067477", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "One of the largest barriers to learning programming is the precise and complex syntax required to write programs. This barrier is a key impediment to the integration of programming into the core curriculum of general high school science courses --- there is not enough time to learn both syntax and programming in a three-week course module. The newly developed ``Iconic Programmer'' allows executable programs to be written through mouse clicks and menus, includes symbol by symbol translation into Java and Turing, and comes complete with a three-week lesson plan suitable to new programmers. To date, the new tool has been used effectively with full-semester, introductory programming courses at both the university and high school level.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Chen:2005:JMM, author = "F. Chen and G. Rosu", title = "{Java-MOP}: a Monitoring Oriented Programming Environment for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3440", pages = "546--550", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Choi:2005:JMA, author = "Hyung-Kyu Choi and Yoo C. Chung and Soo-Mook Moon", title = "{Java} Memory Allocation with Lazy Worst Fit for Small Objects", journal = j-COMP-J, volume = "48", number = "4", pages = "437--442", month = jul, year = "2005", CODEN = "CMPJA6", DOI = "https://doi.org/10.1093/comjnl/bxh101", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Tue Nov 8 05:58:50 MST 2005", bibsource = "http://comjnl.oxfordjournals.org/content/vol48/issue4/index.dtl; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://comjnl.oxfordjournals.org/cgi/content/abstract/48/4/437; http://comjnl.oxfordjournals.org/cgi/reprint/48/4/437", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Christensen:2005:TLJ, author = "Henrik B{\ae}rbak Christensen", title = "{TS-05}: 150 lines of {Java} with high architectural complexity", journal = j-SIGCSE, volume = "37", number = "3", pages = "396--396", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067599", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In the short time span available in a software architecture course, it is difficult to find a software system that is both interesting from an architectural perspective and so small that it does not overwhelm the students. We present TS-05 which is a bare 150 line Java ``toy-system'' that never-the-less exhibits architectural complexity and challenges that emphasize the usefulness of architectural concepts, primarily views, quality attributes and connectors.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cimato:2005:OOJ, author = "S. Cimato and A. {De Santis} and U. {Ferraro Petrillo}", title = "Overcoming the obfuscation of {Java} programs by identifier renaming", journal = j-J-SYST-SOFTW, volume = "78", number = "1", pages = "60--72", month = oct, year = "2005", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Sep 7 07:27:01 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Cirstea:2005:RBP, author = "H. Cirstea and P. E. Moreau and A. Reilles", title = "Rule-based Programming in {Java} for Protocol Verification", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "117", number = "??", pages = "209--227", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Cohen:2005:AIC, author = "Robert F. Cohen and Alexander V. Fairley and David Gerry and Gustavo R. Lima", title = "Accessibility in introductory computer science", journal = j-SIGCSE, volume = "37", number = "1", pages = "17--21", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047367", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes our efforts to integrate software accessibility into the CS1 curriculum. Accessibility is an important aspect of modern software systems for both legal and ethical reasons. The acceptance of Java as language for CS1 gives us the opportunity to teach accessibility from the beginning, since Java Accessibility is simple and integrated into Swing components. We present simple guidelines on how to incorporate Accessibility into a Java based CS1, and describe programming projects that incorporate accessibility.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cok:2005:EJU, author = "D. R. Cok and J. R. Kiniry", title = "{ESC\slash Java2}: Uniting {ESC\slash Java} and {JML} --- Progress and Issues in Building and Using {ESC\slash Java2}, Including a Case Study Involving the Use of the Tool to Verify Portions of an {Internet} Voting Tally System", journal = j-LECT-NOTES-COMP-SCI, volume = "3362", pages = "108--128", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Cook:2005:HCE, author = "Robert P. Cook", title = "Heuristic compression of an {English} word list", journal = j-SPE, volume = "35", number = "6", pages = "577--581", month = may, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.648", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:39 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "The goal of the project was to design and implement an English word-list representation suitable for spell-checking in space-constrained environments. The compression algorithm was derived by statistically analyzing the word list. A compression ratio of 18\% was achieved through a combination of prefix and suffix encoding. The compressed file can be randomly accessed by prefix marker positions. A simple spell-checker based on the encoding was implemented and tested in Java.", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "compression; English word list; spell checking", onlinedate = "16 Feb 2005", } @Book{Crane:2005:AA, author = "Dave Crane and Eric Pascarello and Darren James", title = "{Ajax} in Action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "680 (est.)", year = "2005", ISBN = "1-932394-61-3", ISBN-13 = "978-1-932394-61-0", LCCN = "????", bibdate = "Mon Oct 03 16:17:49 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$22.50 (electronic), US\$44.95 (print + electronic)", URL = "http://www.manning.com/books/crane", acknowledgement = ack-nhfb, keywords = "Ajax (Asynchronous JavaScript and XML)", } @Article{Czajkowski:2005:RMI, author = "Grzegorz Czajkowski and Stephen Hahn and Glenn Skinner and Pete Soper and Ciar{\'a}n Bryce", title = "A resource management interface for the {Java\TM{}} platform", journal = j-SPE, volume = "35", number = "2", pages = "123--157", month = feb, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.628", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:36 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "17 Nov 2004", } @Article{dAmorim:2005:EBR, author = "Marcelo d'Amorim and Klaus Havelund", title = "Event-based runtime verification of {Java} programs", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083249", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce the temporal logic HAWK and its supporting tool for runtime verification of Java programs. A monitor for a HAWK formula checks if a finite trace of program events satisfies the formula. HAWK is a programming-oriented extension of the rule-based EAGLE logic that has been shown capable of defining and implementing a range of finite trace monitoring logics, including future and past time temporal logic, metric (real-time) temporal logics, interval logics, forms of quantified temporal logics, extended regular expressions, state machines, and others. Monitoring is achieved on a state-by-state basis avoiding any need to store the input trace. HAWK extends EAGLE with constructs for capturing parameterized program events such as method calls and method returns. Parameters can be executing thread, the objects that methods are called upon, arguments to methods, and return values. HAWK allows one to refer to these in formulae. The tool synthesizes monitors from formulae and automates program instrumentation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{daSilva:2005:EEJ, author = "A. Faustino da Silva and V. Santos Costa", title = "An Experimental Evaluation of {JAVA JIT} Technology", journal = j-J-UCS, volume = "11", number = "7", pages = "1291--1310", month = "????", year = "2005", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Thu Jul 10 06:41:40 MDT 2008", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_11_7/an_experimental_evaluation_of", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Book{Davison:2005:KGP, author = "Andrew Davison", title = "Killer game programming in {Java}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xxiv + 969", year = "2005", ISBN = "0-596-00730-2", ISBN-13 = "978-0-596-00730-0", LCCN = "QA76.76.C672 D38 22005", bibdate = "Thu Oct 6 07:23:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, remark = "Java gaming and graphics programming---Cover.", subject = "Computer games; Programming; Handbooks, manuals, etc; Computer animation; Handbooks, manuals, etc; Computer drawing; Handbooks, manuals, etc; Java (Computer program language); Handbooks, manuals, etc", } @Article{deLeeuw:2005:BRC, author = "Jan de Leeuw", title = "Book Review: {{\em Correspondence Analysis and Data Coding with Java and R}}", journal = j-J-STAT-SOFT, volume = "14", number = "BR-5", pages = "1--2", month = sep, year = "2005", CODEN = "JSSOBK", ISSN = "1548-7660", bibdate = "Fri Jul 4 10:54:15 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/v14/b05", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", pubdates = "Submitted 2005-09-08; Accepted 2005-09-08", } @Article{Deng:2005:DRE, author = "A. Deng and H. Yu and S. Hu", title = "Design and Realization of Embedded System Development Platform Based on {Java} Technology", journal = j-INF-CONTROL, volume = "34", number = "1", pages = "96--103", year = "2005", CODEN = "IFCNA4", ISSN = "1002-0411", ISSN-L = "0019-9958", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Information and Control", } @Article{Denti:2005:MPJ, author = "Enrico Denti and Andrea Omicini and Alessandro Ricci", title = "Multi-paradigm {Java--Prolog} integration in tu {Prolog}", journal = j-SCI-COMPUT-PROGRAM, volume = "57", number = "2", pages = "217--250", month = aug, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:49 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Detlefs:2005:STP, author = "David Detlefs and Greg Nelson and James B. Saxe", title = "{Simplify}: a theorem prover for program checking", journal = j-J-ACM, volume = "52", number = "3", pages = "365--473", month = may, year = "2005", CODEN = "JACOAH", DOI = "https://doi.org/10.1145/1066100.1066102", ISSN = "0004-5411 (print), 1557-735X (electronic)", ISSN-L = "0004-5411", bibdate = "Tue Jul 5 06:39:45 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This article provides a detailed description of the automatic theorem prover Simplify, which is the proof engine of the Extended Static Checkers ESC/Java and ESC/Modula-3. Simplify uses the Nelson--Oppen method to combine decision procedures for several important theories, and also employs a matcher to reason about quantifiers. Instead of conventional matching in a term DAG, Simplify matches up to equivalence in an E-graph, which detects many relevant pattern instances that would be missed by the conventional approach. The article describes two techniques, error context reporting and error localization, for helping the user to determine the reason that a false conjecture is false. The article includes detailed performance figures on conjectures derived from realistic program-checking problems.", acknowledgement = ack-nhfb, fjournal = "Journal of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J401", } @Article{Dietl:2005:TSC, author = "W. Dietl and P. Muller and A. PoetzschHeffter", title = "A Type System for Checking Applet Isolation in {Java} Card", journal = j-LECT-NOTES-COMP-SCI, volume = "3362", pages = "129--150", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Drysdale:2005:YRC, author = "S. Drysdale and J. Hromcik and D. Reed and R. Hahne", title = "The Year in Review: Changes and Lessons Learned in the Design and Implementation of the {AP CS Exam} in {Java}", journal = j-SIGCSE, volume = "37", number = "1", pages = "323--324", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Eckerdal:2005:NJP, author = "Anna Eckerdal and Michael Thun{\'e}", title = "Novice {Java} programmers' conceptions of ``object'' and ``class'', and variation theory", journal = j-SIGCSE, volume = "37", number = "3", pages = "89--93", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067473", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Problems with understanding concepts, so called misconceptions, have been investigated and reported in a number of studies regarding object-oriented programming [4], [3]. In a first programming course using an object-oriented language, it is of great importance that students get a good understanding of central concepts like object and class at an early stage of their education. We have, with a phenomenographic research approach, performed a study with first year university students, investigating what an understanding of the concepts object and class includes from a student perspective. By applying variation theory [8] to our results we are able to pin-point what the students need to be able to discern in order to gain a ``rich'' understanding of these concepts.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Eich:2005:JTY, author = "Brendan Eich", title = "{JavaScript} at ten years", journal = j-SIGPLAN, volume = "40", number = "9", pages = "129--129", month = sep, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 7 15:09:34 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Eichler:2005:CJT, author = "M. L. Eichler and P. R. Xavier and R. C. Araujo and R. C. Forte and J. C. DelPino", title = "{Carbopolis}: a {Java} Technology-Based Free Software for Environmental Education Installing {Carbopolis}", journal = "Journal of Computers in Mathematics and Science Teaching", volume = "24", number = "1", pages = "43--72", year = "2005", CODEN = "????", ISSN = "0731-9258", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Elsharnouby:2005:USJ, author = "T. Elsharnouby and A. U. Shankar", title = "Using {SeSF Java} in Teaching Introductory Network Courses", journal = j-SIGCSE, volume = "37", number = "1", pages = "67--71", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Elsharnouby:2005:UST, author = "Tamer Elsharnouby and A. Udaya Shankar", title = "Using {SeSFJava} in teaching introductory network courses", journal = j-SIGCSE, volume = "37", number = "1", pages = "67--71", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047381", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Networking course projects are usually described by an informal specification and a collection of test cases. Students often misunderstand the specification or oversimplify it to fit just the test cases. Using formal methods eliminates these misunderstandings and allows the students to test their projects thoroughly, but at the expense of learning a new language. SeSF (Services and Systems Framework) is one way to overcome this obstacle. In SeSF, both implementations and services are defined by programs in conventional languages, thereby, eliminating the need to teach the students a new language. SeSF is a markup language that can be integrated with any conventional language. The integration of SeSF and Java is called SeSFJava. SeSFJava provides a technique to mechanically test whether student projects conform to their corresponding specifications, thereby, providing the instructors with a technique for semi-automated grading. We present a four-phase transport protocol project, and describe how SeSFJava is used in specifying, testing and grading the different phases of this project. The use of SeSF significantly (1) increased the percentage of students who completed the projects, (2) reduced their email queries about the specification, and (3) reduced the grading time.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ernest:2005:WMD, author = "J. C. Ernest and A. S. Bowser and S. Ghule and S. Sudireddy and J. P. Porter and D. A. Talbert and M. J. Kosa", title = "Weathering {MindStorms} with drizzle and {DIODE} in {CS0}", journal = j-SIGCSE, volume = "37", number = "3", pages = "353--353", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067552", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We introduce Drizzle, our new simple object-oriented scripting language for programming LEGO MindStorms robots, and DIODE, the Drizzle Integrated Object-Oriented Development Environment. Drizzle and DIODE have evolved from a student project into useful resources for our CS0 course. In this work we describe Drizzle and DIODE and discuss our experiences with them in our CS0 course. We are dismayed by the low retention rates of undergraduate majors in CS1 and CS2. To attempt to alleviate this problem, we introduced a new required CS0 course in Fall 2004. Its goals are to give students a breadth-first overview of CS and to expose them to algorithmic problem solving before immersing them in Java. We decided to use the MindStorms robots to accommodate student diversity, to introduce a fun element to the course, and to force the students to focus on problem analysis instead of detailed syntax. Our approach complements [2].Drizzle is a simple object-oriented scripting language. It supports repetition, selection, simple assignment statements, logical operators, numeric variables, and predefined objects representing components of a robot, i.e., sensors, motors, and the LCD display. Drizzle is purposely minimal to be suitable for students without prior programming experience. To encourage documentation, Drizzle supports comments. DIODE is the IDE that allows a MindStorms robot to be programmed in Drizzle. To achieve this, we used the leJOS API [3] to implement method call abstractions supporting the predefined objects. The IDE includes an intuitive GUI. It allows for automatic compilation of Drizzle code, including a translator from Drizzle to Java utilizing the predefined MindStorms objects. DIODE also directly interfaces to the robot's IR device. We provided these features because our typical user was familiar with text editing but was not familiar with command-line tools. Our CS0 course is currently taught in one 120-student section and meets 3 hours per week for 14 weeks. At least 3 hours are spent on each of algorithmic thinking and concepts of programming languages before Drizzle and DIODE are formally presented. The students see an actual problem with pseudocode and the corresponding Drizzle solution. A problem is then posed as a ``Drizzle Team Challenge''. Students must complete individual solution plans. The instructor then forms the student groups. Next, the teams produce solution plans. Finally, they are allowed to program with the actual robot. The lab has 3 computers with DIODE installed and 6 robots with 6 tracks. During the Fall 2004 offering, the 14 teams consisted of between 5 and 8 students. The large class size and small number of robots made smaller groups infeasible. No team solved the problem totally correctly during the first lab session. Not surprisingly, the smaller groups were more effective. All teams submitted at least a partial solution to the problem; 12 completed the solution. Students were excited about working with the robots. We are using Drizzle (and DIODE) again during Spring 2005. We expect to have smaller groups. We hope to evaluate the effectiveness of Drizzle; some possible approaches are additional questions in the course evaluation, surveys at the beginning and end of CS1, and analyses of CS1/CS2 retention rates. We may also compare the usage of Drizzle with the standard MindStorms approach and Alice [1].", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Eubanks:2005:WCJ, author = "Brian D. Eubanks", title = "Wicked cool {Java}: code bits, open-source libraries, and project ideas", publisher = pub-NO-STARCH, address = pub-NO-STARCH:adr, pages = "????", year = "2005", ISBN = "1-59327-061-5", ISBN-13 = "978-1-59327-061-2", LCCN = "QA76.73.J38 E92 2005", bibdate = "Mon Dec 5 14:57:31 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/toc/ecip0518/2005024341.html", acknowledgement = ack-nhfb, remark = "Java language and core API --- String utilities --- Processing XML and HTML --- Crawling the semantic Web --- Math and science --- Graphics and visualization --- Multimedia and synchronization --- Fun and games --- Integration", subject = "Java (Computer program language); Object-oriented programming (Computer science)", } @Article{Fahringer:2005:JNP, author = "Thomas Fahringer and Alexandru Jugravu", title = "{JavaSymphony}: a new programming paradigm to control and synchronize locality, parallelism and load balancing for parallel and distributed computing", journal = j-CCPE, volume = "17", number = "7--8", pages = "1005--1025", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.840", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @TechReport{Farzan:2005:FJC, author = "Azadeh Farzan and Jos{\'e} Meseguer and Grigore Ro{\c{s}}u", title = "Formal {JVM} Code Analysis in {JavaFAN}", type = "Technical Report", institution = "Department of Computer Science, University of Illinois at Urbana-Champaign", address = "Urbana-Champaign, IL, USA", day = "19", month = jan, year = "2005", bibdate = "Thu Dec 01 07:26:36 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.cs.toronto.edu/~azadeh/papers/amast04.pdf", abstract = "JavaFAN uses a Maude rewriting logic specification of the JVM semantics as the basis of a software analysis tool with competitive performance. It supports formal analysis of concurrent JVM programs by means of symbolic simulation, breadth-first search, and LTL model checking. We discuss JavaFAN's executable formal specification of the JVM, illustrate its formal analysis capabilities using several case studies, and compare its performance with similar Java analysis tools.", acknowledgement = ack-nhfb, } @Article{Fiedler:2005:TMT, author = "Daniel Fiedler and Kristen Walcott and Thomas Richardson and Gregory M. Kapfhammer and Ahmed Amer and Panos K. Chrysanthis", title = "Towards the measurement of tuple space performance", journal = j-SIGMETRICS, volume = "33", number = "3", pages = "51--62", month = dec, year = "2005", CODEN = "????", DOI = "https://doi.org/10.1145/1111572.1111574", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:21:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many applications rely upon a tuple space within distributed system middleware to provide loosely coupled communication and service coordination. This paper describes an approach for measuring the throughput and response time of a tuple space when it handles concurrent local space interactions. Furthermore, it discusses a technique that populates a tuple space with tuples before the execution of a benchmark in order to age the tuple space and provide a worst-case measurement of space performance. We apply the tuple space benchmarking and aging methods to the measurement of the performance of a JavaSpace, a current example of a tuple space that integrates with the Jini network technology. The experiment results indicate that: (i) the JavaSpace exhibits limited scalability as the number of concurrent interactions from local space clients increases, (ii) the aging technique can operate with acceptable time overhead, and (iii) the aging technique does ensure that the results from benchmarking capture the worst-case performance of a tuple space.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Book{Flanagan:2005:JN, author = "David Flanagan", title = "{Java} in a nutshell", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, edition = "Fifth", pages = "xxiv + 1224", year = "2005", ISBN = "0-596-00773-6", ISBN-13 = "978-0-596-00773-7", LCCN = "QA76.73.J38 F553 2005", bibdate = "Tue Aug 2 10:55:45 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, remark = "Covers Java 5.0. Contains an accelerated introduction to Java for C and C++ programmers who want to learn the language fast.", subject = "Java (Computer program language); Web servers; Object-oriented programming (Computer science)", } @Book{Flanagan:2005:JND, author = "David Flanagan", title = "{Java} in a nutshell: [a desktop quick reference]", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fifth", pages = "xxiv + 1224", year = "2005", ISBN = "0-596-00773-6", ISBN-13 = "978-0-596-00773-7", LCCN = "QA76.73.J38 F553 2005", bibdate = "Thu Oct 6 07:23:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007737", acknowledgement = ack-nhfb, remark = "Covers Java 5.0---Cover.", subject = "Java (Computer program language); Web servers; Object-oriented programming (Computer science)", } @Book{Forman:2005:JRA, author = "Ira Forman and Nate Forman", title = "{Java} Reflection in Action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxii + 273", year = "2005", ISBN = "1-932394-18-4", ISBN-13 = "978-1-932394-18-4", LCCN = "QA76.73.J38 F674 2005", bibdate = "Fri Jul 09 11:24:38 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$44.95", URL = "http://www.manning.com/catalog/view.php?book=forman", acknowledgement = ack-nhfb, } @Article{Fox:2005:SIA, author = "Geoffrey Fox", title = "Special Issue: {ACM 2002 Java Grande-ISCOPE Conference}", journal = j-CCPE, volume = "17", number = "5--6", pages = "419--422", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.933", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Book{Franciscus:2005:SR, author = "George Franciscus and Danilo Gurovich", title = "Struts recipes", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxix + 489", year = "2005", ISBN = "1-932394-24-9 (paperback)", ISBN-13 = "978-1-932394-24-5 (paperback)", LCCN = "TK5105.8885.S76 F73 2005", bibdate = "Fri Oct 21 06:43:56 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Struts framework; Java (Computer program language)", } @Article{Fredlund:2005:GCP, author = "L. A. Fredlund", title = "Guaranteeing Correctness Properties of a {Java} Card Applet", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "113", number = "??", pages = "217--233", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Fu:2005:RTJ, author = "C. Fu and A. Milanova and B. G. Ryder and D. G. Wonnacott", title = "Robustness testing of {Java} server applications", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "31", number = "4", pages = "292--311", month = apr, year = "2005", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2005.51", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1435351", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Funika:2005:PIJ, author = "W. Funika and A. Janik", title = "Providing Interoperability for {Java}-Oriented Monitoring Tools with {JINEXT}", journal = j-LECT-NOTES-COMP-SCI, volume = "3515", pages = "158--165", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gal:2005:IJB, author = "A. Gal and C. W. Probst and M. Franz", title = "Integrated {Java} Bytecode Verification", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "131", number = "", pages = "27--38", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Garbervetsky:2005:PIR, author = "D. Garbervetsky and C. Nakhli and S. Yovine and H. Zorgati", title = "Program Instrumentation and Run-Time Analysis of Scoped Memory in {Java}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "113", number = "??", pages = "105--121", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Geer:2005:EBD, author = "David Geer", title = "{Eclipse} Becomes the Dominant {Java IDE}", journal = j-COMPUTER, volume = "38", number = "7", pages = "16--18", month = jul, year = "2005", CODEN = "CPTRB4", DOI = "https://doi.org/10.1109/MC.2005.228", ISSN = "0018-9162 (print), 1558-0814 (electronic)", ISSN-L = "0018-9162", bibdate = "Fri Jul 4 17:16:17 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/co/2005/07/r7016.pdf", acknowledgement = ack-nhfb, fjournal = "Computer", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=2", } @Book{Gehtland:2005:SDN, author = "Justin Gehtland and Bruce A. Tate", title = "{Spring}: a developer's notebook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xv + 184", year = "2005", ISBN = "0-596-00910-0", ISBN-13 = "978-0-596-00910-6", LCCN = "QA76.73.S67 T38 2005", bibdate = "Mon Mar 27 08:51:58 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", acknowledgement = ack-nhfb, keywords = "Java", subject = "Spring (Computer program language); Application software; Development", } @Article{Geller:2005:TME, author = "Viktor Geller and Christelle Scharff", title = "Traditional and more ``exotic'' {.NET} languages: {VB .NET}, {J\#}, {C\#} and {SML .NET}", journal = j-SIGCSE, volume = "37", number = "3", pages = "406--406", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067610", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/csharp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We study the .NET platform, various .NET languages and their interoperability (with an emphasis on C\# and SML .NET), compare C\# and Java 1.5, and develop related educational material to be used in a Programming Paradigms course. Introducing .NET --- one platform supporting different paradigms --- in such a course seems to be a unique experience in Computer Science Education. It may be a motivating factor for students to learn new programming languages.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Genaim:2005:IFA, author = "S. Genaim and F. Spoto", title = "Information Flow Analysis for {Java} Bytecode", journal = j-LECT-NOTES-COMP-SCI, volume = "3385", pages = "346--362", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Gerth:2005:JTD, author = "V. E. Gerth and P. D. Vize", title = "A {Java} tool for dynamic {Web}-based {$3$D} visualization of anatomy and overlapping gene or protein expression patterns", journal = j-BIOINFORMATICS, volume = "21", number = "7", pages = "1278--1279", year = "2005", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", } @Article{GerthVictor:2005:JTD, author = "E. {Gerth Victor} and D. Vize Peter", title = "A {Java} tool for dynamic web-based {$3$D} visualization of anatomy and overlapping gene or protein expression patterns", journal = j-BIOINFORMATICS, volume = "21", number = "7", pages = "1278--1279", day = "01", month = apr, year = "2005", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "2", } @Article{Gil:2005:MPJ, author = "Joseph (Yossi) Gil and Itay Maman", title = "Micro patterns in {Java} code", journal = j-SIGPLAN, volume = "40", number = "10", pages = "97--116", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Goldovsky:2005:BVN, author = "Leon Goldovsky and Ildefonso Cases and J. {Enright, Anton} and A. {Ouzounis, Christos}", title = "{BioLayoutJava}: Versatile Network Visualisation of Structural and Functional Relationships", journal = "Appl Bioinformatics", volume = "4", number = "1", pages = "71--74", year = "2005", CODEN = "????", ISSN = "1175-5636", bibdate = "Mon Jul 11 08:12:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, pagecount = "4", } @Book{Gosling:2005:JLS, author = "James Gosling and Bill Joy and Guy L. Steele and Gilad Bracha", title = "The {Java} language specification", publisher = pub-AW, address = pub-AW:adr, edition = "Third", pages = "xxxii + 651", year = "2005", ISBN = "0-321-24678-0 (paperback)", ISBN-13 = "978-0-321-24678-3 (paperback)", bibdate = "Tue Nov 1 16:16:00 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "The Java series", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Greenhouse:2005:OAE, author = "Aaron Greenhouse and T. J. Halloran and William L. Scherlis", title = "Observations on the assured evolution of concurrent {Java} programs", journal = j-SCI-COMPUT-PROGRAM, volume = "58", number = "3", pages = "384--411", month = dec, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:52 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Gregg:2005:MLC, author = "David Gregg and James Power and John Waldron", title = "A method-level comparison of the {Java Grande} and {SPEC JVM98} benchmark suites", journal = j-CCPE, volume = "17", number = "7--8", pages = "757--773", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.846", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Griffin:2005:EEG, author = "Paul Griffin and Witawas Srisa-an and J. Morris Chang", title = "An energy efficient garbage collector for {Java} embedded devices", journal = j-SIGPLAN, volume = "40", number = "7", pages = "230--238", month = jul, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 5 07:55:13 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Griffith:2005:MME, author = "Rean Griffith and Gail Kaiser", title = "Manipulating managed execution runtimes to support self-healing systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Self-healing systems require that repair mechanisms are available to resolve problems that arise while the system executes. Managed execution environments such as the Common Language Runtime (CLR) and Java Virtual Machine (JVM) provide a number of application services (application isolation, security sandboxing, garbage collection and structured exception handling) which are geared primarily at making managed applications more robust. However, none of these services directly enables applications to perform repairs or consistency checks of their components. From a design and implementation standpoint, the preferred way to enable repair in a self-healing system is to use an externalized repair/adaptation architecture rather than hardwiring adaptation logic inside the system where it is harder to analyze, reuse and extend. We present a framework that allows a repair engine to dynamically attach and detach to/from a managed application while it executes essentially adding repair mechanisms as another application service provided in the execution environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grigorenko:2005:VTG, author = "Pavel Grigorenko and Ando Saabas and Enn Tyugu", title = "Visual tool for generative programming", journal = j-SIGSOFT, volume = "30", number = "5", pages = "249--252", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081747", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A way of combining object-oriented and structural paradigms of software composition is demonstrated in a tool for generative programming. Metaclasses are introduced that are components with specifications called metainterfaces. Automatic code generation is used that is based on structural synthesis of programs. This guarantees that problems of handling data dependencies, order of application of components, usage of higher-order control structures etc are handled automatically. Specifications can be written either in a specification language or given visually on an architectural level. The tool is Java-based and portable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Guinness:2005:SMM, author = "David Mc Guinness and Liam Murphy", title = "A simulation model of a multi-server {EJB} system", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083278", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Despite the fact that EJB (Enterprise Java Beans) is a widely used technology, research in the area of performance modelling of EJB application servers is quite sparse. This paper will describe how Workbench{\TM}, an advanced simulation modelling tool, can be used to build a scalable model of a multi-server EJB system that allows users to input variables that describe interactions and their constituent methods, as well as system parameters. The model will output the average time for each given user interaction and allow users to seek system improvements by changing the system parameters and workloads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gutterman:2005:HYS, author = "Z. Gutterman and D. Malkhi", title = "Hold Your Sessions: An Attack on {Java} Session-{ID} Generation", journal = j-LECT-NOTES-COMP-SCI, volume = "3376", pages = "44--57", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Han:2005:RCK, author = "Y. Han", title = "Representing Configuration Knowledge for Port-and-Connector Model with {Java}", journal = "Journal of Computer Aided Design and Computer Graphics", volume = "17", number = "3", pages = "511--516", year = "2005", CODEN = "????", ISSN = "1003-9775", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Hansen:2005:IJP, author = "S. Hansen", title = "Interpreting {Java} Program Runtimes", journal = j-SIGCSE, volume = "37", number = "1", pages = "36--40", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hatcher:2005:CCJ, author = "Philip Hatcher and Mathew Reno and Gabriel Antoniu and Luc Boug{\'e}", title = "Cluster Computing with {Java}", journal = j-COMPUT-SCI-ENG, volume = "7", number = "2", pages = "34--39", month = mar # "\slash " # apr, year = "2005", CODEN = "CSENFA", DOI = "https://doi.org/10.1109/MCSE.2005.28", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat May 14 13:11:45 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "http://csdl.computer.org/dl/mags/cs/2005/02/c2034.htm; http://csdl.computer.org/dl/mags/cs/2005/02/c2034.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Herzog:2005:PJS, author = "A. Herzog and N. Shahmehri", title = "Performance of the {Java} security manager", journal = j-COMPUT-SECUR, volume = "24", number = "3", pages = "192--207", year = "2005", CODEN = "CPSEDU", ISSN = "0167-4048", ISSN-L = "0167-4048", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computers and Security", } @Article{Hibbard:2005:JDC, author = "W. Hibbard and C. Rueden and S. Emmerson and T. Rink and D. Glowacki and T. Whittaker and D. Murray and D. Fulker and J. Anderson", title = "{Java} Distributed Components for Numerical Visualization in {VisAD}", journal = j-CACM, volume = "48", number = "3", pages = "98--104", year = "2005", CODEN = "CACMA2", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Book{Holzner:2005:ADG, author = "Steven Holzner", title = "{Ant}: the definitive guide", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xv + 316", year = "2005", ISBN = "0-596-00609-8", ISBN-13 = "978-0-596-00609-9", LCCN = "QA76.73.J38 T57 2005", bibdate = "Thu Oct 6 07:22:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, remark = "Covers Ant 1.6---Cover.", subject = "Ant (Computer file); Java (Computer program language)", } @Article{Hong:2005:CAG, author = "S. Hong", title = "Construction and Application of {GPS} Location-based Services System Based on {JAVA}", journal = "Journal --- Chongqing Jianzhu University", volume = "27", number = "2", pages = "116--120", year = "2005", CODEN = "????", ISSN = "1006-7329", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Hook:2005:BCP, author = "David Hook", title = "Beginning cryptography and {PKI} in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxvi + 448", year = "2005", ISBN = "0-7645-9633-0", ISBN-13 = "978-0-7645-9633-9", LCCN = "QA76.9.A25 H645 2005", bibdate = "Tue Oct 11 05:21:48 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.loc.gov/catdir/toc/ecip0511/2005011272.html", acknowledgement = ack-nhfb, subject = "Computer security; Cryptography; Public key infrastructure (Computer security); Java (Computer program language)", } @Book{Horstmann:2005:BJ, author = "Cay S. Horstmann", title = "Big {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Second", pages = "xxxii + 1216", year = "2005", ISBN = "0-471-69703-6 (paperback)", ISBN-13 = "978-0-471-69703-9 (paperback)", LCCN = "QA76.73.J38 H674 2005", bibdate = "Tue Oct 11 05:00:52 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, remark = "Heavy use of color.", subject = "Java (Computer program language)", } @Article{Hsia:2005:TJC, author = "J. I. Hsia and E. Simpson and D. Smith and R. Cartwright", title = "Taming {Java} for the Classroom", journal = j-SIGCSE, volume = "37", number = "1", pages = "327--331", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hua:2005:CJE, author = "Han Hua and Dai Yafei and Li Xiaoming", title = "{CSFS}: a {Java} enabled network file storage system", journal = j-CCPE, volume = "17", number = "7--8", pages = "991--1003", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.839", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{HuertaYero:2005:JIJ, author = "E. J. {Huerta Yero} and F. {de Oliveira Lucchese} and F. S. Sambatti and M. von Zuben and M. A. {Amaral Henriques}", title = "{JoiN}: The implementation of a {Java}-based massively parallel grid", journal = j-FUT-GEN-COMP-SYS, volume = "21", number = "5", pages = "791--810", year = "2005", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Tue May 31 14:15:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Hunt:2005:JFE, author = "K. Hunt", title = "A {Java} Framework for Experimentation with Steganography", journal = j-SIGCSE, volume = "37", number = "1", pages = "282--286", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hyun:2005:PDC, author = "C. M. Hyun", title = "Parallel and Distributed Components with {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3482", pages = "927--937", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Ishikawa:2005:JOL, author = "A. Ishikawa and E. Nakamura and J. J. Mahoney", title = "Jurassic oceanic lithosphere beneath the southern {Ontong Java Plateau}: Evidence from xenoliths in alnoite, {Malaita, Solomon Islands}", journal = "Geology", volume = "33", number = "5", pages = "393--396", year = "2005", CODEN = "????", ISSN = "0091-7613", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{ISO:2005:IDM, author = "{ISO}", title = "{ISO 19005-1:2005}, Document management---Electronic document file format for long-term preservation---Part 1: Use of {PDF 1.4 (PDF/A-1)}", publisher = pub-ISO, address = pub-ISO:adr, year = "2005", ISBN = "", ISBN-13 = "", LCCN = "", bibdate = "Wed Sep 21 08:32:04 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.aiim.org/documents/standards/ISO_19005-1_(E).doc; http://www.aiim.org/pdf_a/", abstract = "PDF/A is a constrained form of Adobe PDF version 1.4 intended to be suitable for long-term preservation of page-oriented documents for which PDF is already being used in practice. The proposed standard is being developed by an ISO working group with representatives from government, industry, and academia and active support from Adobe Systems Incorporated.\par PDF/A attempts to maximize:\\ * Device independence \\ * Self-containment \\ * Self-documentation The constraints include: \\ * Audio and video content are forbidden \\ * Javascript and executable file launches are prohibited \\ * All fonts must be embedded and also must be legally embeddable for unlimited, universal rendering \\ * Colorspaces specified in a device-independent manner \\ * Encryption is disallowed \\ * Use of standards-based metadata is mandated", acknowledgement = ack-nhfb, remark = "Not yet on ISO Web site.", } @Article{Jayaraman:2005:KDI, author = "G. Jayaraman and V. P. Ranganath and J. Hatcliff", title = "{Kaveri}: Delivering the {Indus Java Program Slicer} to {Eclipse}", journal = j-LECT-NOTES-COMP-SCI, volume = "3442", pages = "269--272", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jeffrey:2005:JJF, author = "A. Jeffrey and J. Rathke", title = "{Java Jr.}: Fully Abstract Trace Semantics for a Core {Java} Language", journal = j-LECT-NOTES-COMP-SCI, volume = "3444", pages = "423--438", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Jeon:2005:JJB, author = "Yoon-Seong Jeon and Hwanwon Chung and Sunyoung Park and Inae Hur and Jae-Hak Lee and Jongsik Chun", title = "{jPHYDIT}: a {Java}-based integrated environment for molecular phylogeny of ribosomal {RNA} sequences", journal = j-BIOINFORMATICS, volume = "21", number = "14", pages = "3171--3173", day = "15", month = jul, year = "2005", CODEN = "????", ISSN = "1367-4803 (print), 1367-4811 (electronic)", ISSN-L = "1367-4803", bibdate = "Mon Jul 11 08:12:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Bioinformatics", pagecount = "3", } @Book{Johnson:2005:PJD, editor = "Rod Johnson and Juergen Hoeller and Alef Arendsen and Thomas Risberg and Colin Sampaleanu", title = "Professional {Java} development with the {Spring Framework}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xxviii + 644", year = "2005", ISBN = "0-7645-7483-3 (paper)", ISBN-13 = "978-0-7645-7483-2 (paper)", LCCN = "QA76.73.J38 P74585 2005", bibdate = "Mon Aug 1 18:33:13 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.wiley.com/WileyCDA/WileyTitle/productCd-0764574833,descCd-authorInfo.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Application software; Development", } @Article{Jovanovic:2005:MDS, author = "N. Jovanovic and R. Popovic and Z. Jovanovic", title = "Modeling Distributed System Entities Which Communicate Asynchronous Via Message Passing in {Java}", journal = j-NEURAL-PAR-SCI-COMPUT, volume = "13", number = "1", pages = "63--76", year = "2005", CODEN = "NPACEM", ISSN = "1061-5369", bibdate = "Tue May 31 14:15:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Neural, Parallel and Scientific Computations", } @Article{Jugravu:2005:JPM, author = "Alexandru Jugravu and Thomas Fahringer", title = "{JavaSymphony}, a programming model for the {Grid}", journal = j-FUT-GEN-COMP-SYS, volume = "21", number = "1", pages = "239--246", day = "1", month = jan, year = "2005", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Fri Jul 15 08:00:45 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/0167739X", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Jung:2005:RTE, author = "J. Y. Jung and K. S. Kim and M. S. Jung", title = "Real-time Embedded Middleware System using {Java}-Native Combination Model", journal = "Transactions --- Korean Institute of Electrical Engineers D", volume = "54", number = "3", pages = "141--147", year = "2005", CODEN = "????", ISSN = "1229-6287", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Kamalov:2005:JAT, author = "R. Kamalov and M. Guillaud and D. Haskins and A. Harrison and R. Kemp and D. Chiu and M. Follen and C. MacAulay", title = "A {Java} application for tissue section image analysis", journal = j-COMPUT-METH-PROG-BIOMED, volume = "77", number = "2", pages = "99--113", year = "2005", CODEN = "CMPBEK", ISSN = "0169-2607 (print), 1872-7565 (electronic)", ISSN-L = "0169-2607", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Computer Methods and Programs in Biomedicine", } @Article{Karaorman:2005:JJR, author = "M. Karaorman and J. Freeman", title = "{jMonitor}: {Java} Runtime Event Specification and Monitoring Library", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "113", number = "??", pages = "181--200", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @InProceedings{Karlsson:2005:EPD, author = "M. Karlsson and E. Hagersten and K. E. Moore and D. A. Wood", title = "Exploring processor design options for {Java}-based middleware", crossref = "Skeie:2005:PIC", pages = "59--68", year = "2005", DOI = "https://doi.org/10.1109/ICPP.2005.38", bibdate = "Tue Oct 24 09:50:30 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Klebanov:2005:JFN, author = "V. Klebanov", title = "A {JMM-Faithful} Non-interference Calculus for {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3409", pages = "101--111", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Klein:2005:VJB, author = "G. Klein", title = "Verified {Java}: Bytecode Verification: Verified {Java} Bytecode Verification", journal = "It", volume = "47", number = "2", pages = "107--110", year = "2005", CODEN = "????", ISSN = "1611-2776", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Klohs:2005:MRJ, author = "K. Klohs and U. Kastens", title = "Memory Requirements of {Java} Bytecode Verification on Limited Devices", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "132", number = "1", pages = "95--111", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Kumar:2005:OTC, author = "Amruth N. Kumar", title = "Online tutors for {C++\slash Java} programming", journal = j-SIGCSE, volume = "37", number = "3", pages = "387--387", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067589", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kwon:2005:RJH, author = "Jagun Kwon and Andy Wellings and Steve King", title = "{Ravenscar--Java}: a high integrity profile for real-time {Java}", journal = j-CCPE, volume = "17", number = "5--6", pages = "681--714", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.843", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", xxpages = "681--713", } @Book{Landau:2005:FCS, author = "Rubin H. Landau and M. J. P{\'a}ez", title = "A first course in scientific computing: symbolic, graphical, and numeric problem solving using {Maple}, {Java}, {Mathematica}, and {Fortran}", publisher = pub-PRINCETON, address = pub-PRINCETON:adr, pages = "xxiv + 481", year = "2005", ISBN = "0-691-12183-4 (hardcover)", ISBN-13 = "978-0-691-12183-3 (hardcover)", LCCN = "Q183.9 .L36 2005", bibdate = "Wed Jan 30 08:33:45 2013", bibsource = "https://www.math.utah.edu/pub/tex/bib/fortran3.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/maple-extract.bib; https://www.math.utah.edu/pub/tex/bib/mathematica.bib; https://www.math.utah.edu/pub/tex/bib/matlab.bib; https://www.math.utah.edu/pub/tex/bib/numana2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Science; Data processing", tableofcontents = "1. Introduction \\ Part 1. Maple (or Mathematica) by doing \\ 2. Getting started with Maple \\ 3. Numbers, expressions, functions; rocket golf \\ 4. Visualizing data, abstract types; electric fields \\ 5. Solving equations, differentiation; towers \\ 6. Integration; power and energy usage (also 14) \\ 7. Matrices and vectors; rotation \\ 8. Searching, programming; dipsticks \\ Part 2. Java (or Fortran90) by doing \\ 9. Getting started with Java \\ 10. Data types, limits, methods; rocket golf \\ 11. Visualization with Java, classes, packages \\ 12. Flow control via logic; projectiles \\ 13. Java input and output \\ 14. Numerical integration; power and energy usage \\ 15. Differential equations with Java and Maple \\ 16. Object-oriented programming; complex currents \\ 17. Arrays: vectors, matrices; rigid-body rotations \\ 18. Advanced objects; baton projectiles \\ 19. Discrete math, arrays as bins, bug dynamics \\ 20. 2-D arrays: file I/O, PDEs; realistic capacitor \\ 21. Web computing, applets, primitive graphics \\ Part 3. \LaTeX{} survival guide \\ 22. \LaTeX{} for text \\ 23. \LaTeX{} for mathematics \\ Appendix A. Glossary \\ Appendix B. Maple quick reference, debugging help \\ Appendix C. Java quick reference and installing software \\ Bibliography \\ Index", } @Book{Langridge:2005:DUM, author = "Stuart Langridge", title = "{DHTML} utopia: modern {Web} design using {JavaScript} and {DOM}", publisher = "SitePoint", address = "Collingwood, VIC, Australia", pages = "xiv + 318", year = "2005", ISBN = "0-9579218-9-6", ISBN-13 = "978-0-9579218-9-4", LCCN = "TK5105.888 .L36 2005", bibdate = "Thu Oct 6 07:25:02 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, remark = "Covers remote scripting/AJAX---Cover.", subject = "Web site development; HTML editors (Computer programs); DHTML (Document markup language); JavaScript (Computer program language)", } @Book{Lano:2005:ASD, author = "K Lano", title = "Advanced systems design with {Java}, {UML}, and {MDA}", publisher = "Elsevier Butterworth-Heinemann", address = "Amsterdam, The Netherlands", pages = "viii + 378", year = "2005", ISBN = "0-7506-6496-7", ISBN-13 = "978-0-7506-6496-7", LCCN = "QA76.76.D47 L37 2005; QA76.76.D47 L375 2005", bibdate = "Fri Jun 23 12:20:56 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, subject = "Computer software; Development; Software architecture; UML (Computer science); Web services; Design; Internet; Computer programs; Computer science; Textbooks", } @Article{Lea:2005:JUC, author = "Doug Lea", title = "The {{\tt java.util.concurrent}} synchronizer framework", journal = j-SCI-COMPUT-PROGRAM, volume = "58", number = "3", pages = "293--309", month = dec, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:52 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Lee:2005:DDR, author = "Yueh-Feng Lee and Ruei-Chuan Chang", title = "Developing dynamic-reconfigurable communication protocol stacks using {Java}", journal = j-SPE, volume = "35", number = "6", pages = "601--620", month = may, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.650", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:39 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "16 Feb 2005", } @Article{Leff:2005:EJC, author = "Avraham Leff and James T. Rayfield", title = "{Enterprise JavaBeans} caching in clustered environments", journal = j-CCPE, volume = "17", number = "7--8", pages = "1027--1051", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.841", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Lhotak:2005:RTE, author = "Ond{\v{r}}ej Lhot{\'a}k and Laurie Hendren", title = "Run-time evaluation of opportunities for object inlining in {Java}", journal = j-CCPE, volume = "17", number = "5--6", pages = "515--537", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.848", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Article{Li:2005:ABT, author = "Tao Li and Ravi Bhargava and Lizy Kurian John", title = "Adapting branch-target buffer to improve the target predictability of {Java} code", journal = j-TACO, volume = "2", number = "2", pages = "109--130", month = jun, year = "2005", CODEN = "????", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Thu Jul 7 14:09:53 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", } @Article{Lim:2005:CCH, author = "Sang Boem Lim and Bryan Carpenter and Geoffrey Fox and Han-ku Lee", title = "Collective communication for the {HPJava} programming language", journal = j-CCPE, volume = "17", number = "7--8", pages = "867--894", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.859", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Louridas:2005:JUT, author = "Panagiotis Louridas", title = "{JUnit}: Unit Testing and Coding in Tandem", journal = j-IEEE-SOFTWARE, volume = "22", number = "4", pages = "12--15", month = jul # "\slash " # aug, year = "2005", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2005.100", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Thu Nov 10 09:16:26 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", keywords = "Java", } @Article{Lujan:2005:EJA, author = "Mikel Luj{\'a}n and John R. Gurd and T. L. Freeman and Jos{\'e} Miguel", title = "Elimination of {Java} array bounds checks in the presence of indirection", journal = j-CCPE, volume = "17", number = "5--6", pages = "489--514", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.847", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Article{Lujan:2005:SFS, author = "M. Lujan and A. Usman and P. Hardie and T. L. Freeman and J. R. Gurd", title = "Storage Formats for Sparse Matrices in {Java}", journal = j-LECT-NOTES-COMP-SCI, volume = "3514", pages = "364--371", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Jun 27 10:52:07 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Macvittie:2005:PAI, author = "D. Macvittie", title = "Product Analysis: Imported {Java}", journal = j-NETWORK-COMPUTING, volume = "16", number = "1", pages = "45--49", year = "2005", CODEN = "NCOMEV", ISSN = "1046-4468", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Network Computing", } @Book{Mann:2005:JFA, author = "Kito D. Mann", title = "{JavaServer Faces} in action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxxiv + 702", year = "2005", ISBN = "1-932394-12-5", ISBN-13 = "978-1-932394-12-2", LCCN = "TK5105.8885.J38 M35 2005", bibdate = "Wed Nov 15 10:37:03 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0626/2005273936-b.html; http://www.loc.gov/catdir/enhancements/fy0626/2005273936-d.html", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web sites; Design; Web site development", } @Article{Manson:2005:JMM, author = "Jeremy Manson and William Pugh and Sarita V. Adve", title = "The {Java} Memory Model", journal = j-SIGPLAN, volume = "40", number = "1", pages = "378--391", month = jan, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Apr 12 09:38:15 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Mares:2005:BRA, author = "Peter Mares", title = "Book Review: {{\em Art of Java Web Development}, by N. Ford}", journal = j-COMP-J, volume = "48", number = "2", pages = "253--253", month = mar, year = "2005", CODEN = "CMPJA6", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Tue Jun 28 17:48:36 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.oup.co.uk/computer_journal/hdb/Volume_48/Issue_02/", URL = "http://www3.oup.co.uk/computer_journal/free_pdf/bxh071.pdf; http://www3.oup.co.uk/computer_journal/hdb/Volume_48/Issue_02/bxh071.sgm.abs.html", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Book{Marinacci:2005:SHT, author = "Joshua Marinacci and Chris Adamson", title = "{Swing} Hacks: Tips and Tools for Killer {GUIs}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xix + 519", year = "2005", ISBN = "0-596-00907-0", ISBN-13 = "978-0-596-00907-6", LCCN = "QA76.73.J38 M37 2005", bibdate = "Mon Aug 01 18:30:39 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$9.95, CAN\$41.95, UK\pounds 20.95", acknowledgement = ack-nhfb, subject = "Swing (Computer file); Java (Computer program language)", } @Article{Markidis:2005:IPP, author = "S. Markidis and G. Lapenta and W. B. VanderHeyden and Z. Budimli{\'c}", title = "Implementation and performance of a particle-in-cell code written in {Java}", journal = j-CCPE, volume = "17", number = "7--8", pages = "821--837", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.856", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Marrero:2005:TFE, author = "Will Marrero and Amber Settle", title = "Testing first: emphasizing testing in early programming courses", journal = j-SIGCSE, volume = "37", number = "3", pages = "4--8", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067451", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The complexity of languages like Java and C++ can make introductory programming classes in these languages extremely challenging for many students. Part of the complexity comes from the large number of concepts and language features that students are expected to learn while having little time for adequate practice or examples. A second source of difficulty is the emphasis that object-oriented programming places on abstraction. We believe that by placing a larger emphasis on testing in programming assignments in these introductory courses, students have an opportunity for extra practice with the language, and this affords them a gentler transition into the abstract thinking needed for programming. In this paper we describe how we emphasized testing in introductory programming assignments by requiring that students design and implement tests before starting on the program itself. We also provide some preliminary results and student reactions.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Masri:2005:UDI, author = "Wes Masri and Andy Podgurski", title = "Using dynamic information flow analysis to detect attacks against applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083216", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a new approach to using dynamic information flow analysis to detect attacks against application software. The approach can be used to reveal and, under some conditions, to prevent attacks that violate a specified information flow policy or exhibit a known information flow signature. When used in conjunction with automatic cluster analysis, the approach can also reveal novel attacks that exhibit unusual patterns of information flows. A set of prototype tools implementing the approach have been developed for Java byte code programs. Case studies in which this approach was applied to several subject programs are described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Massol:2005:MDN, author = "Vincent Massol and Timothy O'Brien and Michael Kosta Loukides", title = "{Maven}: a developer's notebook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxv + 191", year = "2005", ISBN = "0-596-00750-7", ISBN-13 = "978-0-596-00750-8", LCCN = "QA76.76.D47 M37 2005", bibdate = "Thu Oct 6 07:23:06 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, subject = "Maven (Computer file); Java (Computer program language)", } @Book{Mattson:2005:PPP, author = "Timothy G. Mattson and Beverly A. Sanders and Berna Massingill", title = "Patterns for Parallel Programming", publisher = pub-AW, address = pub-AW:adr, pages = "xiii + 355", year = "2005", ISBN = "0-321-22811-1 (hardcover)", ISBN-13 = "978-0-321-22811-6 (hardcover)", LCCN = "QA76.642 .M38 2005", bibdate = "Sat Oct 5 10:09:33 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pvm.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip0418/2004013240.html", abstract = "The Parallel Programming Guide for Every Software Developer From grids and clusters to next-generation game consoles, parallel computing is going mainstream. Innovations such as Hyper-Threading Technology, HyperTransport Technology, and multicore microprocessors from IBM, Intel, and Sun are accelerating the movement's growth. Only one thing is missing: programmers with the skills to meet the soaring demand for parallel software. That's where Patterns for Parallel Programming comes in. It's the first parallel programming guide written specifically to serve working software developers, not just computer scientists. The authors introduce a complete, highly accessible pattern language that will help any experienced developer ``think parallel''-and start writing effective parallel code almost immediately. Instead of formal theory, they deliver proven solutions to the challenges faced by parallel programmers, and pragmatic guidance for using today's parallel APIs in the real world. Coverage includes: Understanding the parallel computing landscape and the challenges faced by parallel developers Finding the concurrency in a software design problem and decomposing it into concurrent tasks Managing the use of data across tasks Creating an algorithm structure that effectively exploits the concurrency you've identified Connecting your algorithmic structures to the APIs needed to implement them Specific software constructs for implementing parallel programs Working with today's leading parallel programming environments: OpenMP, MPI, and Java Patterns have helped thousands of programmers master object-oriented development and other complex programming technologies. With this book, you will learn that they're the best way to master parallel programming too.", acknowledgement = ack-nhfb, author-dates = "1958--", subject = "Parallel programming (Computer science)", tableofcontents = "1: A pattern language for parallel programming \\ 2: Background and jargon of parallel computing \\ 3: The finding concurrency design space \\ 4: The algorithm structure design space \\ 5: The supporting structures design space \\ 6: The implementation mechanisms design space \\ Appendix A: A brief introduction to OpenMP \\ Appendix B: A brief introduction to MPI \\ Appendix C: A brief introduction to concurrent programming in Java", } @Article{Milanova:2005:POS, author = "Ana Milanova and Atanas Rountev and Barbara G. Ryder", title = "Parameterized object sensitivity for points-to analysis for {Java}", journal = j-TOSEM, volume = "14", number = "1", pages = "1--41", month = jan, year = "2005", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Thu Apr 14 10:42:22 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", } @Book{Miles:2005:AC, author = "Russ Miles", title = "{AspectJ} cookbook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xix + 331", year = "2005", ISBN = "0-596-00654-3", ISBN-13 = "978-0-596-00654-9", LCCN = "QA76.64 .M54 2005 .M55 2004; QA76.64 .M55 2004; QA76.64 .M54 2005; QA76.64 .M54 2005eb; QA76.64", bibdate = "Tue Aug 5 17:42:19 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596006549", acknowledgement = ack-nhfb, remark = "Real-world Aspect-oriented programming with Java.", subject = "Object-oriented programming (Computer science); Java (Computer program language)", xxnote = "Check year: 2004 or 2005??", } @Article{Moir:2005:CSJ, author = "Mark Moir and Nir Shavit and Jan Vitek", title = "Concurrency and synchronization in {Java} programs", journal = j-SCI-COMPUT-PROGRAM, volume = "58", number = "3", pages = "291--292", month = dec, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:52 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Moreau:2005:BDR, author = "Luc Moreau and Peter Dickman and Richard Jones", title = "{Birrell}'s distributed reference listing revisited", journal = j-TOPLAS, volume = "27", number = "6", pages = "1344--1395", month = nov, year = "2005", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1108970.1108976", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jan 11 05:23:15 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Java RMI collector is arguably the most widely used distributed garbage collector. Its distributed reference listing algorithm was introduced by Birrell et al. in the context of Network Objects, where the description was informal and heavily biased toward implementation. In this article, we formalize this algorithm in an implementation-independent manner, which allows us to clarify weaknesses of the initial presentation. In particular, we discover cases critical to the correctness of the algorithm that were not accounted for by Birrell. We use our formalization to derive an invariant-based proof of correctness of the algorithm that avoids notoriously difficult temporal reasoning. Furthermore, we offer a novel graphical representation of the state transition diagram, which we use to provide intuitive explanations of the algorithm and to investigate its tolerance to faults in a systematic manner. Finally, we examine how the algorithm may be optimized, either by placing constraints on message channels or by tightening the coupling between the application program and distributed garbage collector.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Moritz:2005:DFC, author = "Sally H. Moritz and Glenn D. Blank", title = "A design-first curriculum for teaching {Java} in a {CS1} course", journal = j-SIGCSE, volume = "37", number = "2", pages = "89--93", month = jun, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1083431.1083471", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:18 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse37.html#MoritzB05; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib", abstract = "Pedagogies for teaching object-oriented programming in an introductory course are still under much debate. We present a design-first approach, which teaches problem-solving techniques using elements of UML. Objects are still introduced early in the curriculum. We also present two tools to support our curriculum: multimedia courseware to help students learn the basic concepts of objects and classes, and an IDE that includes both a UML interface and interactive tools to allow easy experimentation.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @PhdThesis{Mostowski:2005:FDS, author = "W. Mostowski", title = "Formal Development of Safe and Secure {Java Card} Applets", volume = "2257", type = "{Doktorsavhandlingar}", school = "Chalmers Tekniska H{\"o}gskola", address = "G{\"o}teborg, Sweden", pages = "??--??", year = "2005", CODEN = "????", ISSN = "0346-718X", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Mostowski:2005:FVJ, author = "W. Mostowski", title = "Formalisation and Verification of {Java Card} Security Properties in Dynamic Logic", journal = j-LECT-NOTES-COMP-SCI, volume = "3442", pages = "357--371", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Munawar:2005:BPB, author = "Mohammad A. Munawar and Paul A. S. Ward", title = "Better performance or better manageability?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083072", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Competition among software providers creates enormous pressure on design and development teams to improve application performance. However, increased performance leads to systems whose behaviour is harder to predict. This in turn makes software harder to manage, or self-manage in the case of autonomic software. In this paper we elaborate on this problem, first in generic terms, and then taking memory-usage monitoring in a Java Virtual Machine as a specific example. We motivate the need for more research in developing monitoring techniques that can cope with the complexity of modern software systems. We finally present our own efforts in this direction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Murtagh:2005:CAD, author = "Fionn Murtagh", title = "Correspondence analysis and data coding with {Java} and {R}", publisher = pub-CHAPMAN-HALL-CRC, address = pub-CHAPMAN-HALL-CRC:adr, pages = "230", year = "2005", ISBN = "1-58488-528-9", ISBN-13 = "978-1-58488-528-3", LCCN = "QA76.73.J38 M877 2005", bibdate = "Wed Jul 9 11:11:42 MDT 2014", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Computer science and data analysis series", URL = "http://www.loc.gov/catdir/enhancements/fy0648/2005041353-d.html", acknowledgement = ack-nhfb, remark = "Foreword by J.-P. Benz{\'e}cri.", subject = "Java (Computer program language); R (Computer program language); Correspondence analysis (Statistics)", } @Article{Myles:2005:ETS, author = "Ginger Myles and Christian Collberg and Zachary Heidepriem and Armand Navabi", title = "The evaluation of two software watermarking algorithms", journal = j-SPE, volume = "35", number = "10", pages = "923--938", month = aug, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.657", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Oct 4 05:39:37 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "In this paper we analyze the effectiveness of two different software watermarking algorithms. The first is an algorithm proposed by Akito Monden et al. and the second an algorithm proposed by Robert L. Davidson and Nathan Myhrvold of the Microsoft Corporation. We have implemented these techniques within the SANDMARK framework, a system designed to study the effectiveness of software protection algorithms on Java bytecode. To the best of our knowledge this is the first implementation and empirical evaluation of these algorithms with respect to a set of properties such as bit-rate, stealth, and resilience to attack. We demonstrate through the use of the SANDMARK framework that both of these algorithms have a high bit-rate but are unstealthy and easy to attack.", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "14 Apr 2005", } @Article{Narasimhan:2005:LSJ, author = "Balasubramanian Narasimhan", title = "{Lisp--Stat} to {Java} to {R}", journal = j-J-STAT-SOFT, volume = "13", number = "4", pages = "1--10", month = "", year = "2005", CODEN = "JSSOBK", ISSN = "1548-7660", bibdate = "Wed May 18 11:18:51 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/counter.php?id=118&url=v13/i04&ct=2; http://www.jstatsoft.org/counter.php?id=118&url=v13/i04/v13i04.pdf&ct=1", accepted = "0000-00-00", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", remark = "Special Volume: Lisp--Stat, Past, Present and Future. Pedro Valero-Mora and Frederic Udina, Guest Editors.", submitted = "0000-00-00", } @Article{Neary:2005:AES, author = "Michael O. Neary and Peter Cappello", title = "Advanced eager scheduling for {Java}-based adaptive parallel computing", journal = j-CCPE, volume = "17", number = "7--8", pages = "797--819", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.855", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Book{Neward:2005:EEJ, author = "Ted Neward", title = "Effective {Enterprise Java}", publisher = pub-AW, address = pub-AW:adr, pages = "xix + 470", year = "2005", ISBN = "0-321-13000-6 (paperback)", ISBN-13 = "978-0-321-13000-6 (paperback)", LCCN = "QA76.73.J38 N48 2005", bibdate = "Mon Mar 27 08:56:47 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip0418/2004012164.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Book{Niemeyer:2005:LJ, author = "Patrick Niemeyer and Jonathan Knudsen", title = "Learning {Java}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xx + 954", year = "2005", ISBN = "0-596-00873-2", ISBN-13 = "978-0-596-00873-4", LCCN = "QA76.73.J38 N545 2005", bibdate = "Thu Oct 6 07:23:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, remark = "Accompanying disc contains Java 5 Stand Edition (also known as JDK 1.5), NetBeans 4.1, Eclipse 3.1, Ant 1.4.1, Tomcat 4.0.3, BeanShell 2.0, and full source code for all examples in the book..", subject = "Java (Computer program language)", } @Article{Nilsen:2005:JSD, author = "K. Nilsen", title = "{Java} Sounds The Death Knell For {C++}", journal = j-ELECTRONIC-DESIGN, volume = "53", number = "11", pages = "22--22", year = "2005", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Mon Jul 11 08:12:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Nugent:2005:DDV, author = "Gwen Nugent and Leen-Kiat Soh and Ashok Samal and Suzette Person and Jeff Lang", title = "Design, development, and validation of a learning object for {CS1}", journal = j-SIGCSE, volume = "37", number = "3", pages = "370--370", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067571", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A learning object is a structured, standalone media resource that encapsulates high quality information to facilitate learning and pedagogy. In this paper, we describe our approach to design, develop, and validate learning objects for CS1. In particular, we focus on one learning object that teaches students about classes and objects. SCORM (Shareable Content Object Reference Model) standards and ACM/IEEE-CS Computing Curriculum 2001 form the basis of our design. Each learning object is self-contained and by design, the length of the content section is kept short to retain student interest. The learning object has a glossary providing definitions to key terms and a help menu. Each learning object covers a core Computer Science topic addressed by four components: (1) A brief tutorial or explanation including definitions, rules, and principles, (2) A set of real-world examples illustrates key concepts and includes worked examples and problems, models, and sample code, (3) A set of practice exercises provides important active experiences to the student, with constructive feedback to student responses, (4) A set of problems graded by the computer provides a final assessment. Our instructional design also incorporates theories of multimedia learning, providing guidance on the effective combination of text, graphics audio, and Flash animation. We also report on a pilot evaluation where students rated the learning object highly in terms of its design, usefulness, and appropriateness. We present student achievement results, comparing achievement of students participating in traditional face-to-face laboratory activities versus students using the Web-based learning object. A between-group post-test only research design showed no significant achievement difference between the two groups. Results confirm our belief that the use of modular, Web-based learning objects can be used successfully for independent learning and are a viable option for distance delivery of course components. Encouraged by these results, our project and research is continuing Fall 2004, with the development of additional learning objects and instrumentation mechanisms tracking real-time dynamic activity-based data. The ``Practice Exercises'' section of our ``Simple Class'' learning object, for example, has four exercise modules: (1) class identification, where students are asked to identify whether an item is an appropriate candidate as a class (Abraham Lincoln vs. President, for example), (2) data members and methods, where students interact with an animation (with sound) to identify the appropriate data members for a dog class, (3) dissect a class definition, where students are given code with highlighted segments and are asked to label each segment into either ``class'', ``method name'', ``data member'', or ``method body'', and (4) building a class, where students are given a heterogeneous set of data members and methods, and must pick the appropriate ones to build a class; if the selection is correct, the Java-based class will be expanded accordingly with specific Java code. For each exercise, we provide extensive real-time feedback for each response. Figure 1 shows a screen shot of one of the exercises on data members and methods.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Null:2005:CIM, author = "Linda Null and Karishma Rao", title = "{CAMERA}: introducing memory concepts via visualization", journal = j-SIGCSE, volume = "37", number = "1", pages = "96--100", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047389", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "CAMERA, Cache and Memory Resource Allocation, is a collection of workbenches for cache mapping schemes (including direct, fully associative, and set associative) and virtual memory (including paging and TLBs). Its goals are to provide users with interactive tutorials and simulations to help them better understand the fundamental concepts of memory management. Implemented in Java Swing, these workbenches allow users to observe the processes of memory to cache mapping, and virtual memory using paging. The workbenches have proven useful in both introductory architecture classes and operating system classes. Students find CAMERA easy to use, even without the supplied user's guide. In the paper, we compare CAMERA to various existing systems and explore the software's features in detail in addition to discussing future enhancements.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{OBrien:2005:BBW, author = "L. OBrien", title = "Best of Both Worlds? Morphing the productivity of {ASP.NET} into a deployment environment based on {Java}, {Visual MainWin} for {J2EE} might serve as the solution for your dual-platform development needs", journal = "Software Development", volume = "13", number = "3", pages = "32--35", year = "2005", CODEN = "????", ISSN = "1070-8588", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{OBrien:2005:JCC, author = "Timothy M. O'Brien", title = "{Jakarta} commons cookbook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xix + 377", year = "2005", ISBN = "0-596-00706-X", ISBN-13 = "978-0-596-00706-5", LCCN = "QA76.76.A65 O246 2005", bibdate = "Sat Jun 11 09:50:33 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.oreilly.com/catalog/9780596007065", acknowledgement = ack-nhfb, subject = "Apache (Computer file : Apache Group); Application software; Development; Open source software; Java (Computer program language)", } @Article{Oechsle:2005:DDA, author = "Rainer Oechsle and Tim Gottwald", title = "{DisASTer} (distributed algorithms simulation terrain): a platform for the implementation of distributed algorithms", journal = j-SIGCSE, volume = "37", number = "3", pages = "44--48", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067461", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "DisASTer (Distributed Algorithms Simulation Terrain) is a platform for the implementation of distributed algorithms. It provides a Java class library that eases the programming of distributed algorithms in Java. Moreover, DisASTer constitutes an execution environment that enables the user to specify interactively a topology at runtime. It allows the user to control the execution of the algorithm (start, stop, suspend, resume, go back and forth). In addition, the execution of a distributed algorithm can be observed through some built-in visualization panels (topology view, sequence view, message queue view). DisASTer supports the implementation of further application-specific views.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ohira:2005:ACP, author = "Masao Ohira and Naoki Ohsugi and Tetsuya Ohoka and Ken-ichi Matsumoto", title = "Accelerating cross-project knowledge collaboration using collaborative filtering and social networks", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083163", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Vast numbers of free/open source software (F/OSS) development projects use hosting sites such as Java.net and Source-Forge.net. These sites provide each project with a variety of software repositories (e.g. repositories for source code sharing, bug tracking, discussions, etc.) as a media for communication and collaboration. They tend to focus on supporting rich collaboration among members in each project. However, a majority of hosted projects are relatively small projects consisting of few developers and often need more resources for solving problems. In order to support cross-project knowledge collaboration in F/OSS development, we have been developing tools to collect data of projects and developers at SourceForge, and to visualize the relationship among them using the techniques of collaborative filtering and social networks. The tools help a developer identify ``who should I ask?'' and ``what can I ask?'' and so on. In this paper, we report a case study of applying the tools to F/OSS projects data collected from SourceForge and how effective the tools can be used for helping cross-project knowledge collaboration.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oi:2005:DLV, author = "Hitoshi Oi", title = "On the design of the local variable cache in a hardware translation-based {Java Virtual Machine}", journal = j-SIGPLAN, volume = "40", number = "7", pages = "87--94", month = jul, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 5 07:55:13 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{ONeill:2005:IAS, author = "Ian O'Neill and Philip Hanna and Xingkun Liu and Des Greer and Michael McTear", title = "Implementing advanced spoken dialogue management in {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "54", number = "1", pages = "99--124", month = jan, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:43 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Papanikolaou:2005:BRBb, author = "Nikolaos Papanikolaou", title = "Book Review: {{\booktitle{Classical and Quantum Computing with C++ and Java Simulations}}, by Yorick Hardy and Willi-Hans Steeb, Birkh{\"a}user Verlag, 2001}", journal = j-SIGACT, volume = "36", number = "3", pages = "5--9", month = sep, year = "2005", CODEN = "SIGNDM", DOI = "https://doi.org/10.1145/1086649.1086654", ISSN = "0163-5700 (print), 1943-5827 (electronic)", ISSN-L = "0163-5700", bibdate = "Wed Mar 21 18:30:27 MDT 2012", bibsource = "DBLP; ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib; http://dblp.uni-trier.de/db/journals/sigact/sigact36.html#Papanikolaou05a; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib", note = "See \cite{Hardy:2001:CQC}.", URL = "http://doi.acm.org/10.1145/1086649.1086654", acknowledgement = ack-nhfb, fjournal = "ACM SIGACT News", journal-URL = "http://dl.acm.org/citation.cfm?id=J697", } @InProceedings{Parsons:2005:JAM, author = "D. Parsons", booktitle = "Proceedings of the Annual Hawaii International Conference on System Sciences", title = "{Java} Architectures for Mobilised Enterprise Systems", volume = "CONF38", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "298", year = "2005", CODEN = "????", ISSN = "1060-3425", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Paterson:2005:UBI, author = "James H. Paterson and John Haddow and Miriam Birch and Alex Monaghan", title = "Using the {BlueJ IDE} in a data structures course", journal = j-SIGCSE, volume = "37", number = "3", pages = "349--349", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067548", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This poster describes the use of the BlueJ Java IDE in a data structures course. The BlueJ IDE is an excellent tool for teaching programming using an objects-first approach. Learners are able to create, inspect and interact with instances of classes without the requirement to initiate a process with a main method. The ability to inspect 'live' objects can provide insights in specific areas of programming beyond the basic concepts. We have made use of BlueJ in an introductory course on data structures for students who have previously learned object oriented programming using BlueJ. The course deals with stacks, queues, lists, binary trees and graphs. Descriptions, diagrams, animations and simulations can all play a part in understanding the way in which these structures store and provide access to their data. However, interacting directly with actual objects which have been instantiated from code which the student has written can make the data structure much more tangible. The capability in BlueJ to inspect an object and to navigate object references to inspect associated objects allows a direct visual exploration of the internal representation of a data structure. For example, BlueJ allows the student to write a linked list class, create and populate an instance of the class, and visually inspect the nodes of the list. Object references can be followed from node to node to traverse the list. This experiment provides strong contrast with a visualization of the storage in an array list. The point can be emphasized that data structures with the same interface can have completely different internal representations. Similarly, a graph data structure is represented diagrammatically in terms of vertices joined by edges. However, there are a number of ways in which graphs can be represented internally, including adjacency lists and adjacency matrices. An adjacency list representation consists of a list of vertices, each of which is associated with a list of edges originating from that vertex. BlueJ allows visual exploration of such a structure, which can then be related back to the diagrammatic representation. Since BlueJ also allows API class instances to be inspected, the internal representations used by the Java Collections Framework classes can be explored. The poster shows examples of visual exploration of data structures with BlueJ. Further materials will be available at: http://hamilton.bell.ac.uk/datastructures.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{PerezLopez:2005:JBL, author = "S. A. {Perez Lopez} and M. J. {Gonzalez Brana} and J. {Marcos Acevedo} and M. D. Valdes and E. Mandado", title = "{Java}-Based Learning of Algorithms for {VLSI} Physical Design Automation", journal = j-INT-J-ENG-EDUC, volume = "21", number = "2", pages = "306--317", year = "2005", CODEN = "IEEDEF", ISSN = "0949-149X", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "International Journal of Engineering Education", } @Article{Petullo:2005:DGA, author = "Mike Petullo", title = "Developing {GNOME} applications with {Java}", journal = j-LINUX-J, volume = "2005", number = "135", pages = "??--??", month = jul, year = "2005", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Sat Dec 24 17:46:09 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Book{Pilgrim:2005:GH, author = "Mark Pilgrim", title = "{Greasemonkey} hacks", publisher = pub-ORA, address = pub-ORA:adr, pages = "352", year = "2005", ISBN = "0-596-10165-1", ISBN-13 = "978-0-596-10165-7", LCCN = "TK5105.882eb; TK5105.882", bibdate = "Tue Aug 5 17:51:18 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101657", acknowledgement = ack-nhfb, subject = "Greasemonkey; Firefox; Browsers (Computer programs); Plug-ins (Computer programs); JavaScript (Computer program language); Application software; Development", } @Article{Pillay:2005:ISC, author = "Nelishia Pillay and Vikash R. Jugoo", title = "An investigation into student characteristics affecting novice programming performance", journal = j-SIGCSE, volume = "37", number = "4", pages = "107--110", month = dec, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1113847.1113888", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:22 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse37.html#PillayJ05; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib", abstract = "Novice programmers usually experience difficulties when programming for the first time. The main aim of the study presented in this paper is to identify those characteristics that negatively effect procedural programming performance, so that additional support can be provided in the instruction of programming courses for students possessing these characteristics. Investigations were conducted at two South African tertiary institutions. At both institutions a first course in Java programming, focussing on procedural programming aspects, was used for purposes of the study. The characteristics investigated were the student's problem solving ability, gender, learning style, first language and previous computer experience. The study revealed that a student's problem solving ability and first language definitely have an impact on his or her programming performance.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Plante:2005:SJI, author = "I. L. Plante and A. FilaliMouhim and J. P. JayGerin", title = "{SimulRad}: a {Java} interface for a {Monte-Carlo} simulation code to visualize in {$3$D} the early stages of water radiolysis", journal = "Radiation Physics and Chemistry", volume = "72", number = "2--3", pages = "173--180", year = "2005", CODEN = "????", ISSN = "0969-806X", bibdate = "Mon Dec 20 09:37:20 MST 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Pollet:2005:TCS, author = "I. Pollet and B. LeCharlier", title = "Towards a Complete Static Analyser for {Java}: an Abstract Interpretation Framework and its Implementation", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "131", number = "", pages = "85--98", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Prinz:2005:JBD, author = "M. Prinz and G. Fischer and E. Schuster", title = "The {JAVA}-based {DICOM} query interface {DicoSE}", journal = "International Journal of Medical Informatics", volume = "74", number = "2--4", pages = "325--333", year = "2005", CODEN = "????", ISSN = "1386-5056", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Rainsberger:2005:JRP, author = "J. B. (Joe B.) Rainsberger and Scott Stirling", title = "{JUnit} Recipes: Practical Methods for Programmer Testing", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxx + 721", year = "2005", ISBN = "1-932394-23-0", ISBN-13 = "978-1-932394-23-8", LCCN = "QA76.64 .R35 2005", bibdate = "Tue Aug 10 14:47:44 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$49.95", URL = "http://www.manning.com/rainsberger", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Object-oriented programming (Computer science)", } @Article{Rajsbaum:2005:OOA, author = "Sergio Rajsbaum and Elisa Viso", title = "Object-oriented algorithm analysis and design with {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "54", number = "1", pages = "25--47", month = jan, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:43 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Reiss:2005:DDV, author = "Steven P. Reiss", title = "Dynamic detection and visualization of software phases", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083254", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software executes in phases. JIVE is a software visualization tool that provides a high-level view of what is occurring in a Java system as it happens, offering information about both what classes are executing, what classes are being allocated, synchronizations, and what are the threads and what state each thread is in. This paper describes how we used the information available to JIVE to detect and then display the current phase of execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Richards:2005:JDN, author = "Norman Richards and Sam Griffith", title = "{JBoss}: a developer's notebook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xix + 149", year = "2005", ISBN = "0-596-10007-8", ISBN-13 = "978-0-596-10007-0", LCCN = "TK5105.8885.J43 R53 2005", bibdate = "Thu Oct 6 11:06:41 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "The developer's notebook series", acknowledgement = ack-nhfb, subject = "JBoss; Handbooks, manuals, etc; Web servers; Management; Handbooks, manuals, etc; Java (Computer program language); Handbooks, manuals, etc; Open source software; Handbooks, manuals, etc; Application software; Development; Handbooks, manuals, etc; Client/server computing; Handbooks, manuals, etc", } @Article{Roberts:2005:AJT, author = "E. Roberts and K. Bruce and R. Cutler and J. H. Cross and S. Grissom and K. Klee and S. Rodger and F. Trees and I. Utting and F. Yellin", title = "The {ACM Java Task Force}: Status Report", journal = j-SIGCSE, volume = "37", number = "1", pages = "46--47", year = "2005", CODEN = "SIGSD3", ISSN = "0097-8418 (print), 2331-3927 (electronic)", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rolfe:2005:LPS, author = "Timothy J. Rolfe", title = "List processing: sort again, naturally", journal = j-SIGCSE, volume = "37", number = "2", pages = "46--48", month = jun, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1083431.1083461", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:18 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse37.html#Rolfe05; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib", abstract = "This paper discusses a possible student project for use within the Data Structures and Algorithms treatment of linked lists. Students can explicitly compare the recursive list-oriented MergeSort algorithm with iterative list-oriented MergeSort algorithms (with $ O(n) $ space overhead) including the ``Natural MergeSort.'' The author's experimental results are shown for implementations in C and in Java.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roth:2005:SVE, author = "A. Roth", title = "Specification and Verification of Encapsulation in {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3535", pages = "195--210", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Mon Jul 11 08:12:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Salcianu:2005:PSE, author = "A. Salcianu and M. Rinard", title = "Purity and Side Effect Analysis for {Java} Programs", journal = j-LECT-NOTES-COMP-SCI, volume = "3385", pages = "199--215", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Santone:2005:LAT, author = "A. Santone and G. Vaglini", title = "A local approach for temporal model checking of {Java} bytecode", journal = j-J-COMP-SYS-SCI, volume = "70", number = "2", pages = "258--281", year = "2005", CODEN = "JCSSBM", ISSN = "0022-0000 (print), 1090-2724 (electronic)", ISSN-L = "0022-0000", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Journal of Computer and System Sciences", journal-URL = "http://www.sciencedirect.com/science/journal/00220000", } @Article{Schuppan:2005:JIR, author = "V. Schuppan and M. Baur and A. Biere", title = "{JVM} Independent Replay in {Java}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "113", number = "??", pages = "85--104", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Book{Sestoft:2005:JP, author = "Peter Sestoft", title = "{Java} precisely", publisher = pub-MIT, address = pub-MIT:adr, edition = "Second", pages = "168 (est.)", year = "2005", ISBN = "0-262-69325-9 (paperback)", ISBN-13 = "978-0-262-69325-7 (paperback)", LCCN = "QA76.73.J38 S435 2005", bibdate = "Mon Mar 20 16:38:55 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", tableofcontents = "1. Running Java : compilation, loading, and execution\\ 2. Names and reserved names\\ 3. Java naming conventions\\ 4. Comments and program layout\\ 5. Types\\ 6. Variables, parameters, fields, and scope\\ 7. Strings\\ 8. Arrays\\ 9. Classes\\ 10. Classes and objects in the computer\\ 11. Expressions\\ 12. Statements\\ 13. Interfaces\\ 14. Enum types (Java 5.0)\\ 15. Exceptions, checked and unchecked\\ 16. Threads, concurrent execution, and synchronization\\ 17. Compilation, source files, class names, and class files\\ 18. Packages and jar files\\ 19. Mathematical functions\\ 20. String builders and string buffers\\ 21. Generic types and methods (Java 5.0)\\ 22. Generic collections and maps (Java 5.0)\\ 23. Input and output\\ 24. Reflection\\ 25. Metadata annotations (Java 5.0)\\ 26. What is new in Java 5.0", } @Article{Shah:2005:SET, author = "Vijay Shah and Nicholas Younan and Torey Alford and Anthony Skjellum", title = "A spectral estimation toolkit for {Java} applications", journal = j-SCI-COMPUT-PROGRAM, volume = "54", number = "1", pages = "125--142", month = jan, year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:43 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Book{Sierra:2005:HFJ, author = "Kathy Sierra and Bert Bates", title = "Head first {Java}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, edition = "Second", pages = "xxxii + 688", year = "2005", ISBN = "0-596-00920-8 (paperback)", ISBN-13 = "978-0-596-00920-5 (paperback)", LCCN = "QA76.73.J38 S535 2005", bibdate = "Tue Aug 2 10:34:52 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Book{Sigglekow:2005:JSC, author = "Bill Sigglekow", title = "{Jakarta Struts} cookbook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xvi + 507", year = "2005", ISBN = "0-596-00771-X", ISBN-13 = "978-0-596-00771-3", LCCN = "QA76.73.J38 S445 2005", bibdate = "Tue Aug 2 10:55:43 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, remark = "``Mastering Jakarta Struts, Solution by Solution''--Cover.. ``Covers Struts 1.2 ''--Cover..", subject = "Application software; Java (Computer program language); Internet programming; Web site development; Struts framework", } @Article{Skalka:2005:TES, author = "C. Skalka and S. Smith and D. VanHorn", title = "A Type and Effect System for Flexible Abstract Interpretation of {Java}", journal = j-ELECT-NOTES-THEOR-COMP-SCI, volume = "131", number = "", pages = "111--124", year = "2005", CODEN = "????", ISSN = "1571-0661", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Notes in Theoretical Computer Science", } @Article{Soomro:2005:DDH, author = "H. K. Soomro and S. A. A. Shah and A. A. G. Shaikh", title = "Development of Dynamic Hashing Key Generation Method for {Java} Based {Sindhi} Programming Environment", journal = "Mehran University Research Journal of Engineering and Technology", volume = "24", number = "2", pages = "125--130", year = "2005", CODEN = "????", ISSN = "0254-7821", bibdate = "Mon May 16 14:02:00 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Book{Sotomayor:2005:GTP, author = "Borja Sotomayor and Lisa Childers", title = "{Globus Toolkit 4}: Programming {Java} Services", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "320 (est.)", year = "2005", ISBN = "0-12-369404-3", ISBN-13 = "978-0-12-369404-1", LCCN = "????", bibdate = "Wed Oct 26 17:11:41 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95", acknowledgement = ack-nhfb, } @Article{Spinellis:2005:JMS, author = "Diomidis Spinellis", title = "{Java} Makes Scripting Languages Irrelevant?", journal = j-IEEE-SOFTWARE, volume = "22", number = "3", pages = "70--71", month = may # "\slash " # jun, year = "2005", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2005.67", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Thu Nov 10 09:16:25 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Sridharan:2005:DDP, author = "Manu Sridharan and Denis Gopan and Lexin Shan and Rastislav Bod{\'\i}k", title = "Demand-driven points-to analysis for {Java}", journal = j-SIGPLAN, volume = "40", number = "10", pages = "59--76", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Stelting:2005:RJE, author = "Stephen Stelting", title = "Robust {Java}: exception handling, testing, and debugging", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxii + 375", year = "2005", ISBN = "0-13-100852-8", ISBN-13 = "978-0-13-100852-6", LCCN = "QA76.73.J38 S846 2005", bibdate = "Sun Nov 27 12:09:38 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @Article{Stromer:2005:JHJ, author = "Julie N. Stromer and Gerald T. Quon and Paul M. K. Gordon and Andrei L. Turinsky and Christoph W. Sensen", title = "{Jabiru}: Harnessing {Java} {$3$D} Behaviors for Device and Display Portability", journal = j-IEEE-CGA, volume = "25", number = "2", pages = "70--80", month = mar # "\slash " # apr, year = "2005", CODEN = "ICGADZ", DOI = "https://doi.org/10.1109/MCG.2005.42", ISSN = "0272-1716 (print), 1558-1756 (electronic)", ISSN-L = "0272-1716", bibdate = "Thu Jan 12 07:18:39 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "IEEE Computer Graphics and Applications", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/cga", } @Article{Su:2005:CBJ, author = "D. Su and Z. Chen and L. Huo", title = "Communication between {Java} and other advance language based on {JNI}", journal = "Journal --- Guangxi University Natural Science Edition", volume = "30", number = "1", pages = "6--9", year = "2005", CODEN = "????", ISSN = "1001-7445", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Sucurovic:2005:JCX, author = "S. Sucurovic and Z. Jovanovic", title = "{Java} Cryptography \& {X.509} Authentication", journal = j-DDJ, volume = "30", number = "2", pages = "40--42", year = "2005", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", } @Article{Suganuma:2005:DED, author = "Toshio Suganuma and Toshiaki Yasue and Motohiro Kawahito and Hideaki Komatsu and Toshio Nakatani", title = "Design and evaluation of dynamic optimizations for a {Java} just-in-time compiler", journal = j-TOPLAS, volume = "27", number = "4", pages = "732--785", month = jul, year = "2005", CODEN = "ATPSDT", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Sep 15 14:26:27 MDT 2005", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Suwimonteerabuth:2005:JJB, author = "D. Suwimonteerabuth and S. Schwoon and J. Esparza", title = "{jMoped}: a {Java} Bytecode Checker Based on {Moped}", journal = j-LECT-NOTES-COMP-SCI, volume = "3440", pages = "541--545", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Sweedyk:2005:CGC, author = "Elizabeth Sweedyk and Marianne deLaet and Michael C. Slattery and James Kuffner", title = "Computer games and {CS} education: why and how", journal = j-SIGCSE, volume = "37", number = "1", pages = "256--257", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047433", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Computer and video games have grown to be a major industry but, until recently, have largely been ignored by academia. The last couple of years, however, have seen the emergence of new academic programs, conferences, and journals dedicated to games studies. This panel discusses a variety of ways, and whys, for introducing games into computer science curricula. Panelists discuss their experiences in designing a broad range of courses including a games course for women, a software development course that uses games as projects, an introductory games programming course in Java, and an advanced graphics course that focuses on games.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @InProceedings{Tarau:2005:SDE, author = "Paul Tarau and Rada Mihalcea and Elizabeth Figa", editor = "{ACM}", booktitle = "Proceedings of the 2005 ACM Symposium on Applied computing", title = "Semantic document engineering with {WordNet} and {PageRank}", publisher = pub-ACM, address = pub-ACM:adr, pages = "782--786", year = "2005", DOI = "https://doi.org/10.3115/981658.981684", ISBN = "1-58113-964-0", ISBN-13 = "978-1-58113-964-8", bibdate = "Sat May 8 18:33:04 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper describes Natural Language Processing techniques for document engineering in combination with graph algorithms and statistical methods. Google's PageRank and similar fast-converging recursive graph algorithms have provided practical means to statically rank vertices of large graphs like the World Wide Web. By combining a fast Java-based PageRank implementation with a Prolog base inferential layer, running on top of an optimized WordNet graph, we describe applications to word sense disambiguation and evaluate their accuracy on standard benchmarks.", acknowledgement = ack-nhfb, keywords = "logic programming; natural language processing; PageRank-style graph algorithms; semantics-based document processing; word sense disambiguation; WordNet", } @Book{Tate:2005:BJ, author = "Bruce Tate", title = "Beyond {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xii + 185", year = "2005", ISBN = "0-596-10094-9", ISBN-13 = "978-0-596-10094-0", LCCN = "QA76.73.J38 T38 2005; QA76.73.J38 T38 2005eb; QA76.73.J38", bibdate = "Tue Aug 5 17:49:17 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596100940", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Computer programming", } @Book{Tate:2005:SDN, author = "Bruce Tate and Justin Gehtland and Michael Kosta Loukides", title = "{Spring}: a developer's notebook", publisher = pub-ORA, address = pub-ORA:adr, pages = "xv + 184", year = "2005", ISBN = "0-596-00910-0", ISBN-13 = "978-0-596-00910-6", LCCN = "QA76.73.S67 T38 2005", bibdate = "Thu Oct 6 07:24:01 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "A developer's notebook", acknowledgement = ack-nhfb, subject = "Spring (Computer program language); Application software; Development; Java", } @Article{Thomas:2005:BFJ, author = "G. Thomas and F. Ogel and A. Galland and B. Folliot and I. Piumarta", title = "Building a Flexible {Java} Runtime Upon a Flexible Compiler", journal = j-INT-J-COMPUT-APPL, volume = "27", number = "1", pages = "27--34", year = "2005", CODEN = "????", DOI = "https://doi.org/10.1080/1206212X.2005.11441753", ISSN = "1206-212X (print), 1925-7074 (electronic)", ISSN-L = "1206-212X", bibdate = "Sat Apr 21 17:22:06 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ijca.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", URL = "https://www.tandfonline.com/doi/full/10.1080/1206212X.2005.11441753", acknowledgement = ack-nhfb, fjournal = "International Journal of Computers and Applications", journal-URL = "https://www.tandfonline.com/loi/tjca20", online-date = "11 Jul 2015", } @Article{Tree:2005:NBC, author = "Tree", title = "{NoodleGlue}: Bridging {C\slash C++} and {Java}", journal = j-CCCUJ, volume = "23", number = "7", pages = "6--13", year = "2005", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", xxnote = "From a footnote in the article, Tree is a pseudonym.", } @Article{Tschantz:2005:JAR, author = "Matthew S. Tschantz and Michael D. Ernst", title = "{Javari}: adding reference immutability to {Java}", journal = j-SIGPLAN, volume = "40", number = "10", pages = "211--230", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @InProceedings{VahaSipila:2005:BCC, author = "A. VahaSipila and T. Virtanen", booktitle = "Proceedings of the Annual Hawaii International Conference on System Sciences", title = "{BT-Crowds}: Crowds-Style Anonymity with {Bluetooth} and {Java}", volume = "CONF38", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "320", year = "2005", CODEN = "????", ISSN = "1060-3425", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{VanDenBossche:2005:OCI, author = "B. VanDenBossche and K. VanBoxstael and N. Goeminne and F. Gielen and P. Demeester", title = "An {OSGi}-compatible implementation of a {Java} resource monitor [5684-20]", journal = "Proceedings- Spie the International Society for Optical Engineering", volume = "5684", number = "", pages = "181--189", year = "2005", CODEN = "????", ISSN = "0277-786X (print), 1996-756X (electronic)", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{vandenBrand:2005:GES, author = "M. vandenBrand and P. E. Moreau and J. Vinju", title = "Generator of efficient strongly typed abstract syntax trees in {Java}", journal = "IEE Proceedings Software", volume = "152", number = "2", pages = "70--78", year = "2005", CODEN = "????", ISSN = "1462-5970", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{vanderSpek:2005:SER, author = "P. van der Spek and N. Plat and C. Pronk", title = "Syntax error repair for a {Java}-based parser generator", journal = j-SIGPLAN, volume = "40", number = "4", pages = "47--50", month = apr, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 21 17:04:05 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{VanHoof:2005:MES, author = "V. VanHoof and A. Wormek and S. Schleutermann and T. Schumacher and O. Lothaire and C. Trendelenburg", title = "Medical Expert Systems Developed in {j.MD}, a {Java} Based Expert System Shell Application in Clinical Laboratories", journal = "Studies in Health Technology and Informatics", volume = "107", number = "1", pages = "89--93", year = "2005", CODEN = "????", ISSN = "0926-9630", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{vanNieuwpoort:2005:IFE, author = "Rob V. van Nieuwpoort and Jason Maassen and Gosia Wrzesi{\'n}ska and Rutger F. H. Hofman and Ceriel J. H. Jacobs and Thilo Kielmann and Henri E. Bal", title = "{Ibis}: a flexible and efficient {Java}-based {Grid} programming environment", journal = j-CCPE, volume = "17", number = "7--8", pages = "1079--1107", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.860", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{vanNieuwpoort:2005:SSE, author = "Rob van Nieuwpoort and Jason Maassen and Thilo Kielmann and Henri E. Bal", title = "{Satin}: Simple and Efficient {Java}-based {Grid} Programming", journal = j-SCPE, volume = "6", number = "3", pages = "19--32", month = sep, year = "2005", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/6/3.toc", URL = "http://www.scpe.org/vols/vol06/no3/SCPE_6_3_03.pdf; http://www.scpe.org/vols/vol06/no3/SCPE_6_3_03.zip", acknowledgement = ack-nhfb, } @Article{vanReeuwijk:2005:ATJ, author = "C. van Reeuwijk and H. J. Sips", title = "Adding tuples to {Java}: a study in lightweight data structures", journal = j-CCPE, volume = "17", number = "5--6", pages = "423--438", month = apr # "\slash " # may, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.835", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Feb 2005", } @Article{Vincenzi:2005:CTJ, author = "A. M. Vincenzi and J. C. Maldonado and W. E. Wong and M. E. Delamaro", title = "Coverage testing of {Java} programs and components", journal = j-SCI-COMPUT-PROGRAM, volume = "56", number = "1--2", pages = "211--230", year = "2005", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Book{Virkus:2005:PJP, author = "Robert Virkus", title = "{Pro J2ME Polish}: open source wireless {Java} tools suite", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xxi + 450", year = "2005", ISBN = "1-59059-503-3", ISBN-13 = "978-1-59059-503-9", LCCN = "QA76.73.J38 V57 2005", bibdate = "Mon Mar 5 09:39:44 MST 2007", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0663/2005016571-d.html; http://www.springerlink.com/content/p7059524m76vj817/", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Wireless communication systems; Programming", } @Article{Vivanco:2005:SCJ, author = "Rodrigo A. Vivanco and Nicolino J. Pizzi", title = "Scientific computing with {Java} and {C++}: a case study using functional magnetic resonance neuroimages", journal = j-SPE, volume = "35", number = "3", pages = "237--254", month = mar, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.633", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:37 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "3 Dec 2004", } @Article{vonLaszewski:2005:WCJ, author = "Gregor von Laszewski and Mike Hategan", title = "Workflow Concepts of the {Java CoG Kit}", journal = j-J-GRID-COMP, volume = "3", number = "3--4", pages = "239--258", month = sep, year = "2005", CODEN = "????", DOI = "https://doi.org/10.1007/s10723-005-9013-5", ISSN = "1570-7873 (print), 1572-9184 (electronic)", ISSN-L = "1570-7873", bibdate = "Wed Jul 9 17:01:29 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1570-7873&volume=3&issue=3; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1570-7873&volume=3&issue=3&spage=239", acknowledgement = ack-nhfb, fjournal = "Journal of Grid Computing", journal-URL = "http://link.springer.com/journal/10723", keywords = "Grid; Java CoG Kit; Key words; workflow", } @Article{Wakelin:2005:CTI, author = "J. Wakelin and P. Murray-Rust and S. Tyrrell and Y. Zhang and H. S. Rzepa and A. Garcia", title = "{CML} tools and information flow in atomic scale simulations", journal = j-MOL-SIM, volume = "31", number = "5", pages = "315--322", month = apr, year = "2005", CODEN = "MOSIEA", ISSN = "0892-7022", ISSN-L = "0892-7022", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, baddate = "April, 2005", fjournal = "Molecular simulation", pagecount = "8", } @Book{Walls:2005:SA, author = "Craig Walls and Ryan Breidenbach", title = "{Spring} in action", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxviii + 444", year = "2005", ISBN = "1-932394-35-4 (paperback)", ISBN-13 = "978-1-932394-35-1 (paperback)", LCCN = "QA76.73.J38 W342 2005", bibdate = "Wed Nov 15 06:57:16 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0626/2005276355-b.html; http://www.loc.gov/catdir/enhancements/fy0626/2005276355-d.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Application software; Development", } @Article{Wang:2005:JBG, author = "Y. Wang and Y. Xue and J. Wang and C. Wu and Y. Hu and Y. Luo and S. Zhong and J. Tang and G. Cai", title = "{Java}-Based {Grid} Service Spread and Implementation in Remote Sensing Applications", journal = j-LECT-NOTES-COMP-SCI, volume = "3516", pages = "496--503", year = "2005", CODEN = "LNCSD9", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Lecture Notes in Computer Science", } @Article{Wang:2005:MDT, author = "W. Wang", title = "Method of Data Transformation Between Applications in {Java}", journal = "Journal --- Anhui University of Technology", volume = "22", number = "1", pages = "60--62", year = "2005", CODEN = "????", ISSN = "1671-7872", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wayne:2005:PYB, author = "R. Wayne", title = "Put Your Best {Java} Forward: Use the power of {Java} and the agility of a {Web} app with {Canoo}'s {UltraLightClient}, deconstruct sobriquets with {Language Analysis Systems}' {Name Parser}, and craft and edit with {Effexis}'s {SDE}", journal = "Software Development", volume = "13", number = "3", pages = "22--26", year = "2005", CODEN = "????", ISSN = "1070-8588", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Wei:2005:SOJ, author = "Pu-Chen Wei and Chung-Hsin Chen and Cheng-Wei Chen and Jenq-Kuen Lee", title = "Support and optimization of {Java RMI} over a {Bluetooth} environment", journal = j-CCPE, volume = "17", number = "7--8", pages = "967--989", month = jun # "\slash " # jul, year = "2005", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.838", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Sat May 14 11:30:57 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "23 Feb 2005", } @Article{Weir:2005:DTJ, author = "George R. S. Weir and Tamar Vilner and Ant{\'o}nio Jos{\'e} Mendes and Marie Nordstr{\"o}m", title = "Difficulties teaching {Java} in {CS1} and how we aim to solve them", journal = j-SIGCSE, volume = "37", number = "3", pages = "344--345", month = sep, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1151954.1067543", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In 1971 Dijkstra noted that as a teacher of programming he 'feels akin to a teacher of composition at a conservatory. He does not teach his pupils how to compose a particular symphony, he must help his pupils to find their own style and must explain to them what is implied by this' [1]. In similar vein, Don Knuth suggests that 'computer programming is an art, because it applies accumulated knowledge to the world, because it requires skill and ingenuity, and especially because it produces objects of beauty' [2].Traditionally, most Computer Science programs offer an introductory programming methodology course (CS1). In recent years, many institutions have subjected this course to major changes. One common alteration has been a move from a procedural paradigm to an Object Oriented (OO) paradigm. In many cases, this is manifested as a change to programming in Java. Emerging from this transition is the apparent anomaly that many students fail to understand OOP concepts, especially when required to use them in problem solving. Our panel represents researchers from four different countries who have all encountered such problems with a CS1 course. In this light, the panel focuses on CS1 difficulties and aims to address solutions to the 'Java problem'. Although we bring our own insights to the considered issues, we aim to engage the panel audience in discussing the nature of the problem and the propriety of the proposed solutions.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Welc:2005:SFJ, author = "Adam Welc and Suresh Jagannathan and Antony Hosking", title = "Safe futures for {Java}", journal = j-SIGPLAN, volume = "40", number = "10", pages = "439--453", month = oct, year = "2005", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Dec 13 08:30:58 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Wenderholm:2005:EJB, author = "E. Wenderholm", title = "{Eclpss}: a {Java}-based framework for parallel ecosystem simulation and modeling", journal = "Environmental Modelling and Software", volume = "20", number = "9", pages = "1081--1100", year = "2005", CODEN = "????", ISSN = "1364-8152", bibdate = "Thu Mar 24 17:43:34 MST 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{Weyns:2005:SDT, author = "Danny Weyns and Eddy Truyen and Pierre Verbaeten", title = "Serialization of Distributed Threads in {Java}", journal = j-SCPE, volume = "6", number = "1", pages = "81--98", month = mar, year = "2005", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/6/1.toc", URL = "http://www.scpe.org/vols/vol06/SCPE_6_1_07.pdf; http://www.scpe.org/vols/vol06/SCPE_6_1_07.zip", acknowledgement = ack-nhfb, } @Article{Wicentowski:2005:UIP, author = "Richard Wicentowski and Tia Newhall", title = "Using image processing projects to teach {CS1} topics", journal = j-SIGCSE, volume = "37", number = "1", pages = "287--291", month = mar, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1047124.1047445", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:13 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "As Computer Science educators, we know that students learn more from projects that are fun and challenging, that seem ``real'' to them, and that allow them to be creative in designing their solutions. When we have students beating down our office doors wanting to show us what they've done, we know we have designed a project that truly meets its pedagogical goals. In CS1 courses, it is often difficult to come up with large, real-world programming projects that are at an appropriate level and that really excite students. This is particularly true in the first half of the course when students are learning basic programming and problem solving skills. We found that assignments based on image processing are an effective way to teach many CS1 topics. Because students enjoy working on the projects, they come away with a solid understanding of the topics reinforced by the projects. In this paper, we discuss many ways in which image processing could be used to teach CS1 topics. As an example, we present two image processing projects that we use in our CS1 course. These large, real-world programs are designed so that students can successfully master them early in their first semester of programming. Even though our CS1 course is taught using the C programming language, these projects could easily be used by a CS1 course in C, C++, or Java. We provide starting point code for Java and C versions of the projects, and provide sample assignment write-ups on our project webpage [12].", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Wilson:2005:DCS, author = "Greg Wilson", title = "Data crunching: solve everyday problems using {Java}, {Python} and more", publisher = "Pragmatic Bookshelf", address = "Raleigh, NC, USA", pages = "viii + 193", year = "2005", ISBN = "0-9745140-7-1", ISBN-13 = "978-0-9745140-7-9", LCCN = "QA63 .W55 2005", bibdate = "Thu Oct 6 07:25:06 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "The pragmatic programmers", acknowledgement = ack-nhfb, subject = "Problem solving; Data processing; Java (Computer program language); Python (Computer program language)", } @Article{Wittmer:2005:EPC, author = "K. Wittmer", title = "{EPerl}: {Perl}, {C++}, and {Java}", journal = j-CCCUJ, volume = "23", number = "7", pages = "22--25", year = "2005", CODEN = "CCUJEX", ISSN = "1075-2838", bibdate = "Mon Jul 18 09:50:30 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "C/C++ Users Journal", } @Article{Wong:2005:RTJ, author = "W. Wong", title = "Real-Time {Java}, {CORBA ORB} perk up at {ESC 2005}", journal = j-ELECTRONIC-DESIGN, volume = "53", number = "9", pages = "36--37", year = "2005", CODEN = "ELODAW", ISSN = "0013-4872", ISSN-L = "0013-4872", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Electronic Design", } @Article{Woo:2005:SAJ, author = "Jongwook Woo", title = "Static Analysis for {Java} with Alias Representation Reference-Set in High-Performance Computing", journal = j-SCPE, volume = "6", number = "1", pages = "125--139", month = mar, year = "2005", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/6/1.toc", URL = "http://www.scpe.org/vols/vol06/SCPE_6_1_10.pdf; http://www.scpe.org/vols/vol06/SCPE_6_1_10.zip", acknowledgement = ack-nhfb, } @Article{Wu:2005:PTT, author = "Xiaoqing Wu and Barrett R. Bryant and Jeff Gray and Marjan Mernik", title = "Pattern transformation for two-dimensional separation of concerns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083133", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design patterns are utilized in software development to decouple individual concerns, so that a change in a design decision is isolated to one location of the code base. However, multidimensional concerns exist in software development and therefore no single design pattern offers a panacea toward addressing problems of change evolution. By analyzing the matrix of concerns during the software development process and utilizing transferable aspect-orientation and object-orientation, a pattern transformation based two-dimensional separation of concerns is described, which integrates the benefits derived from the Inheritance pattern and several GoF patterns. An example implementation is shown using Java and AspectJ.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2005:TGA, author = "Mingshen Wu", title = "Teaching graph algorithms using online {Java} package {IAPPGA}", journal = j-SIGCSE, volume = "37", number = "4", pages = "64--68", month = dec, year = "2005", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1113847.1113879", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:22 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse37.html#Wu05; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2005.bib", abstract = "Teaching and learning graph algorithms is a great challenge to both instructors and students. Instructors are seeking software that is specifically designed to demonstrate the algorithms and for students to learn these algorithms efficiently. The software program should be readily available and provide an environment so that students are able to review the algorithm, solve a practical problem, and intuitively study the working process via a graphical display all together. This paper presents an ``Internet Accessible Program Package for Graph Algorithms'' (IAPPGA) developed by the author. This package can be accessed via an Internet browser at any time, anywhere without downloading or installing any software.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Xu:2005:NER, author = "K. Xu and L. Xin", title = "Novel 32bit Embedded Reduced-Instruction-Set-Computer with {Java} Extension", journal = j-MINI-MICRO-SYSTEMS, volume = "26", number = "1", pages = "90--95", year = "2005", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Tue Apr 26 10:50:23 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Xu:2005:OPJ, author = "Zhigen Xu and Yusong Yan and Jim X. Chen", title = "{OpenGL} Programming in {Java}", journal = j-COMPUT-SCI-ENG, volume = "7", number = "1", pages = "51--55", month = jan # "\slash " # feb, year = "2005", CODEN = "CSENFA", DOI = "https://doi.org/10.1109/MCSE.2005.20", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Sat May 14 13:11:44 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/dl/mags/cs/2005/01/c1051.htm; http://csdl.computer.org/dl/mags/cs/2005/01/c1051.pdf", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Yan:2005:EPC, author = "Lu Yan", title = "Enable Pervasive Computing with {Java}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "6", number = "6", pages = "??--??", month = jun, year = "2005", CODEN = "????", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Mon Aug 30 23:13:20 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/ds/2005/06/o6004.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Yang:2005:LMJ, author = "Byung-Sun Yang and Soo-Mook Moon and Kemal Ebcio{\u{g}}lu", title = "Lightweight monitors for the {Java} virtual machine", journal = j-SPE, volume = "35", number = "3", pages = "281--299", month = mar, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.635", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:37 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "3 Dec 2004", } @Article{Yero:2005:JIJ, author = "Eduardo Javier Huerta Yero and Fabiano de Oliveira Lucchese and Francisco S{\'e}rgio Sambatti and Miriam von Zuben and Marco Aur{\'e}lio Amaral Henriques", title = "{{\sc JoiN}}: The implementation of a {Java}-based massively parallel grid", journal = j-FUT-GEN-COMP-SYS, volume = "21", number = "5", pages = "791--810", month = may, year = "2005", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Fri Jul 15 08:00:46 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/0167739X", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Yiyu:2005:JPM, author = "T. Yiyu and L. K. Man and L. M. Pak and Y. W. Shing and S. F. Anthony", title = "10.4-4: a {Java} processor for mobile devices", journal = "IEEE International Conference on Consumer Electronics", volume = "23RD", publisher = "IEEE", pages = "437--438", year = "2005", CODEN = "????", ISSN = "0747-668X", bibdate = "Tue Apr 12 05:47:14 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, xxnote = "Check last author family name??", } @Article{Yu:2005:MXD, author = "Yijun Yu and Jianguo Lu and John Mylopoulos and Weiwei Sun and Jing-Hao Xue and Erik H. D'Hollander", title = "Making {XML} document markup international", journal = j-SPE, volume = "35", number = "1", pages = "1--14", month = jan, year = "2005", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.621", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Sat Apr 16 07:26:36 MDT 2005", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "In name and in practice, the World-Wide Web (hereafter Web) is used around the World beyond English-speaking areas. This creates a tremendous need to internationalize standard terminology used in the technologies that make the Web possible. Existing efforts on XML internationalization (i18n) and localization (i10n) have focused on the content of XML documents instead of the terms used in markup (annotations) such as elements and attributes. The SGML standard ISO 8879 supports the use of Unicode (ISO 10646) throughout a document, including markups. However, most elements and attributes of XML documents are still defined in English, thereby limiting their use among non-English speakers. This paper presents an XSLT-based method that can completely localize the markup of XML documents into different natural languages. We also describe how the proposed technique can be applied to translation problems in programming (e.g. C and Java) or documentation (e.g. \LaTeX{} or other formatting languages) so that a program or a document can be converted to and from an XML format", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "eXtensible Markup Language (XML); eXtensible Stylesheet Language Transformations (XSLT); localization (l10n) and internationalization (i18n); markup; programming and documentation languages; transformation", onlinedate = "18 Oct 2004", } @Book{Zeller:2005:EOS, author = "Andreas Zeller and Jens Krinke", title = "Essential open source toolset: programming with {Eclipse}, {JUnit}, {CVS}, {Bugzilla}, {Ant}, {Tcl\slash Tk} and more", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xii + 392", year = "2005", ISBN = "0-470-84445-0 (paperback)", ISBN-13 = "978-0-470-84445-8 (paperback)", LCCN = "QA76.76.D47 Z45 2005", bibdate = "Tue Nov 28 14:20:32 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.loc.gov/catdir/toc/ecip053/2004026271.html", acknowledgement = ack-nhfb, subject = "Computer software; Development; Open source software", } @Article{Zhang:2005:ROP, author = "S. Zhang and H. Li", title = "Research of Object Persistence Method Based on {Java} Technologies", journal = j-MINI-MICRO-SYSTEMS, volume = "26", number = "2", pages = "264--267", year = "2005", CODEN = "XWJXEH", ISSN = "1000-1220", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, fjournal = "Mini-Micro Systems", } @Article{Zhao:2005:DMC, author = "J. Zhao", title = "A Dependence Model for Concurrency in {Java} Programs", journal = "Information", volume = "8", number = "1", pages = "111--126", year = "2005", CODEN = "????", ISSN = "1343-4500", bibdate = "Tue May 3 17:31:21 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", acknowledgement = ack-nhfb, } @Article{ZhongQun:2005:DRM, author = "W. ZhongQun and X. XiaoDong", title = "Dynamic Relocation Model and Algorithm for Application Components Based on {Java}", journal = "Journal --- Nanjing University Natural Sciences Edition", volume = "41", number = "2", pages = "180--188", year = "2005", CODEN = "????", ISSN = "0469-5097", bibdate = "Tue Jun 21 17:12:31 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; Ingenta database", note = "Check author names: looks like confusion of family and personal names??", acknowledgement = ack-nhfb, } @Article{Aaronson:2006:PPC, author = "L. Aaronson", title = "Parallel processor [community service]", journal = j-IEEE-SPECTRUM, volume = "43", number = "5", pages = "61--64", month = may, year = "2006", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2006.1628826", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Air accidents; Austin Area Urban League; Black Family Technology Awareness Week; Board of Directors; business technology group; company-wide technical leadership team; computing systems architect; Concurrent computing; DP industry; Educational institutions; electrical engineering; Electrical engineering; Engineering profession; IBM senior technical staff member; Java; Lakes; professional aspects; Road accidents; Sandra Johnson; Scholarships; social sciences", } @Article{Abadi:2006:TSL, author = "Martin Abadi and Cormac Flanagan and Stephen N. Freund", title = "Types for safe locking: {Static} race detection for {Java}", journal = j-TOPLAS, volume = "28", number = "2", pages = "207--255", month = mar, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1119479.1119480", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Fri Mar 10 18:46:58 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This article presents a static race-detection analysis for multithreaded shared-memory programs, focusing on the Java programming language. The analysis is based on a type system that captures many common synchronization patterns. It supports classes with internal synchronization, classes that require client-side synchronization, and thread-local classes. In order to demonstrate the effectiveness of the type system, we have implemented it in a checker and applied it to over 40,000 lines of hand-annotated Java code. We found a number of race conditions in the standard Java libraries and other test programs. The checker required fewer than 20 additional type annotations per 1,000 lines of code. This article also describes two improvements that facilitate checking much larger programs: an algorithm for annotation inference and a user interface that clarifies warnings generated by the checker. These extensions have enabled us to use the checker for identifying race conditions in large-scale software systems with up to 500,000 lines of code.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Book{Adams:2006:JAE, author = "Cameron Adams and James Edwards", title = "The {JavaScript} Anthology: 101 Essential Tips, Tricks \& Hacks", publisher = "SitePoint", address = "????", pages = "592 (est)", year = "2006", ISBN = "0-9752402-6-9", ISBN-13 = "978-0-9752402-6-7", LCCN = "", bibdate = "Mon Mar 20 05:55:20 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95, CAN \$55.95", URL = "http://www.oreilly.com/catalog/0975240269/", acknowledgement = ack-nhfb, } @Article{Adams:2006:OJP, author = "Joel C. Adams", title = "{OOP} and the {Janus Principle}", journal = j-SIGCSE, volume = "38", number = "1", pages = "359--363", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121453", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "It is easy for computer science students and educators to write software applications in Java or C++ that are not object-oriented. In this paper, we present the Janus Principle --- a simple software engineering principle (related to the MVC design pattern) whose use produces highly object-oriented code. We demonstrate its effect by developing a simple Java networking application, first without using the Janus Principle, and then using it. Students and educators who follow this principle will write programs containing highly reusable code.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Allen:2006:SIG, author = "Eric E. Allen and Robert Cartwright", title = "Safe instantiation in {Generic Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "59", number = "1--2", pages = "26--37", month = jan, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:53 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Andreae:2006:FIP, author = "Chris Andreae and James Noble and Shane Markstrum and Todd Millstein", title = "A framework for implementing pluggable type systems", journal = j-SIGPLAN, volume = "41", number = "10", pages = "57--74", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167515.1167479", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:51:58 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Pluggable types have been proposed to support multiple type systems in the same programming language. We have designed and implemented JavaCOP, a program constraint system for implementing practical pluggable type systems for Java. JavaCOP enforces user-defined typing constraints written in a declarative and expressive rule language. We have validated our design by (re)implementing a range of type systems and program checkers. By using a program constraint system to implement pluggable types, programmers are able to check that their programs will operate correctly in restricted environments, adhere to strict programming rules, avoid null pointer errors or scoped memory exceptions, and meet style guidelines, while programming language researchers can easily experiment with novel type systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "JavaCOP; pluggable type systems", } @Book{Angus:2006:PST, author = "Chris Angus", title = "Prototype and scriptaculous: taking the pain out of {JavaScript}", publisher = pub-ORA, address = pub-ORA:adr, year = "2006", ISBN = "0-596-52919-8", ISBN-13 = "978-0-596-52919-2", LCCN = "QA76.73.J38 A54 2006eb; QA76.73.J38", bibdate = "Tue Aug 5 18:10:39 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596529192", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); Web sites; Design; Internet publishing", } @Article{Azizi:2006:BRJ, author = "Mostafa Azizi", title = "Book Review: {John Hunt and Chris Loftus, Guide to J2EE: Enterprise Java. Series Springer Professional Computing. Springer (2003). ISBN 1-85233-704-4. \$79.95\slash \pounds 45.00\slash \pounds 69.95. 672 pp}", journal = j-COMP-J, volume = "49", number = "2", pages = "250--251", month = mar, year = "2006", CODEN = "CMPJA6", DOI = "https://doi.org/10.1093/comjnl/bxh155", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Mon Feb 27 15:50:47 MST 2006", bibsource = "http://comjnl.oxfordjournals.org/content/vol49/issue2/index.dtl; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://comjnl.oxfordjournals.org/cgi/content/full/49/2/250; http://comjnl.oxfordjournals.org/cgi/reprint/49/2/250", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Baxter:2006:USJ, author = "Gareth Baxter and Marcus Frean and James Noble and Mark Rickerby and Hayden Smith and Matt Visser and Hayden Melton and Ewan Tempero", title = "Understanding the shape of {Java} software", journal = j-SIGPLAN, volume = "41", number = "12", pages = "397--412", month = dec, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Oct 24 06:22:42 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Bentley:2006:IAB, author = "Chris Bentley and Scott A. Watterson and David K. Lowenthal and Barry Rountree", title = "Implicit array bounds checking on 64-bit architectures", journal = j-TACO, volume = "3", number = "4", pages = "502--527", month = dec, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1145/1187976.1187982", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Sat Apr 14 10:44:57 MDT 2007", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Several programming languages guarantee that array subscripts are checked to ensure they are within the bounds of the array. While this guarantee improves the correctness and security of array-based code, it adds overhead to array references. This has been an obstacle to using higher-level languages, such as Java, for high-performance parallel computing, where the language specification requires that all array accesses must be checked to ensure they are within bounds. This is because, in practice, array-bounds checking in scientific applications may increase execution time by more than a factor of 2. Previous research has explored optimizations to statically eliminate bounds checks, but the dynamic nature of many scientific codes makes this difficult or impossible. Our approach is, instead, to create a compiler and operating system infrastructure that does not generate explicit bounds checks. It instead places arrays inside of Index Confinement Regions (ICRs), which are large, isolated, mostly unmapped virtual memory regions. Any array reference outside of its bounds will cause a protection violation; this provides implicit bounds checking. Our results show that when applying this infrastructure to high-performance computing programs written in Java, the overhead of bounds checking relative to a program with no bounds checks is reduced from an average of 63\% to an average of 9\%.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", } @Article{Bergin:2006:KUD, author = "Joe Bergin", title = "{Karel} universe drag \& drop editor", journal = j-SIGCSE, volume = "38", number = "3", pages = "307--307", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140212", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Karel Universe is a drag and drop editor integrated with the Karel J Robot [1] simulator system. It is intended for those students who wish to learn Java with the absolute minimum of syntax. The editor permits the student to create classes, objects, and programs by dragging syntactically correct program fragments from one pane to another. The resulting programs may be then executed in the Karel J Robot simulator.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bierre:2006:MOB, author = "Kevin Bierre and Phil Ventura and Andrew Phelps and Christopher Egert", title = "Motivating {OOP} by blowing things up: an exercise in cooperation and competition in an introductory {Java} programming course", journal = j-SIGCSE, volume = "38", number = "1", pages = "354--358", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121452", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "For the introductory student, the process of learning to program is an arduous task. Not only does the student have to learn the syntax of a programming language, he or she also has to apply concepts of object-oriented design and software construction in service of the projects created within the classroom. Unfortunately, as students further their study of programming, they often feel disconnected from the examples and projects they construct as part of their coursework. Projects are often perceived as toy problems and do not match the graphics-rich, interactive notion of programming that students bring with them to class. In addition, projects and classroom exercises do not convey the appropriate level of complexity and fail in the task of challenging the student to critically think about what they are constructing. This paper discusses TankBrains, a cooperative and competitive programming project presented to students in the latter part of their introductory programming course sequence. Students are challenged to create simple tank artificial intelligences as teams, which are later tested against each other in head-to-head combat. Students create their TankBrains within a collaborative virtual environment, which enforces the physics and rules of the combat simulation. Students must also present their strategies and findings to each other. This paper also examines how the use of the TankBrain system influences the students' perception regarding achievements and learning in the classroom.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Binder:2006:PAS, author = "Walter Binder", title = "Portable and accurate sampling profiling for {Java}", journal = j-SPE, volume = "36", number = "6", pages = "615--650", month = may, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.712", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:12 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "14 Feb 2006", } @Article{Binder:2006:SRJ, author = "Walter Binder and Volker Roth", title = "Security Risks in {Java}-based Mobile Code Systems", journal = j-SCPE, volume = "7", number = "4", pages = "1--11", month = dec, year = "2006", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/7/4.toc", URL = "http://www.scpe.org/vols/vol07/no4/SCPE_7_4_01.pdf; http://www.scpe.org/vols/vol07/no4/SCPE_7_4_01.zip", acknowledgement = ack-nhfb, } @Article{Blackburn:2006:DBJ, author = "Stephen M. Blackburn and Robin Garner and Chris Hoffmann and Asjad M. Khang and Kathryn S. McKinley and Rotem Bentzur and Amer Diwan and Daniel Feinberg and Daniel Frampton and Samuel Z. Guyer and Martin Hirzel and Antony Hosking and Maria Jump and Han Lee and J. Eliot B. Moss and B. Moss and Aashish Phansalkar and Darko Stefanovi{\'c} and Thomas VanDrunen and Daniel von Dincklage and Ben Wiedermann", title = "The {DaCapo} benchmarks: {Java} benchmarking development and analysis", journal = j-SIGPLAN, volume = "41", number = "10", pages = "169--190", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167515.1167488", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Since benchmarks drive computer science research and industry product development, which ones we use and how we evaluate them are key questions for the community. Despite complex runtime tradeoffs due to dynamic compilation and garbage collection required for Java programs, many evaluations still use methodologies developed for C, C++, and Fortran. SPEC, the dominant purveyor of benchmarks, compounded this problem by institutionalizing these methodologies for their Java benchmark suite. This paper recommends benchmarking selection and evaluation methodologies, and introduces the DaCapo benchmarks, a set of open source, client-side Java benchmarks. We demonstrate that the complex interactions of (1) architecture, (2) compiler, (3) virtual machine, (4) memory management, and (5) application require more extensive evaluation than C, C++, and Fortran which stress (4) much less, and do not require (1). We use and introduce new value, time-series, and statistical metrics for static and dynamic properties such as code complexity, code size, heap composition, and pointer mutations. No benchmark suite is definitive, but these metrics show that DaCapo improves over SPEC Java in a variety of ways, including more complex code, richer object behaviors, and more demanding memory system requirements. This paper takes a step towards improving methodologies for choosing and evaluating benchmarks to foster innovation in system design and implementation for Java and other managed languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "benchmark; DaCapo; Java; methodology; SPEC", } @Article{Bonorden:2006:WCE, author = "Olaf Bonorden and Joachim Gehweiler and Friedhelm Meyer auf der Heide", title = "A {Web} Computing Environment for Parallel Algorithms in {Java}", journal = j-SCPE, volume = "7", number = "2", pages = "1--14", month = jun, year = "2006", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/7/2.toc", URL = "http://www.scpe.org/vols/vol07/no2/SCPE_7_2_01.pdf; http://www.scpe.org/vols/vol07/no2/SCPE_7_2_01.zip", acknowledgement = ack-nhfb, } @Article{Bravenboer:2006:DFEa, author = "Martin Bravenboer and {\'E}ric Tanter and Eelco Visser", title = "Declarative, formal, and extensible syntax definition for {aspectJ}", journal = j-SIGPLAN, volume = "41", number = "10", pages = "209--228", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167491", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Aspect-Oriented Programming (AOP) is attracting attention from both research and industry, as illustrated by the ever-growing popularity of AspectJ, the de facto standard AOP extension of Java. From a compiler construction perspective AspectJ is interesting as it is a typical example of compositional language, i.e., a language composed of a number of separate languages with different syntactical styles: in addition to plain Java, AspectJ includes a language for defining pointcuts and one for defining advices. Language composition represents a non-trivial challenge for conventional parsing techniques. First, combining several languages with different lexical syntax leads to considerable complexity in the lexical states to processed. Second, as new language features for AOP are being explored, many research proposals are concerned with further extending the AspectJ language, resulting in a need for an extensible syntax definition. This paper shows how scannerless parsing elegantly addresses the issues encountered by conventional techniques when parsing AspectJ . We present the design of a modular, extensible, and formal definition of the lexical and context-free aspects of the AspectJ syntax in the Syntax Definition Formalism SDF, which is implemented by a scannerless, generalized-LR parser (SGLR). We introduce grammar mixins as a novel application of SDF's modularity features, which allows the declarative definition of different keyword policies and combination of extensions. We illustrate the modular extensibility of our definition with syntax extensions taken from current research on aspect languages. Finally, benchmarks show the reasonable performance of scannerless generalized-LR parsing for this grammar.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspectJ; generalized-LR parsing; grammar mixins; lexical syntax; scannerless parsing; syntax definition; syntax extension", } @Article{Brecht:2006:CGC, author = "Tim Brecht and Eshrat Arjomandi and Chang Li and Hang Pham", title = "Controlling garbage collection and heap growth to reduce the execution time of {Java} applications", journal = j-TOPLAS, volume = "28", number = "5", pages = "908--941", month = sep, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1152649.1152652", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Sep 6 07:13:55 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In systems that support garbage collection, a tension exists between collecting garbage too frequently and not collecting it frequently enough. Garbage collection that occurs too frequently may introduce unnecessary overheads at the risk of not collecting much garbage during each cycle. On the other hand, collecting garbage too infrequently can result in applications that execute with a large amount of virtual memory (i.e., with a large footprint) and suffer from increased execution times due to paging. In this article, we use a large set of Java applications and the highly tuned and widely used Boehm-Demers-Weiser (BDW) conservative mark-and-sweep garbage collector to experimentally examine the extent to which the frequency of garbage collection impacts an application's execution time, footprint, and pause times. We use these results to devise some guidelines for controlling garbage collection and heap growth in a conservative garbage collector in order to minimize application execution times. Then we describe new strategies for controlling garbage collection and heap growth that impact not only the frequency with which garbage collection occurs but also the points at which it occurs. Experimental results demonstrate that when compared with the existing approach used in the standard BDW collector, our new strategy can significantly reduce application execution times. Our goal is to obtain a better understanding of how to control garbage collection and heap growth for an individual application executing in isolation. These results can be applied in a number of high-performance computing and server environments, in addition to some single-user environments. This work should also provide insights into how to make better decisions that impact garbage collection in multiprogrammed environments.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Briand:2006:TRE, author = "L. C. Briand and Y. Labiche and J. Leduc", title = "Toward the Reverse Engineering of {UML} Sequence Diagrams for Distributed {Java} Software", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "32", number = "9", pages = "642--663", month = sep, year = "2006", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2006.96", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1707665", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Bringert:2006:PAC, author = "Bj{\"o}rn Bringert and Aarne Ranta", title = "A pattern for almost compositional functions", journal = j-SIGPLAN, volume = "41", number = "9", pages = "216--226", month = sep, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1160074.1159834", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:46:22 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper introduces a pattern for almost compositional functions over recursive data types, and over families of mutually recursive data types. Here 'almost compositional' means that for a number of the constructors in the type(s), the result of the function depends only on the constructor and the results of calling the function on the constructor's arguments. The pattern consists of a generic part constructed once for each data type or family of data types, and a task-specific part. The generic part contains the code for the predictable compositional cases, leaving the interesting work to the task-specific part. Examples of the pattern implemented in dependent type theory with inductive families, in Haskell with generalized algebraic data types and rank-2 polymorphism, and in Java using a variant of the Visitor design pattern are given. The relationship to the 'Scrap Your Boilerplate' approach to generic programming, and to general tree types in dependent type theory are also investigated.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "abstract syntax; dependent type theory; Haskell; Java; traversal; visitor pattern", } @Article{Bruce-Lockhart:2006:IEE, author = "Michael Bruce-Lockhart and Theodore S. Norvell", title = "Interactive embedded examples: a demonstration", journal = j-SIGCSE, volume = "38", number = "3", pages = "357--357", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140267", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "A demonstration of the integration of a program animation tool into a set of web based notes used by instructors for lecturing and students for studying. Standard, conventionally prepared C++ and Java examples are dynamically incorporated into the class notes and can be interactively run in the animation tool directly from within the notes.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bruneton:2006:FCM, author = "Eric Bruneton and Thierry Coupaye and Matthieu Leclercq and Vivien Qu{\'e}ma and Jean-Bernard Stefani", title = "The {FRACTAL} component model and its support in {Java}", journal = j-SPE, volume = "36", number = "11--12", pages = "1257--1284", month = sep # "\slash " # oct, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.767", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:13 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "17 Aug 2006", } @Book{Bruno:2006:JM, author = "Eric J. Bruno", title = "{Java} messaging", publisher = pub-CHARLES-RIVER-MEDIA, address = pub-CHARLES-RIVER-MEDIA:adr, pages = "xiii + 466", year = "2006", ISBN = "1-58450-418-8", ISBN-13 = "978-1-58450-418-4", LCCN = "TK5105.74.J32 B78 2006", bibdate = "Fri May 29 12:43:39 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Charles River Media programming series", URL = "http://www.loc.gov/catdir/toc/ecip0517/2005022084.html", acknowledgement = ack-nhfb, subject = "Instant messaging; Java (Computer program language)", } @Book{Burke:2006:EJ, author = "Bill Burke and Richard Monson-Haefel", title = "Enterprise JavaBeans 3.0", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fifth", pages = "xxv + 732", year = "2006", ISBN = "0-596-00978-X", ISBN-13 = "978-0-596-00978-6", LCCN = "QA76.73.J38 M65 2006", bibdate = "Fri May 29 12:43:18 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0715/2006285201-d.html", acknowledgement = ack-nhfb, remark = "Revised edition of: Enterprise JavaBeans / Richard Monson-Haefel. 2004. Covers Java Persistence.", subject = "Java (Computer program language); JavaBeans", } @Article{Carlisle:2006:AOP, author = "Martin C. Carlisle", title = "Automatic {OO} parser generation using visitors for {Ada 2005}", journal = j-SIGADA-LETTERS, volume = "26", number = "3", pages = "3--8", month = dec, year = "2006", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1185642.1185644", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:16:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We describe AdaGOOP 2005 (the Ada Generator of Object-Oriented Parsers). AdaGOOP 2005 takes a specification of tokens and an LALR(1) grammar and creates a lexer, a parser that automatically creates a parse tree, and a traversal of the parse tree using the visitor pattern. AdaGOOP generates output that is similar to that of the Java tool SableCC. It takes advantage of the new interface feature available in Ada 2005 to create a visitor.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Ada 2005; AdaGOOP; automatic parser generation; visitor pattern", } @Article{Carlstrom:2006:ATP, author = "Brian D. Carlstrom and Austen McDonald and Hassan Chafi and JaeWoong Chung and Chi Cao Minh and Christos Kozyrakis and Kunle Olukotun", title = "The {ATOMOS} transactional programming language", journal = j-SIGPLAN, volume = "41", number = "6", pages = "1--13", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133255.1133983", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Atomos is the first programming language with implicit transactions, strong atomicity, and a scalable multiprocessor implementation. Atomos is derived from Java, but replaces its synchronization and conditional waiting constructs with simpler transactional alternatives. The Atomos watch statement allows programmers to specify fine-grained watch sets used with the Atomos retry conditional waiting statement for efficient transactional conflict-driven wakeup even in transactional memory systems with a limited number of transactional contexts. Atomos supports open-nested transactions, which are necessary for building both scalable application programs and virtual machine implementations. The implementation of the Atomos scheduler demonstrates the use of open nesting within the virtual machine and introduces the concept of transactional memory violation handlers that allow programs to recover from data dependency violations without rolling back. Atomos programming examples are given to demonstrate the usefulness of transactional programming primitives. Atomos and Java are compared through the use of several benchmarks. The results demonstrate both the improvements in parallel programming ease and parallel program performance provided by Atomos.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "conditional synchronization; Java; multiprocessor architecture; transactional memory", } @Article{Carlstrom:2006:EJP, author = "Brian D. Carlstrom and JaeWoong Chung and Hassan Chafi and Austen McDonald and Chi Cao Minh and Lance Hammond and Christos Kozyrakis and Kunle Olukotun", title = "Executing {Java} programs with transactional memory", journal = j-SCI-COMPUT-PROGRAM, volume = "63", number = "2", pages = "111--129", day = "1", month = dec, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:02 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Cavazos:2006:MSDa, author = "John Cavazos and Michael F. P. O'Boyle", title = "Method-specific dynamic compilation using logistic regression", journal = j-SIGPLAN, volume = "41", number = "10", pages = "229--240", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167492", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Determining the best set of optimizations to apply to a program has been a long standing problem for compiler writers. To reduce the complexity of this task, existing approaches typically apply the same set of optimizations to all procedures within a program, without regard to their particular structure. This paper develops a new method-specific approach that automatically selects the best optimizations on a per method basis within a dynamic compiler. Our approach uses the machine learning technique of logistic regression to automatically derive a predictive model that determines which optimizations to apply based on the features of a method. This technique is implemented in the Jikes RVM Java JIT compiler. Using this approach we reduce the average total execution time of the SPECjvm98 benchmarks by 29\%. When the same heuristic is applied to the DaCapo+ benchmark suite, we obtain an average 33\% reduction over the default level O2 setting.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compiler optimization; Java; Jikes RVM; logistic regression; machine learning", } @Article{Chalin:2006:NNR, author = "Patrice Chalin and Fr{\'e}d{\'e}ric Rioux", title = "Non-null references by default in the {Java} modeling language", journal = j-SIGSOFT, volume = "31", number = "2", pages = "9:1--9:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123068", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Based on our experiences and those of our peers, we hypothesized that in Java code, the majority of declarations that are of reference types are meant to be non-null. Unfortunately, the Java Modeling Language (JML), like most interface specification and object-oriented programming languages, assumes that such declarations are possibly-null by default. As a consequence, developers need to write specifications that are more verbose than necessary in order to accurately document their module interfaces. In practice, this results in module interfaces being left incompletely and inaccurately specified. In this paper we present the results of a study that confirms our hypothesis. Hence, we propose an adaptation to JML that preserves its language design goals and that allows developers to specify that declarations of reference types are to be interpreted as non-null by default. We explain how this default is safer and results in less writing on the part of specifiers than null-by-default. The paper also reports on an implementation of the proposal in some of the JML tools.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chang:2006:SCA, author = "Byeong-Mo Chang", title = "Static check analysis for {Java} stack inspection", journal = j-SIGPLAN, volume = "41", number = "3", pages = "40--48", month = mar, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Aug 23 06:00:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Chen:2006:REP, author = "Tzu-Yi Chen and Alvaro Monge and Beth Simon", title = "Relationship of early programming language to novice generated design", journal = j-SIGCSE, volume = "38", number = "1", pages = "495--499", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121496", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "What measurable effect do the language and paradigm used in early programming classes have on novice programmers' ability to do design? This work investigates the question by using data collected from 136 ``first competency'' students as part of a multi-national, multi-institutional study of students' approach to and attitudes toward design. Analysis of a number of surface characteristics of their designs found strikingly few differences between designs produced by students at schools that teach using objects-early, imperative-early, and functional-early paradigms. A similar lack of difference was found between students at C++-first and Java-first schools. While statistically significant differences are found for three characteristic comparisons across language and paradigm, these results seem to have little meaning for teaching given the complexity of the null hypotheses tested in those three cases. In particular, for the following design characteristics no statistically significant differences across language or paradigm of early instruction were found: attempt to address requirements, type of design produced, number of parts in design, recognition of ambiguity in design, and connectedness of design.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Chilimbi:2006:CCC, author = "Trishul M. Chilimbi and Ran Shaham", title = "Cache-conscious coallocation of hot data streams", journal = j-SIGPLAN, volume = "41", number = "6", pages = "252--262", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133255.1134011", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The memory system performance of many programs can be improved by coallocating contemporaneously accessed heap objects in the same cache block. We present a novel profile-based analysis for producing such a layout. The analysis achieves cache-conscious coallocation of a hot data stream H (i.e., a regular data access pattern that frequently repeats) by isolating and combining allocation sites of object instances that appear in H such that intervening allocations coming from other sites are separated. The coallocation solution produced by the analysis is enforced by an automatic tool, cminstr, that redirects a program's heap allocations to a run-time coallocation library comalloc. We also extend the analysis to coallocation at object field granularity. The resulting field coallocation solution generalizes common data restructuring techniques, such as field reordering, object splitting, and object merging, and allows their combination. Furthermore, it provides insight into object restructuring by breaking down the coallocation benefit on a per-technique basis, which provides the opportunity to pick the 'sweet spot' for each program. Experimental results using a set of memory-performance-limited benchmarks, including a few SPECInt2000 programs, and Microsoft VisualFoxPro, indicate that programs possess significant coallocation opportunities. Automatic object coallocation improves execution time by 13\% on average in the presence of hardware prefetching. Hand-implemented field coallocation solutions for two of the benchmarks produced additional improvements (12\% and 22\%) but the effort involved suggests implementing an automated version for type-safe languages, such as Java and C\#.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "cache optimization; data locality; data profiling; dynamic allocation; hot data streams; memory layout", } @Article{Chin:2006:FBAa, author = "Wei-Ngan Chin and Florin Craciun and Siau-Cheng Khoo and Corneliu Popeea", title = "A flow-based approach for variant parametric types", journal = j-SIGPLAN, volume = "41", number = "10", pages = "273--290", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167498", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "A promising approach for type-safe generic codes in the object-oriented paradigm is variant parametric type, which allows covariant and contravariant subtyping on fields where appropriate. Previous approaches formalise variant type as a special case of the existential type system. In this paper, we present a new framework based on flow analysis and modular type checking to provide a simple but accurate model for capturing generic types. Our scheme stands to benefit from past (and future) advances in flow analysis and subtyping constraints. Furthermore, it fully supports casting for variant types with a special reflection mechanism, called cast capture, to handle objects with unknown types. We have built a constraint-based type checker and have proven its soundness. We have also successfully annotated a suite of Java libraries and client code with our flow-based variant type system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "constraints; flow analysis; genericity; subtyping; variant parametric types", } @Article{Clifton:2006:MDR, author = "Curtis Clifton and Todd Millstein and Gary T. Leavens and Craig Chambers", title = "{MultiJava}: {Design} rationale, compiler implementation, and applications", journal = j-TOPLAS, volume = "28", number = "3", pages = "517--575", month = may, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1133651.1133655", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue May 30 16:33:23 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "MultiJava is a conservative extension of the Java programming language that adds symmetric multiple dispatch and open classes. Among other benefits, multiple dispatch provides a solution to the binary method problem. Open classes provide a solution to the extensibility problem of object-oriented programming languages, allowing the modular addition of both new types and new operations to an existing type hierarchy. This article illustrates and motivates the design of MultiJava and describes its modular static typechecking and modular compilation strategies. Although MultiJava extends Java, the key ideas of the language design are applicable to other object-oriented languages, such as C\# and C++, and even, with some modifications, to functional languages such as ML. This article also discusses the variety of application domains in which MultiJava has been successfully used by others, including pervasive computing, graphical user interfaces, and compilers. MultiJava allows users to express desired programming idioms in a way that is declarative and supports static typechecking, in contrast to the tedious and type-unsafe workarounds required in Java. MultiJava also provides opportunities for new kinds of extensibility that are not easily available in Java.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Cohen:2006:JJTa, author = "Tal Cohen and Joseph (Yossi) Gil and Itay Maman", title = "{JTL}: the {Java} tools language", journal = j-SIGPLAN, volume = "41", number = "10", pages = "89--108", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167515.1167481", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present an overview of JTL (the Java Tools Language, pronounced 'Gee-tel'), a novel language for querying JAVA [8] programs. JTL was designed to serve the development of source code software tools for JAVA, and as a small language which to aid programming language extensions to JAVA. Applications include definition of pointcuts for aspect-oriented programming, fixing type constraints for generic programming, specification of encapsulation policies, definition of micro-patterns, etc. We argue that the JTL expression of each of these is systematic, concise, intuitive and general. JTL relies on a simply-typed relational database for program representation, rather than an abstract syntax tree. The underlying semantics of the language is restricted to queries formulated in First Order Predicate Logic augmented with transitive closure (FOPL). Special effort was taken to ensure terse, yet readable expression of logical conditions. The JTL pattern public abstract class, for example, matches all abstract classes which are publicly accessible, while class (public clone();) matches all classes in which method clone is public. To this end, JTL relies on a DATALOG-like syntax and semantics, enriched with quantifiers and pattern matching which all but entirely eliminate the need for recursive calls. JTL's query analyzer gives special attention to the fragility of the 'closed world assumption' in examining JAVA software, and determines whether a query relies on such an assumption. The performance of the JTL interpreter is comparable to that of JQuery after it generated its database cache, and at least an order of magnitude faster when the cache has to be rebuilt.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "declarative programming; reverse engineering", } @Book{Craig:2006:VM, author = "Iain D. Craig", title = "Virtual machines", publisher = pub-SV, address = pub-SV:adr, pages = "xv + 269", year = "2006", ISBN = "1-85233-969-1", ISBN-13 = "978-1-85233-969-2", LCCN = "QA76.9.V5 C73 2006", bibdate = "Thu Mar 23 07:06:45 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, keywords = "BCPL; JVM", subject = "Virtual computer systems", } @Article{Crescenzi:2006:ACJ, author = "Pilu Crescenzi and Michele Loreti and Rosario Pugliese", title = "Assessing {CS1} {Java} skills: a three-year experience", journal = j-SIGCSE, volume = "38", number = "3", pages = "348--348", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140257", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We describe the approach that has been followed by the authors while teaching the CS1 laboratory course on Java programming at the University of Florence. In particular, we focus on the assessment method that has been utilized: by making use of specific software developed by the teachers themselves, the method allowed them to automatically obtain a preliminary evaluation of the students' performance, which could subsequently be analyzed and modified after a manual exploration of the students' work.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cross:2006:JLI, author = "James H. {Cross II} and T. Dean Hendrix", title = "{jGRASP}: a lightweight {IDE} with dynamic object viewers for {CS1} and {CS2}", journal = j-SIGCSE, volume = "38", number = "3", pages = "356--356", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140266", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The jGRASP IDE provides new object viewers that automatically generate dynamic, state-based visualizations of objects and primitive variables in Java. Multiple synchronized visualizations of an object, including complex data structures, are immediately available to users from the jGRASP debugger window or object workbench. Initial classroom use has demonstrated the object viewers' potential as an aid to student learning, while future research will explore their utility through controlled experiments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Cunningham:2006:UCP, author = "H. Conrad Cunningham and Yi Liu and Cuihua Zhang", title = "Using classic problems to teach {Java} framework design", journal = j-SCI-COMPUT-PROGRAM, volume = "59", number = "1--2", pages = "147--169", month = jan, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:53 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{daSilva:2006:OEO, author = "A. F. da Silva and V. S. Costa", title = "Our Experiences with Optimizations in {Sun}'s {Java} Just-In-Time Compilers", journal = j-J-UCS, volume = "12", number = "7", pages = "788--810", month = "????", year = "2006", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Thu Jul 10 06:41:40 MDT 2008", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_12_7/our_experiences_with_optimizations", abstract = "Modern Java Compilers, such as Sun's HotSpot compilers, implement a number of optimizations, ranging from high-level program transformations to low-level architecture dependent operations such as instruction scheduling. In a Just-in-Time (JIT) environment, the impact of each optimization must be weighed against its cost in terms of total runtime. Towards better understanding the usefulness of individual optimizations, we study the main optimizations available on Sun HotSpot compilers for a wide range of scientific and non-scientific benchmarks, weighing their cost and benefits in total runtime. We chose the HotSpot technology because it is state of the art and its source code is available.", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", keywords = "compiler optimizations; Dynamic compilation; Just-in-Time compiler", } @Article{Debbabi:2006:SDC, author = "Mourad Debbabi and Abdelouahed Gherbi and Azzam Mourad and Hamdi Yahyaoui", title = "A selective dynamic compiler for embedded {Java} virtual machines targeting {ARM} processors", journal = j-SCI-COMPUT-PROGRAM, volume = "59", number = "1--2", pages = "38--63", month = jan, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:53 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Dekker:2006:LFP, author = "Anthony H. Dekker", title = "Lazy functional programming in {Java}", journal = j-SIGPLAN, volume = "41", number = "3", pages = "30--39", month = mar, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Aug 23 06:00:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Doernhoefer:2006:J, author = "Mark Doernhoefer", title = "{JavaScript}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "16--24", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142972", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A whole article on JavaScript? You bet. JavaScript has always been the glue that holds your HTML pages together and now, in conjunction with XML, JavaScript is enjoying a new wave of popularity. So I thought I'd dedicate this month's column to a short exploration of JavaScript and highlight some sites that will not only help you write JavaScript, but also explore some of the things you can do with JavaScript.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Drossopoulou:2006:FMD, author = "Sophia Drossopoulou and Giovanni Lagorio and Susan Eisenbach", title = "A flexible model for dynamic linking in {Java} and {C\#}", journal = j-THEOR-COMP-SCI, volume = "368", number = "1--2", pages = "1--29", day = "5", month = dec, year = "2006", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Tue Mar 29 08:55:29 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/03043975", abstract = "Dynamic linking supports flexible code deployment, allowing partially linked code to link further code on the fly, as needed. Thus, end-users enjoy the advantage of automatically receiving any updates, without any need for any explicit actions on their side, such as re-compilation, or re-linking. On the down side, two executions of a program may link in different versions of code, which in some cases causes subtle errors, and may mystify end-users.\par Dynamic linking in Java and C\# are similar: the same linking phases are involved, soundness is based on similar ideas, and executions which do not throw linking errors give the same result. They are, however, not identical: the linking phases are combined differently, and take place in different order. Consequently, linking errors may be detected at different times by Java and C\# runtime systems.\par We develop a non-deterministic model, which describes the behaviour of both Java and C\# program executions. The non-determinism allows us to describe the design space, to distill the similarities between the two languages, and to use one proof of soundness for both. We also prove that all execution strategies are equivalent with respect to terminating executions that do not throw link errors: they give the same results.", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Article{Duddy:2006:BRK, author = "Keith Duddy", title = "Book Review: {Kevin Lano, Advanced Systems Design with Java, UML and MDA. Elsevier (2005). ISBN 0-7506-6496-7. \pounds 27.99\slash US\$44.95. 378 pp. Softbound}", journal = j-COMP-J, volume = "49", number = "4", pages = "500--501", month = jul, year = "2006", CODEN = "CMPJA6", DOI = "https://doi.org/10.1093/comjnl/bxl010", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Fri Jun 23 11:56:45 MDT 2006", bibsource = "http://comjnl.oxfordjournals.org/content/vol49/issue4/index.dtl; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://comjnl.oxfordjournals.org/cgi/content/full/49/4/500; http://comjnl.oxfordjournals.org/cgi/reprint/49/4/500", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Dyer:2006:NPD, author = "Robert Dyer and Harish Narayanappa and Hridesh Rajan", title = "{Nu}: preserving design modularity in object code", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218802", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "For a number of reasons, such as to generate object code that is compliant with the existing virtual machines (VM), current compilers for aspect-oriented languages sacrifice design modularity when transforming source to object code by losing textual locality and intermingling concerns in the object code. Sacrificing design modularity has significant costs, especially in terms of the speed of incremental compilation. We present an intermediate language design that preserves aspect-oriented design modularity in Java byte code. We briefly describe our extensions to the Sun Hotspot VM to support the new intermediate language design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Edwards:2006:JAE, author = "James Edwards and Cameron Adams", title = "The {JavaScript} anthology: 101 essential tips, tricks and hacks", publisher = pub-SITEPOINT, address = pub-SITEPOINT:adr, pages = "xvi + 588", year = "2006", ISBN = "0-9752402-6-9", ISBN-13 = "978-0-9752402-6-7", LCCN = "QA76.73.J39 E392 2006", bibdate = "Tue Aug 5 18:14:24 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780975240267", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); Internet programming", } @Book{Elliott:2006:GSH, author = "James Elliott", title = "Getting started with {Hibernate 3}", publisher = pub-ORA, address = pub-ORA:adr, year = "2006", ISBN = "0-596-52818-3", ISBN-13 = "978-0-596-52818-8", LCCN = "QA76.73.J38 E45 2006eb; QA76.73.J38", bibdate = "Tue Aug 5 18:09:08 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596528188", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Open source software", } @Article{English:2006:CAA, author = "John English", title = "The checkpoint automated assessment system", journal = j-SIGCSE, volume = "38", number = "3", pages = "337--337", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140245", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This presentation describes Checkpoint, an integrated automated assessment system. The system manages both homework assignments and formal examinations based on a range of different question types, including questions requiring free-text answers. It supports an interactive authoring facility and provides a wide range of management and auditing facilities. It is currently being piloted with a cohort of 159 students on two first-year Java programming modules at the author's institution.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Espak:2006:JRB, author = "M. Esp{\'a}k", title = "{Japlo}: Rule-based Programming on {Java}", journal = j-J-UCS, volume = "12", number = "9", pages = "1177--1189", month = "????", year = "2006", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Thu Jul 10 06:41:41 MDT 2008", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_12_9/japlo_rule_based_programming", abstract = "Imperative programming languages (such as Java) are the most widespread programming languages recently. Besides being quite easy to get familiar with them, they are also perfectly suitable for business software development. Although the productivity of imperative languages is much acclaimed, some problems are much easier to solve in a logical language. The paper introduces a Java language extension called Japlo, which fits the Prolog language constructs into Java harmonically. Blurring the borders between the representatives of these two paradigms, the author aims at making the logical programming tools more easily available for Java programmers. Japlo does not only provide a foreign language interface to Prolog programs, but you can write Prolog rules within the language relying on some basic concepts (static typing, expression orientation) and the grammatic structure of Java.", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", keywords = "Japlo; Java; Prolog", } @Article{Eugster:2006:UPJa, author = "Patrick Eugster", title = "Uniform proxies for {Java}", journal = j-SIGPLAN, volume = "41", number = "10", pages = "139--152", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167485", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The proxy abstraction has a longlasting tradition in object settings. From design pattern to inherent language support, from remote method invocations to simple forms of behavioral reflection - incarnations as well as applications of proxies are innumerable. Since version 1.3, Java supports the concept of dynamic proxy. Such an object conforms to a set of types specified by the program and can be used wherever an expression of any of these types is expected, yet reifies invocations performed on it. Dynamic proxies have been applied to implement paradigms as diverse as behavioral reflection, structural conformance, or multi-methods. Alas, these proxies are only available 'for interfaces'. The case of creating dynamic proxies for a set of types including a class type has not been considered, meaning that it is currently not possible to create a dynamic proxy mimicking an instance of a given class. This weakness strongly limits any application of dynamic proxies. In this paper we unfold the current support for dynamic proxies in Java, assessing it in the light of a set of generic criteria for proxy implementations. We present an approach to supporting dynamic proxies 'for classes' in Java, consisting in transformations performed on classes at load-time, including a generic scheme for enforcing encapsulation upon field accesses. These transformations seemlessly extend the scope of the current support for dynamic proxies. We discuss the precise benefits and costs of our extension in terms of the criteria introduced, and illustrate the usefulness of uniformly available proxies by implementing future method invocations both safely and transparently.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "future; Java; proxy; transformation", } @Article{Evripidou:2006:MMA, author = "Paraskevas Evripidou and George Samaras", title = "Metacomputing with Mobile Agents", journal = j-INT-J-PARALLEL-PROG, volume = "34", number = "5", pages = "429--458", month = oct, year = "2006", CODEN = "IJPPE5", DOI = "https://doi.org/10.1007/s10766-006-0021-2", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 9 16:06:10 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=34&issue=5; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=34&issue=5&spage=429", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", keywords = "Java; Metacomputing; Mobile Agents; Mobile Computing; Pervasive Computing", } @Article{Factor:2006:PID, author = "Michael Factor and Assaf Schuster and Konstantin Shagin", title = "A Platform-Independent Distributed Runtime for Standard Multithreaded {Java}", journal = j-INT-J-PARALLEL-PROG, volume = "34", number = "2", pages = "113--142", month = apr, year = "2006", CODEN = "IJPPE5", DOI = "https://doi.org/10.1007/s10766-006-0007-0", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 9 16:05:55 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=34&issue=2; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=34&issue=2&spage=113", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", keywords = "bytecode instrumentation; distributed computing; distributed shared memory; Java", } @Book{Farley:2006:JEN, author = "Jim Farley and William Crawford", title = "{Java Enterprise} in a nutshell", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xviii + 871", year = "2006", ISBN = "0-596-10142-2 (paperback)", ISBN-13 = "978-0-596-10142-8 (paperback)", LCCN = "QA76.73.J38 F375 2006", bibdate = "Wed Nov 15 10:37:03 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "In a nutshell", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Web servers; Object-oriented programming (Computer science)", tableofcontents = "Introduction \\ Application assembly and deployment \\ Java servlets \\ JavaServer pages \\ JavaServer faces \\ Enterprise JavaBeans \\ Java and XML \\ JDBC \\ JNDI \\ J2EE security \\ Java message service \\ Web services with JAX-RPC and SAAJ \\ Remote method invocation \\ Java IDL (CORBA) \\ JavaMail \\ Transactions \\ Ant \\ JUnit and Cactus \\ Struts \\ Hibernate \\ Annotations with XDoclet and J2SE metadata \\ J2EE deployment descriptor reference \\ JavaServer faces tag libraries \\ Enterprise JavaBeans query language syntax \\ SQL reference \\ JMS message selector syntax \\ RMI tools \\ IDL reference \\ Java IDL tools", } @Article{Felea:2006:DLB, author = "Violeta Felea and Bernard Toursel", title = "Dynamic load-balancing mechanism for distributed {Java} applications", journal = j-CCPE, volume = "18", number = "3", pages = "305--331", month = mar, year = "2006", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.921", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:01 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "13 Sep 2005", } @Book{Fisher:2006:JEN, editor = "Marina Fisher and Ray Lai and Laurence Moroney and Sonu Sharma", title = "{Java EE} and {.NET} interoperability: integration strategies, patterns, and best practices", publisher = pub-PH, address = pub-PH:adr, pages = "xxxvii + 608", year = "2006", ISBN = "0-13-147223-2 (paperback)", ISBN-13 = "978-0-13-147223-5 (paperback)", LCCN = "QA76.76.M52 J23 2006", bibdate = "Mon Jun 12 08:10:47 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip066/2006000235.html; http://www.phptr.com/bookstore/product.asp?isbn=0131472232", acknowledgement = ack-nhfb, subject = "Microsoft .NET; Java (Computer program language)", } @Book{Flanagan:2006:JDG, author = "David Flanagan", title = "{JavaScript}: the definitive guide", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fifth", pages = "xxii + 994", year = "2006", ISBN = "0-596-10199-6", ISBN-13 = "978-0-596-10199-2", LCCN = "QA76.73.J39 F53 2006eb; QA76.73.J39 F53 2006; QA76.73.J39", bibdate = "Tue Aug 5 17:52:07 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101992", acknowledgement = ack-nhfb, remark = "Previous edition 2002. Covers Ajax and DOM scripting.", subject = "JavaScript (Computer program language); Web servers; Object-oriented programming (Computer science)", tableofcontents = "Introduction to JavaScript \\ Lexical structure \\ Datatypes and values \\ Variables \\ Expressions and operators \\ Statements \\ Objects and arrays \\ Functions \\ Classes, constructors, and prototypes \\ Modules and namespaces \\ Pattern matching with regular expressions \\ Scripting Java \\ JavaScript in Web browsers \\ Scripting browser Windows \\ Scripting documents \\ Cascading style sheets and Dynamic HTML \\ Events and event handling \\ Forms and form elements \\ Cookies and client-side persistence \\ Scripting HTTP \\ JavaScript and XML \\ Scripted client-side graphics \\ Scripting Java Applets and Flash movies \\ Core JavaScript reference \\ Client-side JavaScript reference", } @Article{Fuller:2006:CPB, author = "Ursula Fuller and Arnold Pears and June Amillo and Chris Avram and Linda Mannila", title = "A computing perspective on the {Bologna Process}", journal = j-SIGCSE, volume = "38", number = "4", pages = "115--131", month = dec, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1189136.1189181", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:31 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse38.html#FullerPAAM06; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2006.bib", abstract = "The Bologna process is intended to culminate in the formation of the European Higher Education Area (EHEA) by 2010. Its aim is to facilitate the mobility of people, the transparency and recognition of qualifications, quality and development of a European dimension to higher education, and the attractiveness of European institutions for third country students. This paper provides an overview of progress towards implementation in EHEA member states using official documents and interview data from faculty teaching computing in countries represented at the ITiCSE 2006 meeting. The key areas where the structures established by the Bologna process are problematic for computing education arise from the rapidly changing nature of the curriculum. It seems that the maturity and capability criteria, as well as the manner in which learning outcomes are specified, being developed within the Bologna process are too general. This endangers the properties of transparency and mobility that the process intends to promote. Progression and prerequisite knowledge in computing degrees can be very specific. For instance, generic learning outcomes for an introductory programming course quite rightly will not specify the programming language, or languages, used to implement algorithms. However, suppose a student intends to study an advanced algorithms and data structures course in which Java is the language of implementation which has an introductory course in programming as a prerequisite. If the introductory course language was Standard ML it is not clear that the prerequisite course actually provides the student with a suitable background. These types of complexities are typical of computing, where early subject curricula are not standardised nationally or internationally, and create significant hurdles for realising the Bologna objectives.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Gehtland:2006:PAW, author = "Justin Gehtland and Dion Almaer and Ben Galbraith", title = "Pragmatic {Ajax}: a {Web 2.0} primer", publisher = "Pragmatic Bookshelf", address = "Raleigh, NC, USA", pages = "200 (est.)", year = "2006", ISBN = "0-9766940-8-5", ISBN-13 = "978-0-9766940-8-3", LCCN = "????", bibdate = "Mon Mar 27 08:52:09 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Glass:2006:RCP, author = "Robert L. Glass", title = "Review of {{\booktitle{COBOL Programmers Swing With Java}} by E. Reed Doke, Bill C. Hardgrave and Richard A. Johnson, Cambridge University Press, 2005}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "44--45", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127907", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Goetz:2006:JCP, author = "Brian Goetz and Tim Peierls and Joshua Bloch and Joseph Bowbeer and Doug Lea and David Holmes", title = "{Java} Concurrency in Practice", publisher = pub-AW, address = pub-AW:adr, pages = "xx + 403", year = "2006", ISBN = "0-321-34960-1 (paperback)", ISBN-13 = "978-0-321-34960-6 (paperback)", LCCN = "QA76.73.J38 G588 2006", bibdate = "Tue Jan 27 16:11:07 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip0612/2006012205.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Parallel programming (Computer science); Threads (Computer programs)", } @Article{Goh:2006:DBM, author = "Leng Goh and Yanfeng Shu and Zhiyong Huang and Chin Ooi", title = "Dynamic buffer management with extensible replacement policies", journal = j-VLDB-J, volume = "15", number = "2", pages = "99--120", month = jun, year = "2006", CODEN = "VLDBFR", ISSN = "1066-8888 (print), 0949-877X (electronic)", ISSN-L = "1066-8888", bibdate = "Mon Jun 23 10:51:18 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The objective of extensible DBMSs is to ease the construction of specialized DBMSs for nontraditional applications. Although much work has been done in providing various levels of extensibility (e.g., extensibility of data types and operators, query language extensibility, and query optimizer extensibility), there has been very limited research in providing extensibility at the buffer management level. Supporting extensibility at the buffer management level is important as it can contribute significantly to overall system performance. This paper addresses the problem of supporting extensibility of buffer replacement policies. The main contribution is the proposal of a framework for modeling buffer replacement policies. This work is novel in two aspects. First, by providing a uniform and generic specification of buffer replacement policies, the proposed framework unifies existing work in this area. Second, our work introduces a new level of extensibility. None of the existing extensible DBMSs, to our knowledge, provides extensibility at the buffer management level. The proposed framework provides a basis for the construction of an extensible buffer manager as part of a 100\% Java-based storage manager. We conducted an extensive performance study to investigate the performance of the proposed framework. The experimental results demonstrate that the proposed framework is indeed feasible for existing DBMSs and improves system performance significantly without costing significant overhead.", acknowledgement = ack-nhfb, fjournal = "VLDB Journal: Very Large Data Bases", journal-URL = "http://portal.acm.org/toc.cfm?id=J869", keywords = "buffer management; extensible DBMS; replacement strategies", } @Book{Goodrich:2006:DSA, author = "Michael T. Goodrich and Roberto Tamassia", title = "Data Structures and Algorithms in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Fourth", pages = "xxii + 696", year = "2006", ISBN = "0-471-73884-0", ISBN-13 = "978-0-471-73884-8", LCCN = "QA76.73.J38 G66 2006", bibdate = "Thu Mar 22 12:04:32 MDT 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0627/2005282681-b.html; http://www.loc.gov/catdir/enhancements/fy0627/2005282681-d.html; http://www.loc.gov/catdir/enhancements/fy0627/2005282681-t.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Data structures (Computer science); Computer algorithms", } @Article{Goth:2006:NSN, author = "Greg Goth", title = "News: Not in the Script --- News of {Java}'s Demise Is Premature", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "7", number = "2", pages = "??--??", month = feb, year = "2006", CODEN = "????", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Mon Aug 30 23:14:33 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/ds/2006/02/o2004.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Gousie:2006:RWP, author = "Michael B. Gousie", title = "A robust {Web} programming and graphics course for non-majors", journal = j-SIGCSE, volume = "38", number = "1", pages = "72--76", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121367", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Web Programming, Graphics, and Design is a course with no prerequisites that teaches non-computer science majors how to create their own sophisticated web pages. The course begins with the use of popular software such as Dreamweaver and Fireworks and then progresses to writing interactive web pages in Java. Students learn how to program with Java's Abstract Window Toolkit (AWT) as well as the graphics library, leading to the creation of $3$D images. Solving problems involving mathematics is a theme throughout much of the course. Finally, following Wheaton College's curricular emphasis on inter-departmental offerings, the course is linked with Graphic Design I in the Art Department, enabling students to learn the design portion in even greater depth.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Grimm:2006:BET, author = "Robert Grimm", title = "Better extensibility through modular syntax", journal = j-SIGPLAN, volume = "41", number = "6", pages = "38--51", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133981.1133987", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We explore how to make the benefits of modularity available for syntactic specifications and present Rats!, a parser generator for Java that supports easily extensible syntax. Our parser generator builds on recent research on parsing expression grammars (PEGs), which, by being closed under composition, prioritizing choices, supporting unlimited lookahead, and integrating lexing and parsing, offer an attractive alternative to context-free grammars. PEGs are implemented by so-called packrat parsers, which are recursive descent parsers that memoize all intermediate results (hence their name). Memoization ensures linear-time performance in the presence of unlimited lookahead, but also results in an essentially lazy, functional parsing technique. In this paper, we explore how to leverage PEGs and packrat parsers as the foundation for extensible syntax. In particular, we show how make packrat parsing more widely applicable by implementing this lazy, functional technique in a strict, imperative language, while also generating better performing parsers through aggressive optimizations. Next, we develop a module system for organizing, modifying, and composing large-scale syntactic specifications. Finally, we describe a new technique for managing (global) parsing state in functional parsers. Our experimental evaluation demonstrates that the resulting parser generator succeeds at providing extensible syntax. In particular, Rats! enables other grammar writers to realize real-world language extensions in little time and code, and it generates parsers that consistently out-perform parsers created by two GLR parser generators.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "extensible syntax; module system; packrat parsing; parser generator; parsing expression grammar", } @Book{Harold:2006:J, author = "Elliotte Rusty Harold", title = "{Java I/O}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "726 (est.)", year = "2006", ISBN = "0-596-52750-0", ISBN-13 = "978-0-596-52750-1", LCCN = "????", bibdate = "Mon Jun 12 08:18:16 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", price = "US\$49.99", series = "The Java series", URL = "http://www.oreilly.com/catalog/javaio2/", acknowledgement = ack-nhfb, keywords = "Java input/output", subject = "Java (Computer program language)", } @Book{Harrison:2006:MSP, author = "Guy Harrison and Steven Feuerstein", title = "{MySQL} stored procedure programming: building high-performance web applications with {PHP}, {Perl}, {Python}, {Java} \& {.NET}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxiii + 609", year = "2006", ISBN = "0-596-10089-2", ISBN-13 = "978-0-596-10089-6", LCCN = "QA76.73.S67 H377 2006eb; QA76.73.S67", bibdate = "Tue Aug 5 17:49:10 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596100896", acknowledgement = ack-nhfb, subject = "SQL (Computer program language); Database management", } @Article{Haustein:2006:JDJ, author = "Max Haustein and Klaus-Peter L{\"o}hr", title = "{JAC}: declarative {Java} concurrency", journal = j-CCPE, volume = "18", number = "5", pages = "519--546", day = "25", month = apr, year = "2006", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.956", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:02 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "20 Oct 2005", } @Article{Herlihy:2006:FFIa, author = "Maurice Herlihy and Victor Luchangco and Mark Moir", title = "A flexible framework for implementing software transactional memory", journal = j-SIGPLAN, volume = "41", number = "10", pages = "253--262", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167515.1167495", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We describe DSTM2, a Java{\TM} software library that provides a flexible framework for implementing object-based software transactional memory (STM). The library uses transactional factories to transform sequential (unsynchronized) classes into atomic (transactionally synchronized) ones, providing a substantial improvement over the awkward programming interface of our previous DSTM library. Furthermore, researchers can experiment with alternative STM mechanisms by providing their own factories. We demonstrate this flexibility by presenting two factories: one that uses essentially the same mechanisms as the original DSTM (with some enhancements),and another that uses a completely different approach. Because DSTM2 is packaged as a Java library, a wide range of programmers can easily try it out, and the community can begin to gain experience with transactional programming. Furthermore, researchers will be able to use the body of transactional programs that arises from this community experience to test and evaluate different STM mechanisms simply by supplying new transactional factories. We believe that this flexible approach will help to build consensus about the best ways to implement transactions, and will avoid the premature 'lock-in' that may arise if STM mechanisms are baked into compilers before such experimentation is done.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "atomicity; concurrency; Java library; obstruction-free factory; shadow factory; software transactional memory (STM); transactions", } @Article{Hertz:2006:GOL, author = "Matthew Hertz and Stephen M. Blackburn and J. Eliot B. Moss and Kathryn S. McKinley and Darko Stefanovi{\'c}", title = "Generating object lifetime traces with {Merlin}", journal = j-TOPLAS, volume = "28", number = "3", pages = "476--516", month = may, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1133651.1133654", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue May 30 16:33:23 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Programmers are writing a rapidly growing number of programs in object-oriented languages, such as Java and C\#, that require garbage collection. Garbage collection traces and simulation speed up research by enabling deeper understandings of object lifetime behavior and quick exploration and design of new garbage collection algorithms. When generating perfect traces, the brute-force method of computing object lifetimes requires a whole-heap garbage collection at every potential collection point in the program. Because this process is prohibitively expensive, researchers often use granulated traces by collecting only periodically, for example, every 32 KB of allocation. We extend the state of the art for simulating garbage collection algorithms in two ways. First, we develop a systematic methodology for simulation studies of copying garbage collection and present results showing the effects of trace granularity on these simulations. We show that trace granularity often distorts simulated garbage collection results compared with perfect traces. Second, we present and measure the performance of a new algorithm called Merlin for computing object lifetimes. Merlin timestamps objects and later uses the timestamps of dead objects to reconstruct when they died. The Merlin algorithm piggybacks on garbage collections performed by the base system. Experimental results show that Merlin can generate traces over two orders of magnitude faster than the brute-force method which collects after every object allocation. We also use Merlin to produce visualizations of heap behavior that expose new object lifetime behaviors.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Higuera-Toledano:2006:HSD, author = "M. Teresa Higuera-Toledano", title = "Hardware support for detecting illegal references in a multiapplication real-time {Java} environment", journal = j-TECS, volume = "5", number = "4", pages = "753--772", month = nov, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1145/1196636.1196638", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Jun 12 15:20:45 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Our objective is to adapt the Java memory management to an embedded system, e.g., a wireless PDA executing concurrent multimedia applications within a single JVM. This paper provides software, and hardware-based solutions detecting both illegal references across the application memory spaces and dangling pointers within an application space. We give an approach to divide/share the memory among the applications executing concurrently in the system. We introduce and define application-specific memory, building upon the real-time specification for Java (RTSJ) from the real-time Java expert group. The memory model used in RTSJ imposes strict rules for assignment between memory areas, preventing the creation of dangling pointers, and thus maintaining the pointer safety of Java. Our implementation solution to ensure the checking of these rules before each assignment inserts write barriers that use a stack-based algorithm. This solution adversely affects both the performance and predictability of the RTSJ applications, which can be improved by using an existing hardware support.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "garbage collection; memory management; write barriers", } @Article{Hobona:2006:WBV, author = "Gobe Hobona and Philip James and David Fairbairn", title = "Web-Based Visualization of {$3$D} Geospatial Data Using {Java3D}", journal = j-IEEE-CGA, volume = "26", number = "4", pages = "28--33", month = jul # "\slash " # aug, year = "2006", CODEN = "ICGADZ", DOI = "https://doi.org/10.1109/MCG.2006.94", ISSN = "0272-1716 (print), 1558-1756 (electronic)", ISSN-L = "0272-1716", bibdate = "Thu Jul 3 10:16:12 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Computer Graphics and Applications", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/cga", } @Article{Holmes:2006:RFM, author = "Susan Holmes", title = "Review of {Fionn Murtagh}'s book: {{\booktitle{Correspondence Analysis and Data Coding with Java and R}}}", journal = j-R-NEWS, volume = "6", number = "4", pages = "41--43", month = oct, year = "2006", CODEN = "????", ISSN = "1609-3631", ISSN-L = "1609-3631", bibdate = "Thu Aug 13 09:25:10 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/rjournal.bib", URL = "http://CRAN.R-project.org/doc/Rnews/", acknowledgement = ack-r-project, fjournal = "R News: the Newsletter of the R Project", journal-URL = "http://journal.r-project.org/", pdf = Rnews2006-4, } @Article{Igarashi:2006:VPT, author = "Atsushi Igarashi and Mirko Viroli", title = "Variant parametric types: a flexible subtyping scheme for generics", journal = j-TOPLAS, volume = "28", number = "5", pages = "795--847", month = sep, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1152649.1152650", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Sep 6 07:13:55 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We develop the mechanism of variant parametric types as a means to enhance synergy between parametric and inclusion polymorphism in object-oriented programming languages. Variant parametric types are used to control both the subtyping between different instantiations of one generic class and the accessibility of their fields and methods. On one hand, one parametric class can be used to derive covariant types, contravariant types, and bivariant types (generally called variant parametric types) by attaching a variance annotation to a type argument. On the other hand, the type system prohibits certain method\slash field accesses, according to variance annotations, when these accesses may otherwise make the program unsafe. By exploiting variant parametric types, a programmer can write generic code abstractions that work on a wide range of parametric types in a safe manner. For instance, a method that only reads the elements of a container of numbers can be easily modified so as to accept containers of integers, floating-point numbers, or any subtype of the number type. Technical subtleties in typing for the proposed mechanism are addressed in terms of an intuitive correspondence between variant parametric and bounded existential types. Then, for a rigorous argument of correctness of the proposed typing rules, we extend Featherweight GJ---an existing formal core calculus for Java with generics---with variant parametric types and prove type soundness.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Inoue:2006:PJO, author = "H. Inoue and D. Stefanovic and S. Forrest", title = "On the prediction of {Java} object lifetimes", journal = j-IEEE-TRANS-COMPUT, volume = "55", number = "7", pages = "880--892", month = jul, year = "2006", CODEN = "ITCOB4", DOI = "https://doi.org/10.1109/TC.2006.107", ISSN = "0018-9340 (print), 1557-9956 (electronic)", ISSN-L = "0018-9340", bibdate = "Mon Jul 4 15:35:55 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranscomput2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1637403", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Computers", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=12", } @Book{Jacobi:2006:PJA, author = "Jonas Jacobi and John R. Fallows", title = "{Pro JSF} and {Ajax}: building rich {Internet} components", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xxiii + 435", year = "2006", ISBN = "1-59059-580-7", ISBN-13 = "978-1-59059-580-0", LCCN = "????", bibdate = "Fri Jun 20 11:56:09 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", series = "The Expert's voice in Java", acknowledgement = ack-nhfb, subject = "JSF; Ajax; JavaScript; asynchronous JavaScript XML", } @Article{Johnson:2006:JT, author = "Stephen Johnson", title = "{Java} in a teacup", journal = j-QUEUE, volume = "4", number = "3", pages = "36--41", month = apr, year = "2006", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Wed May 3 08:36:45 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Jordan:2006:SJT, author = "Mick Jordan and Laurent Dayn{\`e}s and Marcin Jarzab and Ciar{\'a}n Bryce and Grzegorz Czajkowski", title = "Scaling {J2EE} {\TM} application servers with the {Multi-tasking Virtual Machine}", journal = j-SPE, volume = "36", number = "6", pages = "557--580", month = may, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.703", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:12 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "14 Feb 2006", } @Book{Kahrel:2006:AIR, author = "Peter Kahrel", title = "Automating {InDesign} with regular expressions", publisher = pub-ORA, address = pub-ORA:adr, year = "2006", ISBN = "0-596-52937-6", ISBN-13 = "978-0-596-52937-6", LCCN = "Z253.532.A34; Z253.532.A34 K34 2006eb", bibdate = "Tue Aug 5 18:11:25 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596529376", acknowledgement = ack-nhfb, subject = "Adobe InDesign; Desktop publishing; JavaScript (Computer program language)", } @Book{Kahrel:2006:SIJ, author = "Peter Kahrel", title = "Scripting {InDesign} with {JavaScript}", publisher = pub-ORA, address = pub-ORA:adr, year = "2006", ISBN = "0-596-52817-5", ISBN-13 = "978-0-596-52817-1", LCCN = "Z253.532.A34", bibdate = "Tue Aug 5 18:09:04 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596528171", acknowledgement = ack-nhfb, subject = "Adobe InDesign; JavaScript (Computer program language); Desktop publishing", } @Article{Kaiser:2006:CJC, author = "Claude Kaiser and Jean-Fran{\c{c}}ois Pradat-Peyre and Sami {\'E}vangelista and Pierre Rousseau", title = "Comparing {Java}, {C\#} and {Ada} monitors queuing policies: a case study and its {Ada} refinement", journal = j-SIGADA-LETTERS, volume = "26", number = "2", pages = "23--37", month = aug, year = "2006", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1165678.1165681", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:16:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Learning concurrency paradigms is necessary but it is not sufficient since the choice of run-time semantics may introduce subtle programming errors. It is the aim of this paper to exemplify the importance of process queuing and awaking policies resulting from possible choices of the monitor concept implementation.The first part of the paper compares the behaviour of concurrent processes sharing a unique waiting queue for condition synchronization when implemented in Java or in Ada. A particular solution of the dining philosophers paradigm will be used to show how the difference in the monitor semantics may lead or not to deadlock. This comparison provides insight for deriving a correct Java implementation. The second part of the paper shows how the implementation can be refined when using Ada entry families and requeue with requeue once restriction. The result is elegant, safe and fair, and deterministic. This paper ends with quantitative comparisons of concurrency complexity and of concurrency effectiveness.We conclude that Java and C\# multithreading need defensive concurrent programming while Ada allows more latitude for developing correct concurrent programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Kapitza:2006:FIA, author = "R{\"u}diger Kapitza and J{\"o}rg Domaschka and Franz J. Hauck and Hans P. Reiser and Holger Schmidt", title = "{FORMI}: Integrating Adaptive Fragmented Objects into {Java RMI}", journal = j-IEEE-DISTRIB-SYST-ONLINE, volume = "7", number = "10", pages = "??--??", month = oct, year = "2006", CODEN = "????", ISSN = "1541-4922 (print), 1558-1683 (electronic)", ISSN-L = "1541-4922", bibdate = "Mon Aug 30 23:14:34 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csdl.computer.org/comp/mags/ds/2006/10/ox001.pdf", acknowledgement = ack-nhfb, fjournal = "IEEE Distributed Systems Online", } @Article{Kawahito:2006:ESE, author = "Motohiro Kawahito and Hideaki Komatsu and Toshio Nakatani", title = "Effective sign extension elimination for {Java}", journal = j-TOPLAS, volume = "28", number = "1", pages = "106--133", month = jan, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1111596.1111599", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Jan 24 05:55:31 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Computer designs are shifting from 32-bit architectures to 64-bit architectures, while most of the programs available today are still designed for 32-bit architectures. Java, for example, specifies the frequently used ``int'' as a 32-bit signed integer. If such Java programs are executed on a 64-bit architecture, many 32-bit signed integers must be sign-extended to 64-bit signed integers for correct operations. This causes serious performance overhead. In this article, we present a fast and effective algorithm for eliminating sign extensions. We implemented this algorithm in the IBM Java Just-in-Time (JIT) compiler for IA-64. Our experimental results show that our algorithm effectively eliminates the majority of sign extensions. They also show that it improves performance by 6.9\% for jBYTEmark and 3.3\% for SPECjvm98 over the previously known best algorithm, while it increases JIT compilation time by only 0.11\%.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Kawahito:2006:NIR, author = "Motohiro Kawahito and Hideaki Komatsu and Takao Moriyama and Hiroshi Inoue and Toshio Nakatani", title = "A new idiom recognition framework for exploiting hardware-assist instructions", journal = j-SIGPLAN, volume = "41", number = "11", pages = "382--393", month = nov, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1168917.1168905", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:49:40 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Modern processors support hardware-assist instructions (such as TRT and TROT instructions on IBM zSeries) to accelerate certain functions such as delimiter search and character conversion. Such special instructions have often been used in high performance libraries, but they have not been exploited well in optimizing compilers except for some limited cases. We propose a new idiom recognition technique derived from a topological embedding algorithm [4] to detect idiom patterns in the input program more aggressively than in previous approaches. Our approach can detect a pattern even if the code segment does not exactly match the idiom. For example, we can detect a code segment that includes additional code within the idiom pattern. We implemented our new idiom recognition approach based on the Java Just-In-Time (JIT) compiler that is part of the J9 Java Virtual Machine, and we supported several important idioms for special hardware-assist instructions on the IBM zSeries and on some models of the IBM pSeries. To demonstrate the effectiveness of our technique, we performed two experiments. The first one is to see how many more patterns we can detect compared to the previous approach. The second one is to see how much performance improvement we can achieve over the previous approach. For the first experiment, we used the Java Compatibility Kit (JCK) API tests. For the second one we used IBM XML parser, SPECjvm98, and SPCjbb2000. In summary, relative to a baseline implementation using exact pattern matching, our algorithm converted 75\% more loops in JCK tests. We also observed significant performance improvement of the XML parser by 64\%, of SPECjvm98 by 1\%, and of SPECjbb2000 by 2\% on average on a z990. Finally, we observed the JIT compilation time increases by only 0.32\% to 0.44\%.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "hardware-assist instructions; idiom recognition; Java; JIT; topological embedding; VMX", } @Article{Kermany:2006:CCI, author = "Haim Kermany and Erez Petrank", title = "The {Compressor}: concurrent, incremental, and parallel compaction", journal = j-SIGPLAN, volume = "41", number = "6", pages = "354--363", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133255.1134023", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The widely used Mark-and-Sweep garbage collector has a drawback in that it does not move objects during collection. As a result, large long-running realistic applications, such as Web application servers, frequently face the fragmentation problem. To eliminate fragmentation, a heap compaction is run periodically. However, compaction typically imposes very long undesirable pauses in the application. While efficient concurrent collectors are ubiquitous in production runtime systems (such as JVMs), an efficient non-intrusive compactor is still missing. In this paper we present the Compressor, a novel compaction algorithm that is concurrent, parallel, and incremental. The Compressor compacts the entire heap to a single condensed area, while preserving the objects' order, but reduces pause times significantly, thereby allowing acceptable runs on large heaps. Furthermore, the Compressor is the first compactor that requires only a single heap pass. As such, it is the most efficient compactors known today, even when run in a parallel Stop-the-World manner (i.e., when the program threads are halted). Thus, to the best of our knowledge, the Compressor is the most efficient compactor known today. The Compressor was implemented on a Jikes Research RVM and we provide measurements demonstrating its qualities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compaction; concurrent garbage collection; garbage collection; memory management; runtime systems", } @Article{Klein:2006:MCM, author = "Gerwin Klein and Tobias Nipkow", title = "A machine-checked model for a {Java-like} language, virtual machine, and compiler", journal = j-TOPLAS, volume = "28", number = "4", pages = "619--695", month = jul, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1146809.1146811", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Aug 23 15:21:57 MDT 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We introduce Jinja, a Java-like programming language with a formal semantics designed to exhibit core features of the Java language architecture. Jinja is a compromise between the realism of the language and the tractability and clarity of its formal semantics. The following aspects are formalised: a big and a small step operational semantics for Jinja and a proof of their equivalence, a type system and a definite initialisation analysis, a type safety proof of the small step semantics, a virtual machine (JVM), its operational semantics and its type system, a type safety proof for the JVM; a bytecode verifier, that is, a data flow analyser for the JVM, a correctness proof of the bytecode verifier with respect to the type system, and a compiler and a proof that it preserves semantics and well-typedness. The emphasis of this work is not on particular language features but on providing a unified model of the source language, the virtual machine, and the compiler. The whole development has been carried out in the theorem prover Isabelle/HOL.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Kuc:2006:ROS, author = "Bernard Kuc", title = "Review of {``Open Source Wireless Java Tools Suite by Robert Virkus,'' Apress, 2005, \$39.99, ISBN 1-59059-503-3}", journal = j-QUEUE, volume = "4", number = "4", pages = "48--48", month = may, year = "2006", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Wed Aug 23 12:29:00 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See \cite{Virkus:2005:PJP}.", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Lau:2006:OPA, author = "Jeremy Lau and Matthew Arnold and Michael Hind and Brad Calder", title = "Online performance auditing: using hot optimizations without getting burned", journal = j-SIGPLAN, volume = "41", number = "6", pages = "239--251", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133255.1134010", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "As hardware complexity increases and virtualization is added at more layers of the execution stack, predicting the performance impact of optimizations becomes increasingly difficult. Production compilers and virtual machines invest substantial development effort in performance tuning to achieve good performance for a range of benchmarks. Although optimizations typically perform well on average, they often have unpredictable impact on running time, sometimes degrading performance significantly. Today's VMs perform sophisticated feedback-directed optimizations, but these techniques do not address performance degradations, and they actually make the situation worse by making the system more unpredictable. This paper presents an online framework for evaluating the effectiveness of optimizations, enabling an online system to automatically identify and correct performance anomalies that occur at runtime. This work opens the door for a fundamental shift in the way optimizations are developed and tuned for online systems, and may allow the body of work in offline empirical optimization search to be applied automatically at runtime. We present our implementation and evaluation of this system in a product Java VM.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "feedback-directed optimizations; Java; virtual machines", } @Article{Leavens:2006:PDJ, author = "Gary T. Leavens and Albert L. Baker and Clyde Ruby", title = "Preliminary design of {JML}: a behavioral interface specification language for {Java}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--38", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127884", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "JML is a behavioral interface specification language tailored to Java(TM). Besides pre- and postconditions, it also allows assertions to be intermixed with Java code; these aid verification and debugging. JML is designed to be used by working software engineers; to do this it follows Eiffel in using Java expressions in assertions. JML combines this idea from Eiffel with the model-based approach to specifications, typified by VDM and Larch, which results in greater expressiveness. Other expressiveness advantages over Eiffel include quantifiers, specification-only variables, and frame conditions. This paper discusses the goals of JML, the overall approach, and describes the basic features of the language through examples. It is intended for readers who have some familiarity with both Java and behavioral specification using pre- and postconditions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Levanoni:2006:FRC, author = "Yossi Levanoni and Erez Petrank", title = "An on-the-fly reference-counting garbage collector for {Java}", journal = j-TOPLAS, volume = "28", number = "1", pages = "1--69", month = jan, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1111596.1111597", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Jan 24 05:55:31 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Reference-counting is traditionally considered unsuitable for multiprocessor systems. According to conventional wisdom, the update of reference slots and reference-counts requires atomic or synchronized operations. In this work we demonstrate this is not the case by presenting a novel reference-counting algorithm suitable for a multiprocessor system that does not require any synchronized operation in its write barrier (not even a compare-and-swap type of synchronization). A second novelty of this algorithm is that it allows eliminating a large fraction of the reference count updates, thus, drastically reducing the reference-counting traditional overhead. This article includes a full proof of the algorithm showing that it is safe (does not reclaim live objects) and live (eventually reclaims all unreachable objects).\par We have implemented our algorithm on Sun Microsystems' Java Virtual Machine (JVM) 1.2.2 and ran it on a four-way IBM Netfinity 8500R server with 550-MHz Intel Pentium III Xeon and 2 GB of physical memory. Our results show that the algorithm has an extremely low latency and throughput that is comparable to the stop-the-world mark and sweep algorithm used in the original JVM", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Lewis:2006:GGD, author = "Mark C. Lewis and Berna Massingill", title = "Graphical game development in {CS2}: a flexible infrastructure for a semester long project", journal = j-SIGCSE, volume = "38", number = "1", pages = "505--509", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121499", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper discusses a project that has been used to teach CS2 for six semesters at Trinity University. The project spans the full semester, and all eight of the assignments students turn in are part of the project. For this project, the students develop a 2-D game using a framework written by one of the authors. The framework is intended to allow students to produce some results early in the semester before they have significant knowledge without constraining them or doing too much for them. It was originally written for Java 1.3 and has evolved for Java 1.4 and now Java 5. We discuss the details of this project, the benefits it provides, and our experience with it.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Li:2006:PBH, author = "W. Li and S. Mohanty and K. Kavi", title = "A Page-based Hybrid (Software--Hardware) Dynamic Memory Allocator", journal = j-IEEE-COMPUT-ARCHIT-LETT, volume = "5", number = "2", pages = "13--13", month = feb, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1109/L-CA.2006.13", ISSN = "1556-6056 (print), 1556-6064 (electronic)", ISSN-L = "1556-6056", bibdate = "Fri Jun 21 05:49:19 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeecomputarchitlett.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Modern programming languages often include complex mechanisms for dynamic memory allocation and garbage collection. These features drive the need for more efficient implementation of memory management functions, both in terms of memory usage and execution performance. In this paper, we introduce a software and hardware co-design to improve the speed of the software allocator used in free-BSD systems. The hardware complexity of our design is independent of the dynamic memory size, thus making the allocator suitable for any memory size. Our design improves the performance of memory management intensive benchmarks by as much as 43\%. To oar knowledge, this is the first-ever work of this kind, introducing ``hybrid memory allocator''", acknowledgement = ack-nhfb, fjournal = "IEEE Computer Architecture Letters", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=10208", keywords = "Application software; Computer languages; Computer science; Costs; Delay; Dynamic programming; garbage collection; Hardware; hardware complexity; hardware-software codesign; hybrid dynamic memory allocator; Java; memory allocator; memory architecture; memory management; Memory management; modern programming languages; software allocator; Software performance; software-hardware co-design; software/hardware co-design; storage allocation; storage management", } @Article{Liang:2006:EIC, author = "Donglin Liang and Maikel Pennings and Mary Jean Harrold", title = "Evaluating the impact of context-sensitivity on {Andersen}'s algorithm for {Java} programs", journal = j-SIGSOFT, volume = "31", number = "1", pages = "6--12", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108797", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program analysis and program optimization of Java programs require reference information that estimates the instances of classes that may be accessed through dereferences. Recent work has presented several approaches for adapting Andersen's algorithm [1] --- the most precise flow-insensitive and context-insensitive points-to analysis algorithm developed for C --- for analyzing Java programs (e.g., [5, 9, 12]). Studies in our previous work [6] indicate that this algorithm may compute very imprecise reference information for Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2006:FFCa, author = "Yu David Liu and Scott F. Smith", title = "A formal framework for component deployment", journal = j-SIGPLAN, volume = "41", number = "10", pages = "325--344", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167502", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Software deployment is a complex process, and industrial-strength frameworks such as .NET, Java, and CORBA all provide explicit support for component deployment. However, these frameworks are not built around fundamental principles as much as they are engineering efforts closely tied to particulars of the respective systems. Here we aim to elucidate the fundamental principles of software deployment, in a platform-independent manner. Issues that need to be addressed include deployment unit design, when, where and how to wire components together, versioning, version dependencies, and hot-deployment of components. We define the application buildbox as the place where software is developed and deployed, and define a formal Labeled Transition System (LTS) on the buildbox with transitions for deployment operations that include build, install, ship, and update. We establish formal properties of the LTS, including the fact that if a component is shipped with a certain version dependency, then at run time that dependency must be satisfied with a compatible version. Our treatment of deployment is both platform- and vendor-independent, and we show how it models the core mechanisms of the industrial-strength deployment frameworks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "component; deployment; version", } @Article{Liu:2006:II, author = "Jed Liu and Aaron Kimball and Andrew C. Myers", title = "Interruptible iterators", journal = j-SIGPLAN, volume = "41", number = "1", pages = "283--294", month = jan, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1111037.1111063", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:39:41 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper introduces interruptible iterators, a language feature that makes expressive iteration abstractions much easier to implement. Iteration abstractions are valuable for software design, as shown by their frequent use in well-designed data structure libraries such as the Java Collections Framework. While Java iterators support iteration abstraction well from the standpoint of client code, they are awkward to implement correctly and efficiently, especially if the iterator needs to support imperative update of the underlying collection, such as removing the current element. Some languages, such as CLU and C\# 2.0, support iteration through a limited coroutine mechanism, but these mechanisms do not support imperative updates. Interruptible iterators are more powerful coroutines in which the loop body is able to interrupt the iterator with requests to perform updates. Interrupts are similar to exceptions, but propagate differently and have resumption semantics. Interruptible iterators have been implemented as part of the JMatch programming language, an extended version of Java. A JMatch reimplementation of the Java Collections Framework shows that implementations can be made substantially shorter and simpler; performance results show that this language mechanism can also be implemented efficiently.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "coroutine; exception; Java; JMatch; logic programming", } @Article{Maebe:2006:JSBa, author = "Jonas Maebe and Dries Buytaert and Lieven Eeckhout and Koen {De Bosschere}", title = "{Javana}: a system for building customized {Java} program analysis tools", journal = j-SIGPLAN, volume = "41", number = "10", pages = "153--168", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167487", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Understanding the behavior of applications running on high-level language virtual machines, as is the case in Java, is non-trivial because of the tight entanglement at the lowest execution level between the application and the virtual machine. This paper proposes Javana, a system for building Java program analysis tools. Javana provides an easy-to-use instrumentation infrastructure that allows for building customized profiling tools very quickly. Javana runs a dynamic binary instrumentation tool underneath the virtual machine. The virtual machine communicates with the instrumentation layer through an event handling mechanism for building a vertical map that links low-level native instruction pointers and memory addresses to high-level language concepts such as objects, methods, threads, lines of code, etc. The dynamic binary instrumentation tool then intercepts all memory accesses and instructions executed and provides the Javana end user with high-level language information for all memory accesses and natively executed instructions. We demonstrate the power of Javana through a number of applications: memory address tracing, vertical cache simulation and object lifetime computation. For each of these applications, the instrumentation specification requires only a small number of lines of code. Developing similarly powerful profiling tools within a virtual machine (as done in current practice) is both time-consuming and error-prone; in addition, the accuracy of the obtained profiling results might be questionable as we show in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspect-oriented instrumentation; customized program analysis tool; Java", } @Book{Mahemoff:2006:ADP, author = "Michael Mahemoff", title = "{Ajax} Design Patterns", publisher = pub-ORA, address = pub-ORA:adr, pages = "352 (est.)", year = "2006", ISBN = "0-596-10180-5", ISBN-13 = "978-0-596-10180-0", LCCN = "????", bibdate = "Sat Jun 17 20:11:31 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", price = "EUR 38.00", acknowledgement = ack-nhfb, } @Article{Markov:2006:IWD, author = "Zdravko Markov and Ingrid Russell", title = "An introduction to the {WEKA} data mining system", journal = j-SIGCSE, volume = "38", number = "3", pages = "367--368", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140127", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This is a proposal for a half day tutorial on Weka, an open source Data Mining software package written in Java and available from www.cs.waikato.ac.nz/~ml/weka/index.html. The goal of the tutorial is to introduce faculty to the package and to the pedagogical possibilities for its use in the undergraduate computer science and engineering curricula. The Weka system provides a rich set of powerful Machine Learning algorithms for Data Mining tasks, some not found in commercial data mining systems. These include basic statistics and visualization tools, as well as tools for pre-processing, classification, and clustering, all available through an easy to use graphical user interface.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Markow:2006:CST, author = "Tanya Markow and Eugene Ressler and Jean Blair", title = "Catch that speeding turtle: latching onto fun graphics in {CS1}", journal = j-SIGADA-LETTERS, volume = "26", number = "3", pages = "29--34", month = dec, year = "2006", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1185642.1185648", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:16:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Graphics are a great way to keep students motivated early in a computer science program. This paper introduces a simple Ada graphics package that simultaneously meets two goals: it provides a easy to understand graphics package that leads to enjoyable projects in CS1, and it is an appropriate tool for teaching fundamental computer science concepts to beginning programmers. The package is an Ada implementation and extension of a Java TurtleGraphics package used at a number of universities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Ada; AdaGraph; CS1; graphics; GtkAda; logo; spider; TurtleGraphics", } @Book{Marrs:2006:JWP, author = "Tom Marrs and Scott Davis", title = "{JBoss} at work: a practical guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvi + 287", year = "2006", ISBN = "0-596-00734-5", ISBN-13 = "978-0-596-00734-8", LCCN = "TK5105.8885.J43; TK5105.8885.J43 M37 2006eb", bibdate = "Tue Aug 5 17:43:38 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007348", acknowledgement = ack-nhfb, subject = "JBoss; Java (Computer program language); Application software; Development", } @Book{McLaughlin:2006:HRA, author = "Brett McLaughlin", title = "Head rush {Ajax}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxxi + 413", year = "2006", ISBN = "0-596-10225-9", ISBN-13 = "978-0-596-10225-8", LCCN = "QA76.73.J39 M35 2006eb; QA76.73.J39", bibdate = "Tue Aug 5 17:52:39 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596102258", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); Asynchronous transfer mode; Web site development; World Wide Web", tableofcontents = "Intro \\ Using Ajax : web applications for a new generation \\ Speaking the language : making Ajax requests \\ She blinded me with asynchrony : Asynchronous apps \\ Web page forestry : the document object model \\ A second helping : developing DOM applications \\ Saying more with post : Post requests \\ More than words can say : XML requests and responses \\ A fight to the finish : JSON vs. XML \\ A few special bonus gifts : extras \\ It's time for a little bonus credit : Ajax and DOM utilities", } @Book{McLaughlin:2006:JX, author = "Brett McLaughlin", title = "{Java} and {XML}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "xii + 465", year = "2006", ISBN = "0-596-10149-X", ISBN-13 = "978-0-596-10149-7", LCCN = "QA76.73.J38 M39 2006eb; QA76.73.J38; QA76.73.J38 M39 2006", bibdate = "Tue Aug 5 17:50:38 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101497", acknowledgement = ack-nhfb, remark = "Previous edition 2001.", subject = "XML (Document markup language); Java (Computer program language); Web site development", xxnote = "Check year: 2006 or 2007??", } @Article{Menon:2006:VSP, author = "Vijay S. Menon and Neal Glew and Brian R. Murphy and Andrew McCreight and Tatiana Shpeisman and Ali-Reza Adl-Tabatabai and Leaf Petersen", title = "A verifiable {SSA} program representation for aggressive compiler optimization", journal = j-SIGPLAN, volume = "41", number = "1", pages = "397--408", month = jan, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1111037.1111072", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:39:41 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present a verifiable low-level program representation to embed, propagate, and preserve safety information in high performance compilers for safe languages such as Java and C\#. Our representation precisely encodes safety information via static single-assignment (SSA) [11, 3] proof variables that are first-class constructs in the program. We argue that our representation allows a compiler to both (1) express aggressively optimized machine-independent code and (2) leverage existing compiler infrastructure to preserve safety information during optimization. We demonstrate that this approach supports standard compiler optimizations, requires minimal changes to the implementation of those optimizations, and does not artificially impede those optimizations to preserve safety. We also describe a simple type system that formalizes type safety in an SSA-style control-flow graph program representation. Through the types of proof variables, our system enables compositional verification of memory safety in optimized code. Finally, we discuss experiences integrating this representation into the machine-independent global optimizer of STARJIT, a high-performance just-in-time compiler that performs aggressive control-flow, data-flow, and algebraic optimizations and is competitive with top production systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "check elimination; intermediate representations; proof variables; safety dependences; SSA formalization; type systems; typeability preservation; typed intermediate languages", } @Article{Menth:2006:TPP, author = "Michael Menth and Robert Henjes and Christian Zepfel and Sebastian Gehrsitz", title = "Throughput performance of popular {JMS} servers", journal = j-SIGMETRICS, volume = "34", number = "1", pages = "367--368", month = jun, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1145/1140277.1140323", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:21:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Java Messaging Service (JMS) facilitates communication among distributed software components according to the publish/subscribe principle. If the subscribers install filter rules on the JMS server, JMS can be used as a message routing platform, but it is not clear whether its message throughput is sufficiently high to support large-scale systems. In this paper, we investigate the capacity of three high performance JMS server implementations: FioranoMQ, SunMQ, and WebsphereMQ. In contrast to other studies, we focus on the message throughput in the presence of filters and show that filtering reduces the performance significantly. We present models for the message processing time of each server and validate them by measurement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "java messaging service; publish/subscribe; server performance", } @Article{Mohapatra:2006:DDS, author = "Durga P. Mohapatra and Rajeev Kumar and Rajib Mall and D. S. Kumar and Mayank Bhasin", title = "Distributed dynamic slicing of {Java} programs", journal = j-J-SYST-SOFTW, volume = "79", number = "12", pages = "1661--1678", month = dec, year = "2006", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Sep 7 07:27:02 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Book{Monson-Haefel:2006:EJ, author = "Richard Monson-Haefel and Bill Burke", title = "{Enterprise JavaBeans}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Fifth", pages = "760 (est.)", year = "2006", ISBN = "0-596-00978-X", ISBN-13 = "978-0-596-00978-6", LCCN = "????", bibdate = "Mon Jun 12 08:18:49 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.oreilly.com/catalog/entjbeans5/", acknowledgement = ack-nhfb, subject = "Java (Computer program language); JavaBeans", } @Article{Moon:2006:TMS, author = "Sewon Moon and Byeong-Mo Chang", title = "A thread monitoring system for multithreaded {Java} programs", journal = j-SIGPLAN, volume = "41", number = "5", pages = "21--29", month = may, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Aug 23 06:00:51 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Moore:2006:IAO, author = "J. Strother Moore", title = "Inductive assertions and operational semantics", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "8", number = "4--5", pages = "359--371", month = aug, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-005-0180-2", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Wed Jul 9 18:12:22 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1433-2779&volume=8&issue=4; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1433-2779&volume=8&issue=4&spage=359", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", keywords = "JVM; Software verification; Theorem proving; Verification condition", } @Article{Murphy:2006:HJS, author = "Gail C. Murphy and Mik Kersten and Leah Findlater", title = "How Are {Java} Software Developers Using the {Eclipse IDE}?", journal = j-IEEE-SOFTWARE, volume = "23", number = "4", pages = "76--83", month = jul # "\slash " # aug, year = "2006", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2006.105", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Thu Jul 3 12:17:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Muthukumar:2006:YSG, author = "R. M. Muthukumar and D. Janakiram", title = "{Yama}: a Scalable Generational Garbage Collector for {Java} in Multiprocessor Systems", journal = j-IEEE-TRANS-PAR-DIST-SYS, volume = "17", number = "2", pages = "148--159", month = feb, year = "2006", CODEN = "ITDSEO", DOI = "https://doi.org/10.1109/TPDS.2006.28", ISSN = "1045-9219 (print), 1558-2183 (electronic)", ISSN-L = "1045-9219", bibdate = "Thu Jul 3 14:26:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Parallel and Distributed Systems", journal-URL = "http://www.computer.org/tpds/archives.htm", } @Book{Naftalin:2006:JGC, author = "Maurice Naftalin and Philip Wadler", title = "{Java} Generics and Collections", publisher = pub-ORA, address = pub-ORA:adr, pages = "294 (est.)", year = "2006", ISBN = "0-596-52775-6", ISBN-13 = "978-0-596-52775-4", LCCN = "????", bibdate = "Mon Oct 30 16:47:51 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$34.99", acknowledgement = ack-nhfb, } @Article{Nagpurkar:2006:PBV, author = "Priya Nagpurkar and Chandra Krintz", title = "Phase-based visualization and analysis of {Java} programs", journal = j-SCI-COMPUT-PROGRAM, volume = "59", number = "1--2", pages = "64--81", month = jan, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:53 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Naik:2006:ESR, author = "Mayur Naik and Alex Aiken and John Whaley", title = "Effective static race detection for {Java}", journal = j-SIGPLAN, volume = "41", number = "6", pages = "308--319", month = jun, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 13 17:31:46 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Nakaike:2006:PBG, author = "Takuya Nakaike and Tatsushi Inagaki and Hideaki Komatsu and Toshio Nakatani", title = "Profile-based global live-range splitting", journal = j-SIGPLAN, volume = "41", number = "6", pages = "216--227", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133981.1134007", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Live-range splitting is a technique to split the live range of a given variable into multiple subranges, each of which can be assigned to a different register or spilled out to memory in order to improve results of coloring register allocation. Previous techniques, such as aggressive live-range splitting, tend to produce extra spill code in the frequently executed (called hot) regions of the code, since they don't distinguish hot regions from others. We propose a new live-range splitting algorithm, which can reduce the amount of spill code in hot regions by coalescing the live ranges based on profile information after splitting the live ranges at every join and fork point in the control-flow graph. Our experimental results have shown that our new algorithm improved the performance of SPECjvm98 by up to 33\% over aggressive live-range splitting and 7\% over the base coloring algorithm without any live-range splitting.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "graph coloring; live-range splitting; register allocation", } @Article{Nanda:2006:ISM, author = "Mangala Gowri Nanda and S. Ramesh", title = "Interprocedural slicing of multithreaded programs with applications to {Java}", journal = j-TOPLAS, volume = "28", number = "6", pages = "1088--1144", month = nov, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1186632.1186636", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Sat Apr 14 11:13:21 MDT 2007", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Nystrom:2006:JNIa, author = "Nathaniel Nystrom and Xin Qi and Andrew C. Myers", title = "{J\&}: nested intersection for scalable software composition", journal = j-SIGPLAN, volume = "41", number = "10", pages = "21--36", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167476", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper introduces a programming language that makes it convenient to compose large software systems, combining their features in a modular way. J\& supports nested intersection, building on earlier work on nested inheritance in the language Jx. Nested inheritance permits modular, type-safe extension of a package (including nested packages and classes), while preserving existing type relationships. Nested intersection enables composition and extension of two or more packages, combining their types and behavior while resolving conflicts with a relatively small amount of code. The utility of J\& is demonstrated by using it to construct two composable, extensible frameworks: a compiler framework for Java, and a peer-to-peer networking system. Both frameworks support composition of extensions. For example, two compilers adding different, domain-specific features to Java can be composed to obtain a compiler for a language that supports both sets of features.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compilers; nested inheritance; nested intersection", } @Article{Ogasawara:2006:EED, author = "Takeshi Ogasawara and Hideaki Komatsu and Toshio Nakatani", title = "{EDO}: {Exception-Directed Optimization} in {Java}", journal = j-TOPLAS, volume = "28", number = "1", pages = "70--105", month = jan, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1111596.1111598", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Jan 24 05:55:31 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Optimizing exception handling is critical for programs that frequently throw exceptions. We observed that there are many such exception-intensive programs written in Java. There are two commonly used exception handling techniques, stack unwinding and stack cutting. Stack unwinding optimizes the normal path by leaving the exception handling path unoptimized, while stack cutting optimizes the exception handling path by adding extra work to the normal path. However, there has been no single exception handling technique to optimize the exception handling path without incurring any overhead to the normal path.We propose a new technique called {\em Exception-Directed Optimization\/} (EDO) that optimizes exception-intensive programs without slowing down exception-minimal programs. It is a feedback-directed dynamic optimization consisting of three steps: exception path profiling, exception path inlining, and throw elimination. Exception path profiling attempts to detect hot exception paths. Exception path inlining embeds every hot exception path into the corresponding catching method. Throw elimination replaces a throw with a branch to the corresponding handler. We implemented EDO in IBM's production Just-in-Time compiler and made several experiments. In summary, it improved the performance of exception-intensive programs by up to 18.3\% without decreasing the performance of exception-minimal programs for SPECjvm98. We also found an opportunity for performance improvement using EDO in the startup of a Java application server.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Ogata:2006:RCIa, author = "Kazunori Ogata and Tamiya Onodera and Kiyokuni Kawachiya and Hideaki Komatsu and Toshio Nakatani", title = "Replay compilation: improving debuggability of a just-in-time compiler", journal = j-SIGPLAN, volume = "41", number = "10", pages = "241--252", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167493", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The performance of Java has been tremendously improved by the advance of Just-in-Time (JIT) compilation technologies. However, debugging such a dynamic compiler is much harder than a static compiler. Recompiling the problematic method to produce a diagnostic output does not necessarily work as expected, because the compilation of a method depends on runtime information at the time of compilation. In this paper, we propose a new approach, called replay JIT compilation, which can reproduce the same compilation remotely by using two compilers, the state-saving compiler and the replaying compiler. The state-saving compiler is used in a normal run, and, while compiling a method, records into a log all of the input for the compiler. The replaying compiler is then used in a debugging run with the system dump, to recompile a method with the options for diagnostic output. We reduced the overhead to save the input by using the system dump and by categorizing the input based on how its value changes. In our experiment, the increase of the compilation time for saving the input was only 1\%, and the size of the additional memory needed for saving the input was only 10\% of the compiler-generated code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "debuggability; deterministic replay; dynamic optimization; Java; JIT compiler; problem determination; replay compilation", } @InProceedings{Oi:2006:IFH, author = "Hitoshi Oi", title = "Instruction folding in a hardware-translation based {Java Virtual Machine}", crossref = "ACM:2006:PCC", pages = "139--146", year = "2006", DOI = "https://doi.org/10.1145/1128022.1128041", bibdate = "Tue Jun 20 06:49:31 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Bytecode hardware-translation improves the performance of a Java Virtual Machine (JVM) with small hardware resource and complexity overhead. Instruction folding is a technique to further improve the performance of a JVM by reducing the redundancy in the stack-based instruction execution. However, the variable instruction length of the Java bytecode makes the folding logic complex. In this paper, we propose a folding scheme with reduced hardware complexity and evaluate its performance. For seven benchmark cases, the proposed scheme folded 6.6\% to 37.1\% of the bytecodes which correspond to 84.2\% to 102\% of the PicoJava-II's performance.", acknowledgement = ack-nhfb, } @Article{Paul:2006:CJN, author = "Nathanael Paul and David Evans", title = "Comparing {Java} and {.NET} security: Lessons learned and missed", journal = j-COMPUT-SECUR, volume = "25", number = "5", pages = "338--350", month = jul, year = "2006", CODEN = "CPSEDU", ISSN = "0167-4048 (print), 1872-6208 (electronic)", ISSN-L = "0167-4048", bibdate = "Mon Sep 23 09:46:03 MDT 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/computsecur2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "https://www.sciencedirect.com/science/article/pii/S0167404806000290", acknowledgement = ack-nhfb, fjournal = "Computers \& Security", journal-URL = "http://www.sciencedirect.com/science/journal/01674048", } @Book{Perry:2006:AH, author = "Bruce W. Perry", title = "{Ajax} hacks", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxi + 414", year = "2006", ISBN = "0-596-10169-4", ISBN-13 = "978-0-596-10169-5", LCCN = "QA76.73.J39 P47 2006eb; QA76.73.J39", bibdate = "Tue Aug 5 17:51:25 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101695", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); Web site development", } @Article{Peterson:2006:OCI, author = "Laurence I. Peterson and Dale Benham", title = "Overview of the cyberTech-{ITEST} project: an initiative to attract and prepare under-represented students for tomorrow's careers in the computing sciences", journal = j-SIGCSE, volume = "38", number = "1", pages = "453--455", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121480", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes an NSF-funded initiative involving 600 underrepresented high school students and 60 teachers designed to introduce underrepresented students to the numerous and varied career opportunities in the computing sciences, prepare them to succeed in college degree programs, and prepare their teachers to be effective in the computer science class room. The initiative has five components: (1) CyberTech I (Principles of Computing): An online introductory course for second-semester sophomores, (2) CyberTech II: A twenty day on-campus intense summer programming experience between the sophomore and junior year, (3) CT Games: A junior year video game programming experience to apply the programming knowledge gaining in CyberTech II, (4) AP Computer Science (using Java 5 as the programming language) taken during the senior year, and (5) training workshops for teachers to prepare them to teach computer programming. The overarching goal is to prepare students for a college-level degree program in the computing sciences by having them successfully complete the AP Computer Science course and exam while teaching the soft skills, such as team work, oral communication and problem solving necessary in a professional career. Additionally, role models from various industry sectors are utilized to introduce students to the exciting career opportunities in the computing sciences.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Petro:2006:RMJ, author = "Andrew Petro", title = "Review of {{\booktitle{More Java Gems}} by Dwight Deugo, Cambridge University Press, 2000, ISBN: 0-521-77477-2}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "42--42", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127904", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pickett:2006:SSF, author = "Christopher J. F. Pickett and Clark Verbrugge", title = "{SableSpMT}: a software framework for analysing speculative multithreading in {Java}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "59--66", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108809", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/multithreading.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Speculative multithreading (SpMT) is a promising optimisation technique for achieving faster execution of sequential programs on multiprocessor hardware. Analysis of and data acquisition from such systems is however difficult and complex, and is typically limited to a specific hardware design and simulation environment. We have implemented a flexible, software-based speculative multithreading architecture within the context of a full-featured Java virtual machine. We consider the entire Java language and provide a complete set of support features for speculative execution, including return value prediction. Using our system we are able to generate extensive dynamic analysis information, analyse the effects of runtime feedback, and determine the impact of incorporating static, offline information. Our approach allows for accurate analysis of Java SpMT on existing, commodity multiprocessor hardware, and provides a vehicle for further experimentation with speculative approaches and optimisations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Potanin:2006:GOGa, author = "Alex Potanin and James Noble and Dave Clarke and Robert Biddle", title = "Generic ownership for generic {Java}", journal = j-SIGPLAN, volume = "41", number = "10", pages = "311--324", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167500", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Ownership types enforce encapsulation in object-oriented programs by ensuring that objects cannot be leaked beyond object(s) that own them. Existing ownership programming languages either do not support parametric polymorphism (type genericity) or attempt to add it on top of ownership restrictions. Generic Ownership provides per-object ownership on top of a sound generic imperative language. The resulting system not only provides ownership guarantees comparable to established systems, but also requires few additional language mechanisms due to full reuse of parametric polymorphism. We formalise the core of Generic Ownership, highlighting that only restriction of this calls and owner subtype preservation are required to achieve deep ownership. Finally we describe how Ownership Generic Java (OGJ) was implemented as a minimal extension to Generic Java in the hope of bringing ownership types into mainstream programming.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "generics; Java; ownership; type systems", } @Article{Radenski:2006:PFL, author = "Atanas Radenski", title = "``{Python} first'': a lab-based digital introduction to computer science", journal = j-SIGCSE, volume = "38", number = "3", pages = "197--201", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140177", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The emphasis on Java and other commercial languages in CS1 has established the perception of computer science as a dry and technically difficult discipline among undecided students who are still seeking careers. This may not be a big problem during an enrolment boom, but in times of decreased enrolment such negative perception may have a devastating effect on computer science programs and therefore should not be ignored. We have made our CS1 course offerings more attractive to students (1) by introducing an easy to learn yet effective scripting language --- Python, (2) by making all course resources available in a comprehensive online study pack, and (3) by offering an extensive set of detailed and easy to follow self-guided labs. Our custom-designed online study pack comprises a wealth of new, original learning modules: extensive e-texts, detailed self-guided labs, numerous sample programs, quizzes, and slides. Our recent student survey demonstrates that students like and prefer Python as a first language and that they also perceive the online study pack as very beneficial. Our ``Python First'' course, originally required for computer science majors, has been so well received that it has been recently approved as a general education science elective, thus opening new recruitment opportunities for the computer science major. Our ``Python First'' digital pack is published online at http://studypack.com.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Raymond:2006:PQR, author = "Scott Raymond and Sergio Pereira", title = "Prototype quick reference", publisher = pub-ORA, address = pub-ORA:adr, year = "2006", ISBN = "0-596-51018-7", ISBN-13 = "978-0-596-51018-3", LCCN = "QA76.73.J38 R39 2006eb; QA76.73.J38", bibdate = "Tue Aug 5 17:53:51 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596510183", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); Web sites; Design", } @Article{Reges:2006:BBC, author = "Stuart Reges", title = "Back to basics in {CS1} and {CS2}", journal = j-SIGCSE, volume = "38", number = "1", pages = "293--297", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121432", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes a significant redesign of the introductory courses at the University of Washington that has led to increased enrollments, increased student satisfaction and an increase in the number of women admitted to the CS major. The new courses are still taught in Java, but they represent a return to the basics that were emphasized in the pre-Java era. The biggest changes have occurred in the CS1 course where we have replaced an ``objects early'' curriculum with a more traditional procedural approach using static methods in Java. The new CS1 course emphasizes problem solving, procedural decomposition and mastery of basic skills (e.g., loops, conditionals and arrays). The new CS2 course emphasizes data structures, linked lists, binary trees and recursion.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ren:2006:IFC, author = "Xiaoxia Ren and O. C. Chesley and B. G. Ryder", title = "Identifying Failure Causes in {Java} Programs: An Application of Change Impact Analysis", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "32", number = "9", pages = "718--732", month = sep, year = "2006", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2006.90", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1707669", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Book{Richardson:2006:PAD, author = "Chris Richardson", title = "{POJOs} in Action: Developing Enterprise Applications with Lightweight Frameworks", publisher = pub-MANNING, address = pub-MANNING:adr, pages = "xxxii + 560", year = "2006", ISBN = "1-932394-58-3 (paperback)", ISBN-13 = "978-1-932394-58-0 (paperback)", LCCN = "????", bibdate = "Mon Feb 27 12:02:22 MST 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", price = "US\$44.95 (paperback), US\$22.50 (electronic)", URL = "http://java.sun.com/developer/Books/javaprogramming/pojos/; http://www.manning.com/books/crichardson", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Computer software; Development; Object-oriented programming (Computer science)", } @Article{Richardson:2006:UEJ, author = "Chris Richardson", title = "Untangling {Enterprise Java}", journal = j-QUEUE, volume = "4", number = "5", pages = "36--44", month = jun, year = "2006", CODEN = "AQCUAE", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Wed Aug 23 12:29:00 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Roberts:2006:AJT, author = "Eric Roberts and Kim Bruce and James H. {Cross II} and Robb Cutler and Scott Grissom and Karl Klee and Susan Rodger and Fran Trees and Ian Utting and Frank Yellin", title = "The {ACM Java Task Force}: final report", journal = j-SIGCSE, volume = "38", number = "1", pages = "131--132", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121384", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberts:2006:ITS, author = "Eric Roberts", title = "An interactive tutorial system for {Java}", journal = j-SIGCSE, volume = "38", number = "1", pages = "334--338", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121447", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "As part of the documentation for its library packages, the Java Task Force (JTF)developed an online tutorial system that enables teachers and students to explore the resources provided by the Task Force in a highly interactive style. The individual pages that make up the tutorial often include demonstration programs that the reader can experiment with while remaining on the same web page as the explanatory text. Although the original motivation for developing that tutorial system was to document the JTF packages themselves, the structure is general enough for teachers to design their own tutorials and interactive demonstrations. This paper describes the structure of that tutorial system and illustrates its use. In addition, the paper describes some work-in-progress that will make it possible to create interactive lecture demonstrations from PowerPointTM slides.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rossling:2006:TPI, author = "Guido R{\"o}{\ss}ling", title = "{Translator}: a package for internationalization for {Java}-based applications and {GUIs}", journal = j-SIGCSE, volume = "38", number = "3", pages = "312--312", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140217", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rozman:2006:QQA, author = "Ivan Rozman and Matjaz B. Juric and Izidor Golob and Marjan Hericko", title = "Qualitative and quantitative analysis and comparison of {Java} distributed architectures", journal = j-SPE, volume = "36", number = "14", pages = "1543--1562", day = "25", month = nov, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.731", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:13 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "22 Jun 2006", } @Article{Russell:2006:ESRa, author = "Kenneth Russell and David Detlefs", title = "Eliminating synchronization-related atomic operations with biased locking and bulk rebiasing", journal = j-SIGPLAN, volume = "41", number = "10", pages = "263--272", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167515.1167496", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Java{\TM} programming language contains built-in synchronization primitives for use in constructing multithreaded programs. Efficient implementation of these synchronization primitives is necessary in order to achieve high performance. Recent research [9, 12, 10, 3, 7] has focused on the run-time elimination of the atomic operations required to implement object monitor synchronization primitives. This paper describes a novel technique called store-free biased locking which eliminates all synchronization-related atomic operations on uncontended object monitors. The technique supports the bulk transfer of object ownership from one thread to another, and the selective disabling of the optimization where unprofitable, using epoch-based bulk rebiasing and revocation. It has been implemented in the production version of the Java HotSpot{\TM}VM and has yielded significant performance improvements on a range of benchmarks and applications. The technique is applicable to any virtual machine-based programming language implementation with mostly block-structured locking primitives.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "atomic; bias; Java; lock; monitor; optimization; rebias; reservation; revoke; synchronization", } @Article{Sally:2006:EJG, author = "Gene Sally", title = "Embedded {Java} with {GCJ}", journal = j-LINUX-J, volume = "2006", number = "145", pages = "??--??", month = may, year = "2006", CODEN = "LIJOFX", ISSN = "1075-3583 (print), 1938-3827 (electronic)", ISSN-L = "1075-3583", bibdate = "Wed Aug 23 06:09:27 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Linux Journal", journal-URL = "http://portal.acm.org/citation.cfm?id=J508", } @Book{Sam-Bodden:2006:BPN, author = "Brian Sam-Bodden", title = "Beginning {POJOs}: from novice to professional", publisher = pub-APRESS, address = pub-APRESS:adr, year = "2006", ISBN = "1-59059-596-3 (paperback)", ISBN-13 = "978-1-59059-596-1 (paperback)", LCCN = "QA76.73.J38 S36 2006eb; QA76.73 .J38 INTERNET", bibdate = "Fri Jun 20 12:45:48 MDT 2008", bibsource = "clavis.ucalgary.ca:2200/UNICORN; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ezproxy.lib.ucalgary.ca:2048/login?url=http://library.books24x7.com/library.asp?bookid=14653", acknowledgement = ack-nhfb, remark = "Title from title screen", subject = "Java (Computer program language); Computer software; Development; Object-oriented programming (Computer science)", } @Article{Sattar:2006:DSM, author = "Abdul Sattar and Torben Lorenzen", title = "Develop a shopping mart {Web} application", journal = j-SIGCSE, volume = "38", number = "4", pages = "68--70", month = dec, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1189136.1189173", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:31 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse38.html#SattarL06; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2006.bib", abstract = "The authors' junior/senior CS class at Bridgewater State College implemented a web site similar to the shopping mart found at amazon.com. The application was broken into four assignments which included an email address verifier written in Java, a 5 page GUI front-end to the web site written in Hypertext Markup Language (HTML), Java Script and Cascading Style Sheet (CSS), a rudimentary web browser, and a module implementing server-side functionality to update an Access database.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Schroeder:2006:VTO, author = "Will Schroeder and Ken Martin and Bill Lorensen", title = "The visualization toolkit: an object-oriented approach to {3D} graphics [visualize data in {3D} --- medical, engineering or scientific; build your own applications with {C}++, Tcl, Java or Python; includes source code for {VTK} (supports {UNIX}, Windows and Mac)]", publisher = "Kitware", address = "Clifton Park, NY", edition = "Fourth", pages = "xvi + 512", year = "2006", ISBN = "1-930934-19-X", ISBN-13 = "978-1-930934-19-1", LCCN = "????", bibdate = "Thu Apr 16 09:20:47 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", acknowledgement = ack-nhfb, subject = "Visualisering; Datamaskinassistert presentasjon; Python", } @Article{Shalev:2006:PLS, author = "Ori Shalev and Nir Shavit", title = "Predictive log-synchronization", journal = j-OPER-SYS-REV, volume = "40", number = "4", pages = "305--315", month = oct, year = "2006", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1218063.1217965", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:14:10 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper proposes predictive log-synchronization, an alternative paradigm to the software transactional memory approach for simplifying the design of concurrent data structures. Predictive log-synchronization simplifies concurrent programming and program verification by requiring programmers to write only specialized sequential code. This sequential code is then automatically transformed into a non-blocking concurrent program in which threads coordinate all data structure operations via a shared lock-controlled log. The non-blocking progress property is achieved by having threads that fail to acquire the lock predict the outcome of their operations by reading the log and state and computing the effect of these operations without modifying the actual data structure. Log-synchronization is founded on the belief (at this point unsubstantiated by statistical data) that in many concurrent data structures used in real-world applications, the ratio of high level operations that modify the structure to ones that simply read it, greatly favors read-only operations, and what's more, that many natural data structures have inherent sequential bottlenecks limiting the concurrency among operations that modify the structure. It follows that delegating all data structure modifications to a single lock-controlled thread at a time will not significantly harm the throughput of modifying operations. Moreover, as we show, it can boost read-only throughput by significantly reducing the overhead of coordination among concurrent operations, and provides a way to simplify concurrent data structures. Initial experimental testing using a Java-based implementation of predictive log-synchronization showed that a log-synchronized concurrent red-black tree is up to five times faster than a simple lock-based one. This paper presents our current understanding of the advantages, drawbacks, and scope of predictive log-synchronization.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "concurrent; monitor; prediction; synchronization", } @Article{Sharp:2006:SAO, author = "M. Sharp and A. Rountev", title = "Static Analysis of Object References in {RMI}-Based {Java} Software", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "32", number = "9", pages = "664--681", month = sep, year = "2006", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2006.93", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1707666", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Spivak:2006:SPT, author = "Michal Spivak and Sivan Toledo", title = "Storing a persistent transactional object heap on flash memory", journal = j-SIGPLAN, volume = "41", number = "7", pages = "22--33", month = jul, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1134650.1134655", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:44:55 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present the design and implementation of TinyStore, a persistent, transactional, garbage-collected memory-management system, designed to be called from the Java virtual machine of a Java Card. The system is designed for flash-based implementations of Java Card, a variant of the Java platform for smart cards. In the Java Card platform, objects are persistent by default. The platform supports transactions: a sequence of accesses to objects can be explicitly declared to constitute a transaction. TinyStore supports explicit transactions and atomically executes individual accesses that are not part of transactions; it also supports garbage collection, even on systems with a small constant amount of ram. TinyStore uses a novel approach and specialized data structures to efficiently manage flash memory. We demonstrate its effectiveness by comparing it to a traditional eeprom-based memory management system for Java Cards.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "flash; Java Card; nor flash; persistent heaps; persistent object stores; smart cards; transactions", } @Article{Spoonhower:2006:ESP, author = "Daniel Spoonhower and Joshua Auerbach and David F. Bacon and Perry Cheng and David Grove", title = "{Eventrons}: a safe programming construct for high-frequency hard real-time applications", journal = j-SIGPLAN, volume = "41", number = "6", pages = "283--294", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133981.1134015", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "While real-time garbage collection has achieved worst-case latencies on the order of a millisecond, this technology is approaching its practical limits. For tasks requiring extremely low latency, and especially periodic tasks with frequencies above 1 KHz, Java programmers must currently resort to the NoHeapRealtimeThread construct of the Real-Time Specification for Java. This technique requires expensive run-time checks, can result in unpredictable low-level exceptions, and inhibits communication with the rest of the garbage-collected application. We present Eventrons, a programming construct that can arbitrarily preempt the garbage collector, yet guarantees safety and allows its data to be visible to the garbage-collected heap. Eventrons are a strict subset of Java, and require no run-time memory access checks. Safety is enforced using a data-sensitive analysis and simple run-time support with extremely low overhead. We have implemented Eventrons in IBM's J9 Java virtual machine, and present experimental results in which we ran Eventrons at frequencies up to 22 KHz (a 45 $ \mu $ s period). Across 10 million periods, 99.997\% of the executions ran within 10 $ \mu $ ss of their deadline, compared to 99.999\% of the executions of the equivalent program written in C.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "allocation; real-time; scheduling", } @Article{Sridharan:2006:RBC, author = "Manu Sridharan and Rastislav Bod{\'\i}k", title = "Refinement-based context-sensitive points-to analysis for {Java}", journal = j-SIGPLAN, volume = "41", number = "6", pages = "387--400", month = jun, year = "2006", CODEN = "SINODQ", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 13 17:31:46 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Su:2006:ECI, author = "Zhendong Su and Gary Wassermann", title = "The essence of command injection attacks in {Web} applications", journal = j-SIGPLAN, volume = "41", number = "1", pages = "372--382", month = jan, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1111037.1111070", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:39:41 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Web applications typically interact with a back-end database to retrieve persistent data and then present the data to the user as dynamically generated output, such as HTML web pages. However, this interaction is commonly done through a low-level API by dynamically constructing query strings within a general-purpose programming language, such as Java. This low-level interaction is ad hoc because it does not take into account the structure of the output language. Accordingly, user inputs are treated as isolated lexical entities which, if not properly sanitized, can cause the web application to generate unintended output. This is called a command injection attack, which poses a serious threat to web application security. This paper presents the first formal definition of command injection attacks in the context of web applications, and gives a sound and complete algorithm for preventing them based on context-free grammars and compiler parsing techniques. Our key observation is that, for an attack to succeed, the input that gets propagated into the database query or the output document must change the intended syntactic structure of the query or document. Our definition and algorithm are general and apply to many forms of command injection attacks. We validate our approach with SqlCheckS, an implementation for the setting of SQL command injection attacks. We evaluated SqlCheckS on real-world web applications with systematically compiled real-world attack data as input. SqlCheckS produced no false positives or false negatives, incurred low runtime overhead, and applied straightforwardly to web applications written in different languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "command injection attacks; grammars; parsing; runtime verification; web applications", } @Book{Subramaniam:2006:PAD, author = "Venkat Subramaniam and Andy Hunt", title = "Practices of an {Agile} Developer: {Working} in the Real World", publisher = "Pragmatic Bookshelf", address = "Raleigh, NC, USA", pages = "xiv + 189", year = "2006", ISBN = "0-9745140-8-X", ISBN-13 = "978-0-9745140-8-6", LCCN = "QA76.76.D47", bibdate = "Mon Mar 27 09:01:10 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$29.95; CAN \$41.95; UK\pounds20.95", acknowledgement = ack-nhfb, keywords = "Java", } @Article{Suganuma:2006:RBC, author = "Toshio Suganuma and Toshiaki Yasue and Toshio Nakatani", title = "A region-based compilation technique for dynamic compilers", journal = j-TOPLAS, volume = "28", number = "1", pages = "134--174", month = jan, year = "2006", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1111596.1111600", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Jan 24 05:55:31 MST 2006", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Method inlining and data flow analysis are two major optimization components for effective program transformations, but they often suffer from the existence of rarely or never executed code contained in the target method. One major problem lies in the assumption that the compilation unit is partitioned at method boundaries. This article describes the design and implementation of a region-based compilation technique in our dynamic optimization framework, in which the compiled regions are selected as code portions without rarely executed code. The key parts of this technique are the region selection, partial inlining, and region exit handling. For region selection, we employ both static heuristics and dynamic profiles to identify and eliminate rare sections of code. The region selection process and method inlining decisions are interwoven, so that method inlining exposes other targets for region selection, while the region selection in the inline target conserves the inlining budget, allowing more method inlining to be performed. The inlining process can be performed for parts of a method, not just for the entire body of the method. When the program attempts to exit from a region boundary, we trigger recompilation and then use on-stack replacement to continue the execution from the corresponding entry point in the recompiled code. We have implemented these techniques in our Java JIT compiler, and conducted a comprehensive evaluation. The experimental results show that our region-based compilation approach achieves approximately 4\% performance improvement on average, while reducing the compilation overhead by 10\% to 30\%, in comparison to the traditional method-based compilation techniques.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Sweeney:2006:NMP, author = "Tim Sweeney", title = "The next mainstream programming language: a game developer's perspective", journal = j-SIGPLAN, volume = "41", number = "1", pages = "269--269", month = jan, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1111037.1111061", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:39:41 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Game developers have long been early adopters of new technologies. This is so because we are largely unburdened by legacy code: With each new hardware generation, we are free to rethink our software assumptions and develop new products using new tools and even new programming languages. As a result, games are fertile ground for applying academic advances in these areas. And never has our industry been in need of such advances as it is now! The scale and scope of game development has increased more than ten-fold over the past ten years, yet the underlying limitations of the mainstream C/C++/Java/C\# language family remain largely unaddressed. The talk begins with a high-level presentation of the game developer's world: the kinds of algorithms we employ on modern CPUs and GPUs, the difficulties of componentization and concurrency, and the challenges of writing very complex software with real-time performance requirements. The talk then outlines the ways that future programming languages could help us write better code, providing examples derived from experience writing games and software frameworks that support games. The major areas covered are abstraction facilities -- how we can use them to develop more extensible frameworks and components; practical opportunities for employing stronger typing to reduce run-time failures; and the need for pervasive concurrency support, both implicit and explicit, to effectively exploit the several forms of parallelism present in games and graphics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Book{Thau:2006:BJP, author = "Thau", title = "The book of {JavaScript}: a practical guide to interactive {Web} pages", publisher = pub-NO-STARCH, address = pub-NO-STARCH:adr, edition = "Second", pages = "xxx + 490", year = "2006", ISBN = "1-59327-106-9", ISBN-13 = "978-1-59327-106-0", LCCN = "QA76.73.J39 T37 2006eb; QA76.73.J39 T37 2007", bibdate = "Tue Aug 5 18:19:36 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9781593271060", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language); World Wide Web", } @Article{Utting:2006:PIT, author = "Ian Utting", title = "Problems in the initial teaching of programming using {Java}: the case for replacing {J2SE} with {J2ME}", journal = j-SIGCSE, volume = "38", number = "3", pages = "193--196", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140176", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In their analysis of the use of Java as a first teaching language, the ACM Java Task Force (JTF) identified a number of issues with the Java language and APIs which caused significant pedagogic problems. The focus of their work, and hence of their characterisation of the issues, was the Java ``Standard Edition'' (J2SE).This paper contends that the version of Java designed for programming small devices (Java 2 Micro Edition, J2ME) does not suffer from these problems identified by the JTF to the extent that the (more familiar) J2SE does, and suggests a number of other reasons why J2ME represents a good choice as a first programming language.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Vaziri:2006:ASC, author = "Mandana Vaziri and Frank Tip and Julian Dolby", title = "Associating synchronization constraints with data in an object-oriented language", journal = j-SIGPLAN, volume = "41", number = "1", pages = "334--345", month = jan, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1111037.1111067", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:39:41 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Concurrency-related bugs may happen when multiple threads access shared data and interleave in ways that do not correspond to any sequential execution. Their absence is not guaranteed by the traditional notion of 'data race' freedom. We present a new definition of data races in terms of 11 problematic interleaving scenarios, and prove that it is complete by showing that any execution not exhibiting these scenarios is serializable for a chosen set of locations. Our definition subsumes the traditional definition of a data race as well as high-level data races such as stale-value errors and inconsistent views. We also propose a language feature called atomic sets of locations, which lets programmers specify the existence of consistency properties between fields in objects, without specifying the properties themselves. We use static analysis to automatically infer those points in the code where synchronization is needed to avoid data races under our new definition. An important benefit of this approach is that, in general, far fewer annotations are required than is the case with existing approaches such as synchronized blocks or atomic sections. Our implementation successfully inferred the appropriate synchronization for a significant subset of Java's Standard Collections framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "concurrent object-oriented programming; data races; programming model; serializability", } @Article{Venstermans:2006:BVB, author = "Kris Venstermans and Lieven Eeckhout and Koen {De Bosschere}", title = "64-bit versus 32-bit {Virtual Machines} for {Java}", journal = j-SPE, volume = "36", number = "1", pages = "1--26", month = jan, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.679", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Tue Mar 14 11:39:19 MST 2006", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "The Java language is popular because of its platform independence, making it useful in a lot of technologies ranging from embedded devices to high-performance systems. The platform-independent property of Java, which is visible at the Java bytecode level, is only made possible thanks to the availability of a Virtual Machine (VM), which needs to be designed specifically for each underlying hardware platform. More specifically, the same Java bytecode should run properly on a 32-bit or a 64-bit VM. In this paper, we compare the behavioral characteristics of 32-bit and 64-bit VMs using a large set of Java benchmarks. This is done using the Jikes Research VM as well as the IBM JDK 1.4.0 production VM on a PowerPC-based IBM machine. By running the PowerPC machine in both 32-bit and 64-bit mode we are able to compare 32-bit and 64-bit VMs. We conclude that the space an object takes in the heap in 64-bit mode is 39.3\% larger on average than in 32-bit mode. We identify three reasons for this: (i) the larger pointer size, (ii) the increased header and (iii) the increased alignment. The minimally required heap size is 51.1\% larger on average in 64-bit than in 32-bit mode. From our experimental setup using hardware performance monitors, we observe that 64-bit computing typically results in a significantly larger number of data cache misses at all levels of the memory hierarchy. In addition, we observe that when a sufficiently large heap is available, the IBM JDK 1.4.0 VM is 1.7\% slower on average in 64-bit mode than in 32-bit mode.", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", keywords = "64-bit versus 32-bit computing; Java; performance evaluation; PowerPC; Virtual Machine", onlinedate = "15 Sep 2005", } @Article{Vincenzi:2006:EST, author = "A. M. R. Vincenzi and M. E. Delamaro and J. C. Maldonado and W. E. Wong", title = "Establishing structural testing criteria for {Java} bytecode", journal = j-SPE, volume = "36", number = "14", pages = "1513--1541", day = "25", month = nov, year = "2006", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.726", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:13 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "22 Jun 2006", } @Article{Vollmar:2006:MEO, author = "Kenneth Vollmar and Pete Sanderson", title = "{MARS}: an education-oriented {MIPS} assembly language simulator", journal = j-SIGCSE, volume = "38", number = "1", pages = "239--243", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121415", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We describe the implementation of ``MARS,'' a GUI, Java-based simulator for the MIPS assembly language. MIPS, the computer architecture underlying the simulated assembly language, is widely used in industry and is the basis of the popular textbook Computer Organization and Design [6], used at over 400 universities. The MARS simulator has been implemented with characteristics that are especially useful to undergraduate computer science students and their instructors.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Warth:2006:SSOa, author = "Alessandro Warth and Milan Stanojevi{\'c} and Todd Millstein", title = "Statically scoped object adaptation with expanders", journal = j-SIGPLAN, volume = "41", number = "10", pages = "37--56", month = oct, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1167473.1167477", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:47:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper introduces the expander, a new object-oriented (OO) programming language construct designed to support object adaptation. Expanders allow existing classes to be noninvasively updated with new methods, fields, and superinterfaces. Each client can customize its view of a class by explicitly importing any number of expanders. This view then applies to all instances of that class, including objects passed to the client from other components. A form of expander overriding allows expanders to interact naturally with OO-style inheritance. We describe the design, implementation, and evaluation of eJava, an extension to Java supporting expanders. We illustrate eJava's syntax and semantics through several examples. The statically scoped nature of expander usage allows for a modular static type system that prevents several important classes of errors. We describe this modular static type system informally, formalize eJava and its type system in an extension to Featherweight Java, and prove a type soundness theorem for the formalization. We also describe a modular compilation strategy for eJava, which we have implemented using the Polyglot extensible compiler framework. Finally, we illustrate the practical benefits of eJava by using this compiler in two experiments.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "expanders; modular typechecking; object adaptation", } @Article{Welc:2006:RTJ, author = "Adam Welc and Suresh Jagannathan and Antony L. Hosking", title = "Revocation techniques for {Java} concurrency", journal = j-CCPE, volume = "18", number = "12", pages = "1613--1656", month = oct, year = "2006", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1008", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:07 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "12 Jan 2006", } @Article{Wells:2006:NIL, author = "George C. Wells", title = "New and improved: {Linda} in {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "59", number = "1--2", pages = "82--96", month = jan, year = "2006", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:38:53 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{White:2006:JJF, author = "Timothy M. White and Thomas P. Way", title = "{jFAST}: a {Java} finite automata simulator", journal = j-SIGCSE, volume = "38", number = "1", pages = "384--388", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121460", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Visualization and interactivity are valuable active learning techniques that can improve mastery of difficult concepts. In this paper we describe jFAST, an easy-to-use graphical software tool for teachers and students, with an emphasis on introductory level finite state machine topics. The jFAST software enables visual design, exploration and simulation of a variety of finite state machines, with a primary goal of enhancing teaching effectiveness in this subject, particularly for less advanced computer science students. The architecture and functionality of jFAST are explained, and results of preliminary evaluation are provided.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Williams:2006:LRD, author = "Rob Williams", title = "Languages for {RTS} development --- {C}, {Ada} and {Java}", journal = "Real-Time Systems Development", volume = "??", number = "??", pages = "341--357", month = "????", year = "2006", CODEN = "????", DOI = "https://doi.org/10.1016/B978-075066471-4/50018-9", ISSN = "????", bibdate = "Mon Jan 14 21:50:03 MST 2013", bibsource = "https://www.math.utah.edu/pub/tex/bib/adabooks.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/B9780750664714500189", acknowledgement = ack-nhfb, } @Article{Winter:2006:TPC, author = "Victor L. Winter and Jason Beranek and Fares Fraij and Steve Roach and Greg Wickstrom", title = "A transformational perspective into the core of an abstract class loader for the {SSP}", journal = j-TECS, volume = "5", number = "4", pages = "773--818", month = nov, year = "2006", CODEN = "????", DOI = "https://doi.org/10.1145/1196636.1196639", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Jun 12 15:20:45 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The SSP is a hardware implementation of a subset of the JVM for use in high-consequence embedded applications. In this context, a majority of the activities belonging to class loading, as it is defined in the specification of the JVM, can be performed statically. Static class loading has the net result of dramatically simplifying the design of the SSP, as well as increasing its performance. Because of the high consequence nature of its applications, strong evidence must be provided that all aspects of the SSP have been implemented correctly. This includes the class loader. This article explores the possibility of formally verifying a class loader for the SSP implemented in the strategic programming language TL. Specifically, an implementation of the core activities of an abstract class loader is presented and its verification in ACL2 is considered.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "HATS; higher-order rewriting; SSP; strategic programming; TL", } @Article{Wise:2006:GJD, author = "Jon Wise", title = "{GoJava}: a {Java} development tool for beginners", journal = j-SIGCSE, volume = "38", number = "3", pages = "359--359", month = sep, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1140123.1140269", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:28 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This is an abstract supporting a demonstration of software developed to help the teaching of Java programming to students without prior experience of computer programming.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @TechReport{Wright:2006:IJV, author = "Greg Wright and Mario Wolczko and Phil McGachey and Erika Gunadi", title = "Introspection of a {Java Virtual Machine} under Simulation", type = "Technical Report", number = "TR-2006-159", institution = "Sun Microsystems, Inc.", address = "Menlo Park, CA, USA", month = sep, year = "2006", bibdate = "Tue Oct 24 08:05:32 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://research.sun.com/techrep/2006/smli_tr-2006-159.pdf", abstract = "Virtual machines are commonly used in commercially-significant systems, for example, Sun Microsystems' Java and Microsoft's .NET. The virtual machine offers many advantages to the system designer and administrator, but complicates the task of workload characterization: it presents an extra abstraction layer between the application and observed hardware effects. Understanding the behavior of the virtual machine is therefore important for all levels of the system architecture.\par We have constructed a tool which examines the state of a Sun Java HotSpot virtual machine running inside Virtutech's Simics execution-driven simulator. We can obtain detailed information about the virtual machine and application without disturbing the state of the simulation. For data, we can answer such questions as: Is a given address in the heap? If so, in which object? Of what class? For code, we can map program counter values back to Java methods and approximate Java source line information. Our tool allows us to relate individual events in the simulation, for example, a cache miss, to the higher-level behavior of the application and virtual machine.\par In this report, we present the design of our tool, including its capabilities and limitations, and demonstrate its application on the simulation's cache contents and cache misses.", acknowledgement = ack-nhfb, } @Article{Xu:2006:CCT, author = "Li Xu and Fred G. Martin", title = "Chirp on crickets: teaching compilers using an embedded robot controller", journal = j-SIGCSE, volume = "38", number = "1", pages = "82--86", month = mar, year = "2006", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1124706.1121370", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Traditionally, the topics of compiler construction and language processing have been taught as an elective course in Computer Science curricula. As such, students may graduate with little understanding or experience with the useful techniques embodied in modern compiler construction. In this paper, we present the design of Chirp, a language specification and compiler implementation. As a language, Chirp is based on Java/C syntax conventions and is matched with the stack-based virtual machine that is built into the simple yet versatile Handy Cricket educational robot controller. As a compiler, the Chirp design is a series of Java components. These modules demonstrate key compiler construction techniques including lexing, parsing, intermediate representation, semantic analysis, error handling and code generation. We have designed a 6-week teaching module to be integrated into an intermediate-level undergraduate programming class. In the module, students will incrementally build the Chirp compiler, culminating with code generation for the Cricket controller. They will test their work on both physical Cricket-based robots and a web-based Cricket simulator. The Chirp system and our pedagogical design provides a realistic and engaging environment to teach compilers in undergraduate core programming courses.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Xu:2006:PMP, author = "Jing Xu and Alexandre Oufimtsev and Murray Woodside and Liam Murphy", title = "Performance modeling and prediction of enterprise {JavaBeans} with layered queuing network templates", journal = j-SIGSOFT, volume = "31", number = "2", pages = "5:1--5:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123064", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component technologies, such as Enterprise Java Beans (EJB) and {.NET}, are used in enterprise servers with requirements for high performance and scalability. This work considers performance prediction from the design of an EJB system, based on the modular structure of an application server and the application components. It uses layered queueing models, which are naturally structured around the software components. This paper describes a framework for constructing such models, based on layered queue templates for EJBs, and for their inclusion in the server. The resulting model is calibrated and validated by comparison with an actual system.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Zakhour:2006:JTS, editor = "Sharon Zakhour and Mary Campione and Jacob Royal and Isaac Rabinovitch and Tom Risser and Mark Hoeber", title = "The {Java} tutorial: a short course on the basics", publisher = pub-AW, address = pub-AW:adr, edition = "Fourth", pages = "xxv + 637", year = "2006", ISBN = "0-321-33420-5 (paperback)", ISBN-13 = "978-0-321-33420-6 (paperback)", LCCN = "QA76.73.J38 C365 2006", bibdate = "Wed Apr 25 14:27:43 MDT 2007", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "The Java series", URL = "http://www.loc.gov/catdir/toc/ecip0620/2006028544.html", acknowledgement = ack-nhfb, remark = "See also third edition \cite{Campione:2001:JTS}.", subject = "Java (Computer program language)", } @Article{Zhang:2006:JEJ, author = "Bao-Yin Zhang and Guang-Wen Yang and Wei-Min Zheng", title = "{Jcluster}: an efficient {Java} parallel environment on a large-scale heterogeneous cluster", journal = j-CCPE, volume = "18", number = "12", pages = "1541--1557", month = oct, year = "2006", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.986", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:07 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "25 Oct 2005", } @Article{Zhuang:2006:AEA, author = "Xiaotong Zhuang and Mauricio J. Serrano and Harold W. Cain and Jong-Deok Choi", title = "Accurate, efficient, and adaptive calling context profiling", journal = j-SIGPLAN, volume = "41", number = "6", pages = "263--271", month = jun, year = "2006", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1133981.1134012", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Calling context profiles are used in many inter-procedural code optimizations and in overall program understanding. Unfortunately, the collection of profile information is highly intrusive due to the high frequency of method calls in most applications. Previously proposed calling-context profiling mechanisms consequently suffer from either low accuracy, high overhead, or both. We have developed a new approach for building the calling context tree at runtime, called adaptive bursting. By selectively inhibiting redundant profiling, this approach dramatically reduces overhead while preserving profile accuracy. We first demonstrate the drawbacks of previously proposed calling context profiling mechanisms. We show that a low-overhead solution using sampled stack-walking alone is less than 50\% accurate, based on degree of overlap with a complete calling-context tree. We also show that a static bursting approach collects a highly accurate profile, but causes an unacceptable application slowdown. Our adaptive solution achieves 85\% degree of overlap and provides an 88\% hot-edge coverage when using a 0.1 hot-edge threshold, while dramatically reducing overhead compared to the static bursting approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "adaptive; call graph; calling context; calling context tree; Java Virtual Machine; profiling", } @Article{Adelmann:2007:IFF, author = "Robert Adelmann and Tobias Bischoff and Tobias Lauer", title = "{IDEA}: a framework for the fast creation of interactive animations by pen sketching", journal = j-SIGCSE, volume = "39", number = "3", pages = "291--295", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268868", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "We present a Java-based framework for the easy and on-the-fly creation of algorithm animations. Animations are created by sketching both the objects that should be animated and operations that should be performed on them. The IDEA (Interactive Domain rEcognition and Animation) framework combines the recognition of drawn structures, the interaction with these structures and their animation in order to achieve an effortless and natural creation of animations. The framework itself supports the creation of animations in arbitrary domains through a dynamic plug-in architecture, where so-called domain modules encapsulate all domain-specific semantics. Its application and potential is outlined by the help of three prototypical domain modules for linear lists, Petri nets, and the game Connect-four.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ahern:2007:FJR, author = "Alexander Ahern and Nobuko Yoshida", title = "Formalising {Java RMI} with explicit code mobility", journal = j-THEOR-COMP-SCI, volume = "389", number = "3", pages = "341--410", day = "15", month = dec, year = "2007", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Mon Mar 28 22:12:00 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/03043975", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Article{Ancona:2007:PCT, author = "D. Ancona and C. Anderson and F. Damiani and S. Drossopoulou and P. Giannini and E. Zucca", title = "A provenly correct translation of {Fickle} into {Java}", journal = j-TOPLAS, volume = "29", number = "2", pages = "13:1--13:67", month = apr, year = "2007", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1216374.1216381", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Sat Apr 14 11:13:22 MDT 2007", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present a translation from Fickle, a small object-oriented language allowing objects to change their class at runtime, into Java. The translation is provenly correct in the sense that it preserves the static and dynamic semantics. Moreover, it is compatible with separate compilation, since the translation of a Fickle class does not depend on the implementation of used classes. Based on the formal system, we have developed an implementation. The translation turned out to be a more subtle problem than we expected. In this article, we discuss four possible approaches we considered for the design of the translation and to justify our choice, we present formally the translation and proof of preservation of the static and dynamic semantics, and discuss the prototype implementation. Moreover, we outline an alternative translation based on generics that avoids most of the casts (but not all) needed in the previous translation. The language Fickle has undergone and is still undergoing several phases of development. In this article we are discussing the translation of Fickle$_{\rm II}$.", acknowledgement = ack-nhfb, articleno = "13", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Arbe:2007:FLT, author = "Jos{\'e} Miguel Blanco Arbe and Ana S{\'a}nchez Ortega and Jes{\'u}s Ib{\'a}{\~n}ez M{\'a}rtinez-Conde", title = "Formal languages through {Web} forms and regular expressions", journal = j-SIGCSE, volume = "39", number = "4", pages = "100--104", month = dec, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1345375.1345424", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:39 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#ArbeOM07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "We present a practical and up-to-date proposal to teach formal languages. It takes advantage of frequent use of regular-expressions to specify entry data forms in different contexts and, particularly, in three-layer web applications. Compared to more classical approaches our method improves significantly the acquainting of students with the immediate practical utility of the concepts involved in formal language definition. Students must develop code fragments based on JavaScript notation of regular-expressions. Accordingly, any web browser can be a suitable platform for the execution of solutions. The experience has proved to be effective and well-accepted by students and teachers.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Armbruster:2007:RTJ, author = "Austin Armbruster and Jason Baker and Antonio Cunei and Chapman Flack and David Holmes and Filip Pizlo and Edward Pla and Marek Prochazka and Jan Vitek", title = "A real-time {Java} virtual machine with applications in avionics", journal = j-TECS, volume = "7", number = "1", pages = "5:1--5:49", month = dec, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1145/1324969.1324974", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Jun 12 15:21:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper reports on our experience with the implementation of the Real-time Specification for Java on the Ovm open source Java virtual machine. We describe the architecture and main design decisions involved in implementing real-time Java on Ovm. We present the first use of Real-time Java in avionics in the context of control software for a ScanEagle Unmanned Aerial Vehicle.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "avionics; memory management; Real-Time Java; virtual machines", } @Article{Auerbach:2007:JTF, author = "Joshua Auerbach and David F. Bacon and Daniel T. Iercan and Christoph M. Kirsch and V. T. Rajan and Harald Roeck and Rainer Trummer", title = "{Java} takes flight: time-portable real-time programming with exotasks", journal = j-SIGPLAN, volume = "42", number = "7", pages = "51--62", month = jul, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273444.1254775", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:57:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Existing programming methodologies for real-time systems suffer from a low level of abstraction and non-determinism in both the timing and the functional domains. As a result, real-time systems are difficult to test and must be re-certified every time changes are made to either the software or hardware environment. Exotasks are a novel Java programming construct that achieve deterministic timing, even in the presence of other Java threads, and across changes of hardware and software platform. They are deterministic functional data-flow tasks written in Java, combined with an orthogonal scheduling policy based on the logical execution time (LET) model. We have built a quad-rotor model helicopter, the JAviator, which we use as a testbed for this work. We evaluate our implementation of exotasks in IBM's J9 real-time virtual machine using actual flights of the helicopter. Our experiments show that we are able to maintain deterministic behavior in the face of variations in both software load and hardware platform.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "real-time scheduling; time-portability; UAVs; virtual machine", } @Article{Bacon:2007:RGC, author = "David F. Bacon", title = "Realtime garbage collection", journal = j-QUEUE, volume = "5", number = "1", pages = "40--49", month = feb, year = "2007", CODEN = "AQCUAE", DOI = "https://doi.org/10.1145/1217256.1217268", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Fri Jun 20 11:15:00 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "It's now possible to develop realtime systems using Java.", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Baduel:2007:ATO, author = "Laurent Baduel and Fran{\c{c}}oise Baude and Denis Caromel", title = "Asynchronous Typed Object Groups for {Grid} Programming", journal = j-INT-J-PARALLEL-PROG, volume = "35", number = "6", pages = "573--614", month = dec, year = "2007", CODEN = "IJPPE5", DOI = "https://doi.org/10.1007/s10766-007-0044-3", ISSN = "0885-7458 (print), 1573-7640 (electronic)", ISSN-L = "0885-7458", bibdate = "Wed Jul 9 16:06:53 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0885-7458&volume=35&issue=6; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0885-7458&volume=35&issue=6&spage=573", acknowledgement = ack-nhfb, fjournal = "International Journal of Parallel Programming", journal-URL = "http://link.springer.com/journal/10766", keywords = "Group communication; Java middleware; object-oriented parallelism; SPMD programming", } @Article{Bagley:2007:CIN, author = "Carole A. Bagley and C. Candace Chou", title = "Collaboration and the importance for novices in learning {Java} computer programming", journal = j-SIGCSE, volume = "39", number = "3", pages = "211--215", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268846", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "The authors propose that a correlation exists between collaboration and success by novices when learning computer programming. Research in an introductory course was conducted that focused on answering several questions: At what time in their learning java programming and algorithmic problem solving, would a student benefit best by collaboration? At what time during the problem solving process would the learner benefit greatest by collaboration? Would the student benefit greater by collaborating with 1 student in the class, a group, or an expert mentor/coach? What cognitive and affective strategies are used during various types of collaboration? Does collaboration increase problem solving performance by females. This research will advance fundamental knowledge of teaching and learning of computer science. It will further the understanding of problem solving and strategies used in learning computer programming and whether collaboration is important.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Baker:2007:BLS, author = "Mark Baker and Bryan Carpenter and Aamir Shafi", title = "A Buffering Layer to Support Derived Types and Proprietary Networks for {Java} {HPC}", journal = j-SCPE, volume = "8", number = "4", pages = "343--358", month = dec, year = "2007", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/8/4.toc", URL = "http://www.scpe.org/vols/vol08/no4/SCPE_8_4_02.pdf; http://www.scpe.org/vols/vol08/no4/SCPE_8_4_02.zip", acknowledgement = ack-nhfb, } @Article{Basu:2007:MCJ, author = "Samik Basu and Scott A. Smolka", title = "Model checking the {Java} metalocking algorithm", journal = j-TOSEM, volume = "16", number = "3", pages = "12:1--12:??", month = jul, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1243987.1243990", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:41 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We report on our efforts to use the XMC model checker to model and verify the Java metalocking algorithm. XMC [Ramakrishna et al. 1997] is a versatile and efficient model checker for systems specified in XL, a highly expressive value-passing language. Metalocking [Agesen et al. 1999] is a highly-optimized technique for ensuring mutually exclusive access by threads to object monitor queues and, therefore; plays an essential role in allowing Java to offer concurrent access to objects. Metalocking can be viewed as a two-tiered scheme. At the upper level, the metalock level, a thread waits until it can enqueue itself on an object's monitor queue in a mutually exclusive manner. At the lower level, the monitor-lock level, enqueued threads race to obtain exclusive access to the object. Our abstract XL specification of the metalocking algorithm is fully parameterized, both on the number of threads M, and the number of objects N. It also captures a sophisticated optimization of the basic metalocking algorithm known as extra-fast locking and unlocking of uncontended objects. Using XMC, we show that for a variety of values of M and N, the algorithm indeed provides mutual exclusion and freedom from deadlock and lockout at the metalock level. We also show that, while the monitor-lock level of the protocol preserves mutual exclusion and deadlock-freedom, it is not lockout-free because the protocol's designers chose to give equal preference to awaiting threads and newly arrived threads.", acknowledgement = ack-nhfb, articleno = "12", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "Java; metalocking; monitor queues; mutual exclusion; synchronized methods; XMC", } @Article{Benaya:2007:UTA, author = "Tamar Benaya and Ela Zur", title = "Understanding threads in an advanced {Java} course", journal = j-SIGCSE, volume = "39", number = "3", pages = "323--323", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268890", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "This poster describes difficulties in understanding threads in an Advanced Java course given at the Computer Science department of the Open University of Israel (OUI). We present a typical question which focuses on several aspects of multi-threaded programming given in an exam. We discuss the students' answers and point to typical misunderstandings of the topic.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Bierhoff:2007:MTC, author = "Kevin Bierhoff and Jonathan Aldrich", title = "Modular typestate checking of aliased objects", journal = j-SIGPLAN, volume = "42", number = "10", pages = "301--320", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297050", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Objects often define usage protocols that clients must follow in order for these objects to work properly. Aliasing makes it notoriously difficult to check whether clients and implementations are compliant with such protocols. Accordingly, existing approaches either operate globally or severely restrict aliasing.\par We have developed a sound modular protocol checking approach, based on typestates, that allows a great deal of flexibility in aliasing while guaranteeing the absence of protocol violations at runtime. The main technical contribution is a novel abstraction, access permissions, that combines typestate and object aliasing information. In our methodology, developers express their protocol design intent through annotations based on access permissions. Our checking approach then tracks permissions through method implementations. For each object reference the checker keeps track of the degree of possible aliasing and is appropriately conservative in reasoning about that reference. This helps developers account for object manipulations that may occur through aliases. The checking approach handles inheritance in a novel way, giving subclasses more flexibility in method overriding. Case studies on Java iterators and streams provide evidence that access permissions can model realistic protocols, and protocol checking based on access permissions can be used to reason precisely about the protocols that arise in practice.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aliasing; behavioral subtyping; linear logic; permissions; typestates", } @Article{Blackburn:2007:PBP, author = "Stephen M. Blackburn and Matthew Hertz and Kathryn S. Mckinley and J. Eliot B. Moss and Ting Yang", title = "Profile-based pretenuring", journal = j-TOPLAS, volume = "29", number = "1", pages = "2:1--2:57", month = jan, year = "2007", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1180475.1180477", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Sat Apr 14 11:13:22 MDT 2007", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Pretenuring can reduce copying costs in garbage collectors by allocating long-lived objects into regions that the garbage collector will rarely, if ever, collect. We extend previous work on pretenuring as follows: (1) We produce pretenuring advice that is neutral with respect to the garbage collector algorithm and configuration. We thus can and do combine advice from different applications. We find for our benchmarks that predictions using object lifetimes at each allocation site in Java programs are accurate, which simplifies the pretenuring implementation. (2) We gather and apply advice to both applications and Jikes RVM, a compiler and runtime system for Java written in Java. Our results demonstrate that building combined advice into Jikes RVM from different application executions improves performance, regardless of the application Jikes RVM is compiling and executing. This build-time advice thus gives user applications some benefits of pretenuring, without any application profiling. No previous work uses profile feedback to pretenure in the runtime system. (3) We find that application-only advice also consistently improves performance, but that the combination of build-time and application-specific advice is almost always noticeably better. (4) Our same advice improves the performance of generational, Older First, and Beltway collectors, illustrating that it is collector neutral. (5) We include an immortal allocation space in addition to a nursery and older generation, and show that pretenuring to immortal space has substantial benefit.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Book{Bohnenkamp:2007:SGJ, author = "Wendy Bohnenkamp and Jackie Iverson", title = "{SAS} Graphics for {Java}: examples using {SAS} {AppDev} studio and the {Output} delivery system", publisher = pub-SAS, address = pub-SAS:adr, pages = "xii + 342", year = "2007", ISBN = "1-59047-693-X", ISBN-13 = "978-1-59047-693-2", LCCN = "HA31 .B645 2007", bibdate = "Wed Jul 9 11:15:29 MDT 2014", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sas.bib; z3950.loc.gov:7090/Voyager", series = "SAS Press series", acknowledgement = ack-nhfb, subject = "SAS (Computer file); SAS/GRAPH; Statistics; Graphic methods; Java (Computer program language)", tableofcontents = "Part 1. SAS AppDevStudio: Getting started with SAS AppDev Studio \\ SAS AppDev Studio custom tags and attributes for basic graphs \\ SAS AppDev Studio 3 graph model tags \\ Nested tags for graph models \\ Supporting tags \\ Part 2. Output delivery system: Important concepts for getting started with ODS and Java \\ Creating graphs \\ Parameters for colors \\ Parameters for text \\ Other parameters \\ Part 3. Putting it together: Final reports \\ Appendix", } @Article{Bond:2007:PCC, author = "Michael D. Bond and Kathryn S. McKinley", title = "Probabilistic calling context", journal = j-SIGPLAN, volume = "42", number = "10", pages = "97--112", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297035", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Calling context enhances program understanding and dynamic analyses by providing a rich representation of program location. Compared to imperative programs, object-oriented programs use more interprocedural and less intraprocedural control flow, increasing the importance of context sensitivity for analysis. However, prior online methods for computing calling context, such as stack-walking or maintaining the current location in a calling context tree, are expensive in time and space. This paper introduces a new online approach called probabilistic calling context (PCC) that continuously maintains a probabilistically unique value representing the current calling context. For millions of unique contexts, a 32-bit PCC value has few conflicts. Computing the PCC value adds 3\% average overhead to a Java virtual machine. PCC is well-suited to clients that detect new or anomalous behavior since PCC values from training and production runs can be compared easily to detect new context-sensitive behavior; clients that query the PCC value at every system call, Java utility call, and Java API call add 0-9\% overhead on average. PCC adds space overhead proportional to the distinct contexts stored by the client (one word per context). Our results indicate PCC is efficient and accurate enough to use in deployed software for residual testing, bug detection, and intrusion detection.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "anomaly-based bug detection; calling context; dynamic context sensitivity; intrusion detection; managed languages; probabilistic; residual testing", } @Article{Bond:2007:TBA, author = "Michael D. Bond and Nicholas Nethercote and Stephen W. Kent and Samuel Z. Guyer and Kathryn S. McKinley", title = "Tracking bad apples: reporting the origin of null and undefined value errors", journal = j-SIGPLAN, volume = "42", number = "10", pages = "405--422", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297057", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Programs sometimes crash due to unusable values, for example, when Java and C\# programs dereference null pointers and when C and C++ programs use undefined values to affect program behavior. A stack trace produced on such a crash identifies the effect of the unusable value, not its cause, and is often not much help to the programmer.\par This paper presents efficient origin tracking of unusable values; it shows how to record where these values come into existence, correctly propagate them, and report them if they cause an error. The key idea is value piggybacking: when the original program stores an unusable value, value piggybacking instead stores origin information in the spare bits of the unusable value. Modest compiler support alters the program to propagate these modified values through operations such as assignments and comparisons. We evaluate two implementations: the first tracks null pointer origins in a JVM, and the second tracks undefined value origins in a memory-checking tool built with Valgrind. These implementations show that origin tracking via value piggybacking is fast and often useful, and in the Java case, has low enough overhead for use in a production environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "debugging; Java; low-overhead run-time support; managed languages; null pointer exceptions; undefined values; valgrind", } @Article{Bower:2007:GAS, author = "Matt Bower", title = "Groupwork activities in synchronous online classroom spaces", journal = j-SIGCSE, volume = "39", number = "1", pages = "91--95", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227345", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper shares insights about the deployment of groupwork activities in synchronous online classroom spaces. It is based upon analysis of 48 hours of online lesson recordings from an Introduction to Programming (in Java) subject conducted over two semesters. Key observations are shared about how factors such as the type of the activity, the level of student technological and communicative competencies, the interface design and the task specification influenced discourse and learning. On this basis recommendations for teaching using virtual classroom groupwork are offered in order to assist academics who may be considering similar approaches to teaching online.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Brittain:2007:TDG, author = "Jason Brittain and Ian F. Darwin", title = "{Tomcat}: the definitive guide", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xvi + 476", year = "2007", ISBN = "0-596-10106-6 (paperback)", ISBN-13 = "978-0-596-10106-0 (paperback)", LCCN = "TK5105.8885.A63 B75 2008", bibdate = "Tue Aug 5 17:49:45 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101060", acknowledgement = ack-nhfb, remark = "Previous edition 2003.", subject = "JavaServer Pages (Computer file); Jakarta Tomcat (Computer file); Web servers; Servlets", } @Article{Brosgol:2007:AOS, author = "Ben Brosgol and Mario Aldea", title = "{Ada} and other standards: Introduction", journal = j-SIGADA-LETTERS, volume = "27", number = "2", pages = "88--89", month = aug, year = "2007", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1316002.1316023", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:17:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The main goals of this session were to:\par $ \bullet $ consider whether a new binding between Ada and POSIX is needed/desirable\par $ \bullet $ look at current efforts to update POSIX and 'Real-Time Java' in terms of impact on or 'lessons learned' for Ada", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Brosgol:2007:SLS, author = "Ben Brosgol", title = "{SA2}: languages for safety-critical software: issues and assessment", journal = j-SIGADA-LETTERS, volume = "27", number = "3", pages = "2--2", month = dec, year = "2007", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1315580.1315583", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:18:04 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This intermediate-level tutorial is aimed at people with a technical background in software development. No previous experience with safety-critical standards is required. Some familiarity with one or more of C, C++, Ada, or Java would be useful.\par Safety-critical systems (whose anomalous behavior could cause catastrophic or major failure involving loss of life) are becoming increasingly prevalent. Standards such as DO-178B, originally developed for commercial avionics, are attracting attention in other segments. The requirement to comply with such standards imposes constraints (on quality assurance, traceability, etc. ) much beyond what is typical for Commercial-Off-The-Shelf Software. One of the major decisions that affects safety certification is the choice of programming language(s). Specific language features, either by their presence of absence, may make certification easier or harder. (Practicalities such as tool support and programmer experience are of course also important but are outside the scope of the tutorial).\par This tutorial first summarizes existing safety standards, with a focus on DO-178B, and explains how they affect the requirements on a programming language. It specifically addresses the challenges imposed by Object-Oriented Technology and summarizes the work currently underway on DO-178C. The tutorial then assesses three language technologies -- C (including C++), Ada, and Java - with respect to suitability for meeting these requirements through appropriate subsetting. MISRA C, SPARK, and the in-progress Safety-Critical Java Technology are specifically identified and reviewed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Budimlic:2007:ICJ, author = "Zoran Budimli{\'c} and Mackale Joyner and Ken Kennedy", title = "Improving Compilation of {Java} Scientific Applications", journal = j-IJHPCA, volume = "21", number = "3", pages = "251--265", month = aug, year = "2007", CODEN = "IHPCFL", DOI = "https://doi.org/10.1177/1094342007078437", ISSN = "1094-3420 (print), 1741-2846 (electronic)", ISSN-L = "1094-3420", bibdate = "Tue Aug 31 09:59:45 MDT 2010", bibsource = "http://hpc.sagepub.com/content/21/3.toc; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://hpc.sagepub.com/content/21/3/251.full.pdf+html", acknowledgement = ack-nhfb, journal-URL = "http://hpc.sagepub.com/content/by/year", } @Book{Burns:2007:DJG, author = "Brendan Burns", title = "{Darkstar}: The {Java Game Server}", publisher = pub-ORA, address = pub-ORA:adr, year = "2007", ISBN = "0-596-51484-0", ISBN-13 = "978-0-596-51484-6", LCCN = "QA76.73.J38 B87 2007eb; QA76.73.J38", bibdate = "Tue Aug 5 17:58:34 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "O'Reilly shortcuts", URL = "http://www.oreilly.com/catalog/9780596514846", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Computer games; Interactive multimedia", } @Article{Buytaert:2007:UHS, author = "Dries Buytaert and Andy Georges and Michael Hind and Matthew Arnold and Lieven Eeckhout and Koen {De Bosschere}", title = "Using {HPM}-sampling to drive dynamic compilation", journal = j-SIGPLAN, volume = "42", number = "10", pages = "553--568", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297068", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "All high-performance production JVMs employ an adaptive strategy for program execution. Methods are first executed unoptimized and then an online profiling mechanism is used to find a subset of methods that should be optimized during the same execution. This paper empirically evaluates the design space of several profilers for initiating dynamic compilation and shows that existing online profiling schemes suffer from several limitations. They provide an insufficient number of samples, are untimely, and have limited accuracy at determining the frequently executed methods. We describe and comprehensively evaluate HPM-sampling, a simple but effective profiling scheme for finding optimization candidates using hardware performance monitors (HPMs) that addresses the aforementioned limitations. We show that HPM-sampling is more accurate; has low overhead; and improves performance by 5.7\% on average and up to 18.3\% when compared to the default system in Jikes RVM, without changing the compiler.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "hardware performance monitors; Java; just-in-time compilation; profiling", } @Article{Cameron:2007:MO, author = "Nicholas R. Cameron and Sophia Drossopoulou and James Noble and Matthew J. Smith", title = "Multiple ownership", journal = j-SIGPLAN, volume = "42", number = "10", pages = "441--460", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297060", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Existing ownership type systems require objects to have precisely one primary owner, organizing the heap into an ownership tree. Unfortunately, a tree structure is too restrictive for many programs, and prevents many common design patterns where multiple objects interact.\par Multiple Ownership is an ownership type system where objects can have more than one owner, and the resulting ownership structure forms a DAG. We give a straightforward model for multiple ownership, focusing in particular on how multiple ownership can support a powerful effects system that determines when two computations interfere-in spite of the DAG structure.\par We present a core programming language MOJO, Multiple ownership for Java-like Objects, including a type and effects system, and soundness proof. In comparison to other systems, MOJO imposes absolutely no restrictions on pointers, modifications or programs' structure, but in spite of this, MOJO's effects can be used to reason about or describe programs' behaviour.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "effects; ownership types; type and effect systems", } @Book{Carroll:2007:IMA, author = "Bradley W. Carroll and Dale A. Ostlie", title = "An Introduction to Modern Astrophysics", publisher = "Pearson Addison-Wesley", address = "San Francisco, CA, USA", edition = "Second", pages = "????", year = "2007", ISBN = "0-8053-0402-9, 0-321-44284-9 (paperback)", ISBN-13 = "978-0-8053-0402-2, 978-0-321-44284-0 (paperback)", LCCN = "QB461 .C35 2007", bibdate = "Fri Jun 1 07:54:59 MDT 2012", bibsource = "fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/bibnet/authors/b/bohr-niels.bib; https://www.math.utah.edu/pub/bibnet/authors/g/gamow-george.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://catdir.loc.gov/catdir/toc/ecip0613/2006015391.html; http://www.gbv.de/dms/ilmenau/toc/512485305.PDF", abstract = "An Introduction to Modern Astrophysics, Second Edition has been thoroughly revised to reflect the dramatic changes and advancements in astrophysics that have occurred over the past decade. The Second Edition of this market-leading book has been updated to include the latest results from relevant fields of astrophysics and advances in our theoretical understanding of astrophysical phenomena. The Tools of Astronomy: The Celestial Sphere, Celestial Mechanics, The Continuous Spectrum of Light, The Theory of Special Relativity, The Interaction of Light and Matter, Telescopes; The Nature of Stars: Binary Systems and Stellar Parameters, The Classification of Stellar Spectra, Stellar Atmospheres, The Interiors of Stars, The Sun, The Process of Star Formation, Post-Main-Sequence Stellar Evolution, Stellar Pulsation, Supernovae, The Degenerate Remnants of Stars, Black Holes, Close Binary Star Systems; Planetary Systems: Physical Processes in the Solar System, The Terrestrial Planets, The Jovian Worlds, Minor Bodies of the Solar System, The Formation of Planetary Systems; Galaxies and the Universe: The Milky Way Galaxy, The Nature of Galaxies, Galactic Evolution, The Structure of the Universe, Active Galaxies, Cosmology, The Early Universe; Astronomical and Physical Constants, Unit Conversions Between SI and cgs, Solar System Data, The Constellations, The Brightest Stars, The Nearest Stars, Stellar Data, The Messier Catalog, Constants, A Constants Module for Fortran 95 (Available as a C++ header file), Orbits, A Planetary Orbit Code (Available as Fortran 95 and C++ command line versions, and Windows GUI), TwoStars, A Binary Star Code (Generates synthetic light and radial velocity curves; available as Fortran 95 and C++ command line versions, and Windows GUI), StatStar, A Stellar Structure Code (Available as Fortran 95 and C++ command line versions, and Windows GUI), StatStar, Stellar Models, Galaxy, A Tidal Interaction Code (Available as Java), WMAP Data. For all readers interested in morden astrophysics.", acknowledgement = ack-nhfb, subject = "Astrophysics; Textbooks", tableofcontents = "I The Tools of Astronomy 1 \\ 1 The Celestial Sphere 2 \\ 1.1 The Greek Tradition 2 \\ 1.2 The Copernican Revolution 5 \\ 1.3 Positions on the Celestial Sphere 8 \\ 1.4 Physics and Astronomy 19 \\ 2 Celestial Mechanics 23 \\ 2.1 Elliptical Orbits 23 \\ 2.2 Newtonian Mechanics 29 \\ 2.3 Kepler's Laws Derived 39 \\ 2.4 The Virial Theorem 50 \\ 3 The Continuous Spectrum of Light 57 \\ 3.1 Stellar Parallax 57 \\ 3.2 The Magnitude Scale 60 \\ 3.3 The Wave Nature of Light 63 \\ 3.4 Blackbody Radiation 68 \\ 3.5 The Quantization of Energy 71 \\ 3.6 The Color Index 75 \\ 4 The Theory of Special Relativity 84 \\ 4.1 The Failure of the Galilean Transformations 84 \\ 4.2 The Lorentz Transformations 87 \\ 4.3 Time and Space in Special Relativity 92 \\ 4.4 Relativistic Momentum and Energy 102 \\ 5 The Interaction of Light and Matter 111 \\ 5.1 Spectral Lines 111 \\ 5.2 Photons 116 \\ 5.3 The Bohr Model of the Atom 119 \\ 5.4 Quantum Mechanics and Wave-Particle Duality 127 \\ 6 Telescopes 141 \\ 6.1 Basic Optics 141 \\ 6.2 Optical Telescopes 154 \\ 6.3 Radio Telescopes 161 \\ 6.4 Infrared, Ultraviolet, X-ray, and Gamma-Ray Astronomy 167 \\ 6.5 All-Sky Surveys and Virtual Observatories 170 \\ II The Nature of Stars 179 \\ 7 Binary Systems and Stellar Parameters 180 \\ 7.1 The Classification of Binary Stars 180 \\ 7.2 Mass Determination Using Visual Binaries 183 \\ 7.3 Eclipsing, Spectroscopic Binaries 186 \\ 7.4 The Search for Extrasolar Planets 195 \\ 8 The Classification of Stellar Spectra 202 \\ 8.1 The Formation of Spectral Lines 202 \\ 8.2 The Hertzsprung-Russell Diagram 219 \\ 9 Stellar Atmospheres 231 \\ 9.1 The Description of the Radiation Field 231 \\ 9.2 Stellar Opacity 238 \\ 9.3 Radiative Transfer 251 \\ 9.4 The Transfer Equation 255 \\ 9.5 The Profiles of Spectral Lines 267 \\ 10 The Interiors of Stars 284 \\ 10.1 Hydrostatic Equilibrium 284 \\ 10.2 Pressure Equation of State 288 \\ 10.3 Stellar Energy Sources 296 \\ 10.4 Energy Transport and Thermodynamics 315 \\ 10.5 Stellar Model Building 329 \\ 10.6 The Main Sequence 340 \\ 11 The Sun 349 \\ 11.1 The Solar Interior 349 \\ 11.2 The Solar Atmosphere 360 \\ 11.3 The Solar Cycle 381 \\ 12 The Interstellar Medium and Star Formation 398 \\ 12.1 Interstellar Dust and Gas 398 \\ 12.2 The Formation of Protostars 412 \\ 12.3 Pre-Main-Sequence Evolution 425 \\ 13 Main Sequence and Post-Main-Sequence Stellar Evolution 446 \\ 13.1 Evolution on the Main Sequence 446 \\ 13.2 Late Stages of Stellar Evolution 457 \\ 13.3 Stellar Clusters 474 \\ 14 Stellar Pulsation 483 \\ 14.1 Observations of Pulsating Stars 483 \\ 14.2 The Physics of Stellar Pulsation 491 \\ 14.3 Modeling Stellar Pulsation 499 \\ 14.4 Nonradial Stellar Pulsation 503 \\ 14.5 Helioseismology and Asteroseismology 509 \\ 15 The Fate of Massive Stars 518 \\ 15.1 Post-Main-Sequence Evolution of Massive Stars 518 \\ 15.2 The Classification of Supernovae 524 \\ 15.3 Core-Collapse Supernovae 529 \\ 15.4 Gamma-Ray Bursts 543 \\ 15.5 Cosmic Rays 550 \\ 16 The Degenerate Remnants of Stars 557 \\ 16.1 The Discovery of Sirius B 557 \\ 16.2 White Dwarfs 559 \\ 16.3 The Physics of Degenerate Matter 563 \\ 16.4 The Chandrasekhar Limit 569 \\ 16.5 The Cooling of White Dwarfs 572 \\ 16.6 Neutron Stars 578 \\ 16.7 Pulsars 586 \\ 17 General Relativity and Black Holes 609 \\ 17.1 The General Theory of Relativity 609 \\ 17.2 Intervals and Geodesics 622 \\ 17.3 Black Holes 633 \\ 18 Close Binary Star Systems 653 \\ 18.1 Gravity in a Close Binary Star System 653 \\ 18.2 Accretion Disks 661 \\ 18.3 A Survey of Interacting Binary Systems 668 \\ 18.4 White Dwarfs in Semidetached Binaries 673 \\ 18.5 Type Ia Supernovae 686 \\ 18.6 Neutron Stars and Black Holes in Binaries 689 \\ III The Solar System 713 \\ 19 Physical Processes in the Solar System 714 \\ 19.1 A Brief Survey 714 \\ 19.2 Tidal Forces 719 \\ 19.3 The Physics of Atmospheres 724 \\ 20 The Terrestrial Planets 737 \\ 20.1 Mercury 737 \\ 20.2 Venus 740 \\ 20.3 Earth 745 \\ 20.4 The Moon 754 \\ 20.5 Mars 762 \\ 21 The Realms of the Giant Planets 775 \\ 21.1 The Giant Worlds 775 \\ 21.2 The Moons of the Giants 790 \\ 21.3 Planetary Ring Systems 801 \\ 22 Minor Bodies of the Solar System 813 \\ 22.1 Pluto and Charon 813 \\ 22.2 Comets and Kuiper Belt Objects 816 \\ 22.3 Asteroids 830 \\ 22.4 Meteorites 838 \\ 23 Formation of Planetary Systems 848 \\ 23.1 Characteristics of Extrasolar Planetary Systems 848 \\ 23.2 Planetary System Formation and Evolution 857 \\ IV Galaxies and the Universe 873 \\ 24 The Milky Way Galaxy 874 \\ 24.1 Counting the Stars in the Sky 874 \\ 24.2 The Morphology of the Galaxy 881 \\ 24.3 The Kinematics of the Milky Way 898 \\ 24.4 The Galactic Center 922 \\ 25 The Nature of Galaxies 940 \\ 25.1 The Hubble Sequence 940 \\ 25.2 Spiral and Irregular Galaxies 948 \\ 25.3 Spiral Structure 964 \\ 25.4 Elliptical Galaxies 983 \\ 26 Galactic Evolution 999 \\ 26.1 Interactions of Galaxies 999 \\ 26.2 The Formation of Galaxies 1016 \\ 27 The Structure of the Universe 1038 \\ 27.1 The Extragalactic Distance Scale 1038 \\ 27.2 The Expansion of the Universe 1052 \\ 27.3 Clusters of Galaxies 1058 \\ 28 Active Galaxies 1085 \\ 28.1 Observations of Active Galaxies 1085 \\ 28.2 A Unified Model of Active Galactic Nuclei 1108 \\ 28.3 Radio Lobes and Jets 1122 \\ 28.4 Using Quasars to Probe the Universe 1130 \\ 29 Cosmology 1144 \\ 29.1 Newtonian Cosmology 1144 \\ 29.2 The Cosmic Microwave Background 1162 \\ 29.3 Relativistic Cosmology 1183 \\ 29.4 Observational Cosmology 1199 \\ 30 The Early Universe 1230 \\ 30.1 The Very Early Universe and Inflation 1230 \\ 30.2 The Origin of Structure 1247 \\ A Astronomical and Physical Constants \\ B Unit Conversions \\ C Solar System Data A-1 \\ D The Constellations A-3 \\ E The Brightest Stars A-5 \\ F The Nearest Stars A-7 \\ G Stellar Data A-9 \\ H The Messier Catalog A-13 \\ I Constants, A Programming Module A-16 \\ J Orbit, A Planetary Orbit Code A-17 \\ K TwoStars, A Binary Star Code A-18 \\ L StatStar, A Stellar Structure Code A-23 \\ M Galaxy, A Tidal Interaction Code A-26 \\ N WMAP Data A-29", } @Book{Chambers:2007:AIR, author = "Mike Chambers and Daniel Dura and Kevin Hoyt", title = "{Adobe Integrated Runtime} ({Air}): for {Javascript} Developers Pocket Guide", publisher = pub-ORA, address = pub-ORA:adr, pages = "xix + 154", year = "2007", ISBN = "0-596-51519-7", ISBN-13 = "978-0-596-51519-5", LCCN = "QA76.625; QA76.625 .C42 2007eb", bibdate = "Tue Aug 5 17:59:34 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Adobe developer library", URL = "http://www.oreilly.com/catalog/9780596515195", abstract = "A guide to the Beta release of Adobe Integrated Runtime explains how to build and deploy HTML and JavaScript-based Web applications to the desktop.", acknowledgement = ack-nhfb, subject = "Internet programming; Application software; Development; Web site development; Computer programs; JavaScript (Computer program language)", } @Article{Chen:2007:MEG, author = "Feng Chen and Grigore Ro{\c{s}}u", title = "{MOP}: an efficient and generic runtime verification framework", journal = j-SIGPLAN, volume = "42", number = "10", pages = "569--588", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297069", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Monitoring-Oriented Programming (MOP1) [21, 18, 22, 19] is a formal framework for software development and analysis, in which the developer specifies desired properties using definable specification formalisms, along with code to execute when properties are violated or validated. The MOP framework automatically generates monitors from the specified properties and then integrates them together with the user-defined code into the original system.\par The previous design of MOP only allowed specifications without parameters, so it could not be used to state and monitor safety properties referring to two or more related objects. In this paper we propose a parametric specification formalism-independent extension of MOP, together with an implementation of JavaMOP that supports parameters. In our current implementation, parametric specifications are translated into AspectJ code and then weaved into the application using off-the-shelf AspectJ compilers; hence, MOP specifications can be seen as formal or logical aspects.\par Our JavaMOP implementation was extensively evaluated on two benchmarks, Dacapo [14] and Tracematches [8], showing that runtime verification in general and MOP in particular are feasible. In some of the examples, millions of monitor instances are generated, each observing a set of related objects. To keep the runtime overhead of monitoring and event observation low, we devised and implemented a decentralized indexing optimization. Less than 8\% of the experiments showed more than 10\% runtime overhead; in most cases our tool generates monitoring code as efficient as the hand-optimized code. Despite its genericity, JavaMOP is empirically shown to be more efficient than runtime verification systems specialized and optimized for particular specification formalisms. Many property violations were detected during our experiments; some of them are benign, others indicate defects in programs. Many of these are subtle and hard to find by ordinary testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspect-oriented programming; monitoring-oriented programming; runtime verification", } @Article{Chen:2007:TPB, author = "Hsiang-Yang Chen and Ting-Wei Hou and Chun-Liang Lin", title = "Tamper-proofing basis path by using oblivious hashing on {Java}", journal = j-SIGPLAN, volume = "42", number = "2", pages = "9--16", month = feb, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1241761.1241762", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:01 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java programs are often downloaded (distributed) to unknown environments, so protect Java code from malicious modification is an important issue. This paper presents a tamper-proofing software technology on basis paths for stack-machine based languages, such as Java, by improving Oblivious Hashing. Our approach is based on a new dynamic stack-tracing approach which inserts hash instructions to monitor the top of the stack to check whether the program running has been tampered with or not. A user can choose one or more methods in a class to tamper-proof program. The protective codes are added to basic blocks at the bytecode level. We developed a new approach to protect constants and variables by alternative hashing functions. The overhead is proportional to the number of Load and Push instructions to be protected.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "basis paths; Java; oblivious hashing; tamper-proofing", } @Article{Chong:2007:SWA, author = "Stephen Chong and Jed Liu and Andrew C. Myers and Xin Qi and K. Vikram and Lantian Zheng and Xin Zheng", title = "Secure {Web} application via automatic partitioning", journal = j-OPER-SYS-REV, volume = "41", number = "6", pages = "31--44", month = dec, year = "2007", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1323293.1294265", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:18:34 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Swift is a new, principled approach to building web applications that are secure by construction. In modern web applications, some application functionality is usually implemented as client-side code written in JavaScript. Moving code and data to the client can create security vulnerabilities, but currently there are no good methods for deciding when it is secure to do so. Swift automatically partitions application code while providing assurance that the resulting placement is secure and efficient. Application code is written as Java-like code annotated with information flow policies that specify the confidentiality and integrity of web application information. The compiler uses these policies to automatically partition the program into JavaScript code running in the browser, and Java code running on the server. To improve interactive performance, code and data are placed on the client side. However, security-critical code and data are always placed on the server. Code and data can also be replicated across the client and server, to obtain both security and performance. A max-flow algorithm is used to place code and data in a way that minimizes client-server communication.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "compilers; information flow; security policies", } @Article{Collberg:2007:ESJ, author = "Christian Collberg and Ginger Myles and Michael Stepp", title = "An empirical study of {Java} bytecode programs", journal = j-SPE, volume = "37", number = "6", pages = "581--641", month = may, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.776", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:15 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "24 Oct 2006", } @Article{Contreras:2007:XPP, author = "Gilberto Contreras and Margaret Martonosi and Jinzhang Peng and Guei-Yuan Lueh and Roy Ju", title = "The {XTREM} power and performance simulator for the {Intel XScale} core: {Design} and experiences", journal = j-TECS, volume = "6", number = "1", pages = "4:1--4:??", month = feb, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1145/1210268.1210272", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Jun 12 15:20:58 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Managing power concerns in microprocessors has become a pressing research problem across the domains of computer architecture, CAD, and compilers. As a result, several parameterized cycle-level power simulators have been introduced. While these simulators can be quite useful for microarchitectural studies, their generality limits how accurate they can be for any one chip family. Furthermore, their hardware focus means that they do not explicitly enable studying the interaction of different software layers, such as Java applications and their underlying runtime system software. This paper describes and evaluates XTREM, a power-simulation tool tailored for the Intel XScale microarchitecture. In building XTREM, our goals were to develop a microarchitecture simulator that, while still offering size parameterizations for cache and other structures, more accurately reflected a realistic processor pipeline. We present a detailed set of validations based on multimeter power measurements and hardware performance counter sampling. XTREM exhibits an average performance error of only 6.5\% and an even smaller average power error: 4\%. The paper goes on to present an application study enabled by the simulator. Namely, we use XTREM to produce an energy consumption breakdown for Java CDC and CLDC applications. Our simulator measurements indicate that a large percentage of the total energy consumption (up to 35\%) is devoted to the virtual machine's support functions.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "Intel XScale technology; Java; power measurements; power modeling", } @Article{Counsell:2007:QMD, author = "Steve Counsell and George Loizou and Rajaa Najjar", title = "Quality of manual data collection in {Java} software: an empirical investigation", journal = j-EMPIR-SOFTWARE-ENG, volume = "12", number = "3", pages = "275--293", month = jun, year = "2007", CODEN = "ESENFW", DOI = "https://doi.org/10.1007/s10664-006-9028-y", ISSN = "1382-3256 (print), 1573-7616 (electronic)", ISSN-L = "1382-3256", bibdate = "Fri Dec 2 09:14:01 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/empir-software-eng.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/accesspage/article/10.1007/s10664-006-9028-y", acknowledgement = ack-nhfb, fjournal = "Empirical Software Engineering", journal-URL = "http://link.springer.com/journal/10664", } @Article{Cross:2007:DOV, author = "James H. {Cross II} and T. Dean Hendrix and Jhilmil Jain and Larry A. Barowski", title = "Dynamic object viewers for data structures", journal = j-SIGCSE, volume = "39", number = "1", pages = "4--8", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227316", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The jGRASP lightweight IDE has been extended to provide object viewers that automatically generate dynamic, state-based visualizations of data structures in Java. These viewers provide multiple synchronized visualizations of data structures as the user steps through the source code in either debug or workbench mode. This tight integration in a lightweight IDE provides a unique and promising environment for learning data structures. Initial classroom use has demonstrated the object viewers' potential as an aid to students who are learning to write and modify classes representing data structures. Recently completed controlled experiments with CS2 students indicate that these viewers can have a significant positive impact on student performance.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Curioso:2007:AP, author = "Andrew G. Curioso", title = "{Ajax} with {PHP 5}", publisher = pub-ORA, address = pub-ORA:adr, year = "2007", ISBN = "0-596-51403-4", ISBN-13 = "978-0-596-51403-7", LCCN = "TK5105.8885.A52 C87 2007eb; TK5105.8885.A52", bibdate = "Tue Aug 5 17:56:38 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596514037", acknowledgement = ack-nhfb, subject = "Ajax (Web site development technology); JavaScript (Computer program language); PHP (Computer program language); Web site development", } @Book{Darwin:2007:CJP, author = "Ian F. Darwin", title = "Checking {Java} programs", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "54", year = "2007", ISBN = "0-596-51023-3", ISBN-13 = "978-0-596-51023-7", LCCN = "QA76.73.J38eb; QA76.73.J38", bibdate = "Tue Aug 5 17:54:02 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596510237", acknowledgement = ack-nhfb, remark = "Released: March 30, 2007", subject = "Java (Computer program language)", tableofcontents = "What it's not about \\ It usually begins with javac \\ Making your IDE work harder \\ Source code checking with PMD \\ Static (class file) checking with FindBugs \\ Dynamic checking with NASA's Java PathFinder \\ What's next?", } @Book{Deitel:2007:JHP, author = "Paul J. Deitel and Paul J. Deitel", title = "{Java}: how to program", publisher = "Pearson Prentice Hall", address = "Upper Saddle River, NJ, USA", edition = "Seventh", pages = "xliv + 1596", year = "2007", ISBN = "0-13-222220-5", ISBN-13 = "978-0-13-222220-4", LCCN = "QA76.73.J38 D45 2007", bibdate = "Tue May 12 16:32:52 MDT 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/unicode.bib; z3950.loc.gov:7090/Voyager", series = "How to program series", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", tableofcontents = "Introduction to computers, the Internet and the Web \\ Introduction to Java applications \\ Introduction to classes and objects \\ Control statements: part 1 \\ Control statements: part 2 \\ Methods: a deeper look \\ Arrays \\ Classes and objects: a deeper look \\ Object-oriented programming: inheritance \\ Object-oriented programming: polymorphism \\ GUI components: part 1 \\ Graphics and Java 2D \\ Exception handling \\ Files and streams \\ Recursion \\ Searching and sorting \\ Data structures \\ Generics \\ Collections \\ Introduction to Java applets \\ Multimedia: applets and applications \\ GUI components: part 2 \\ Multithreading \\ Networking \\ Accessing databases with JDBC \\ Web applications: part 1 \\ Web applications: part 2 \\ JAX-WS Web services \\ Formatted output \\ Strings, characters and regular expressions \\ A. Operator precedence chart \\ B. ASCII character set \\ C. Keywords and reserved words \\ D. Primitive types \\ E. Number systems \\ F. GroupLayout \\ G. Java desktop integration components (JDIC) \\ H. Mashups \\ Web bonus appendices \\ I. Unicode \\ J. Using the Java API documentation \\ K. Creating documentation with javadoc \\ L. Bit manipulation \\ M. ATM case study code \\ N. Labeled break and continue statements \\ O. UML 2: additional diagram types \\ P. Design patterns \\ Q. Using the debugger", } @Article{Distasio:2007:ICS, author = "Joseph Distasio and Thomas Way", title = "Inclusive computer science education using a ready-made computer game framework", journal = j-SIGCSE, volume = "39", number = "3", pages = "116--120", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268820", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "Leveraging the prevailing interest in computer games among college students, both for entertainment and as a possible career path, is a major reason for the increasing prevalence of computer game design courses in computer science curricula. Because implementing a computer game requires strong programming skills, game design courses are most often restricted to more advanced computer science students, yet real game design involves a diverse and creative team. This paper reports on a ready-made game design and experimentation framework, implemented in Java, which makes game programming more widely accessible. This framework, called Labyrinth, enables students at all programming skill levels to participate in computer game design. We describe the architecture of the framework, and discuss programming projects suitable for a wide variety of computer science courses, from capstone to non-major.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Dorin:2007:LR, author = "Philip M. Dorin", title = "Laboratory redux", journal = j-SIGCSE, volume = "39", number = "2", pages = "84--87", month = jun, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1272848.1272891", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:35 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#Dorin07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "This article updates our earlier experiences with a Programming Laboratory. It appears between an introductory programming course and a two-semester sophomore sequence in data structures and algorithms. Although it was once organized around the notion of algorithm paradigms (with Ada as the implementation language), it has de-volved into a course that stresses fundamentals of programming (with Java as our programming language). Classes and objects, and the design and implementation of unit tests, are now considered to be part of the basic repertoire, and they receive significant attention in the new format.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Draganova:2007:TAW, author = "Chrisina Draganova and Vassil Vassilev", title = "Teaching {AJAX} in {Web}-centric courses", journal = j-SIGCSE, volume = "39", number = "3", pages = "311--311", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268877", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "Asynchronous JavaScript and XML (AJAX) is a web development technique for building responsive web applications behaving in a similar fashion to traditional desktop applications. This poster illustrates ideas for teaching the AJAX technique in web-centric courses based on the experience of implementing these ideas at London Metropolitan University and provides links to resources appropriate for use in laboratorial work.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Drechsler:2007:YSL, author = "R. L. Drechsler and J. M. Mocenigo", title = "The {Yoix\reg{}} scripting language: a different way of writing {Java} {\TM} applications", journal = j-SPE, volume = "37", number = "6", pages = "643--667", month = may, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.784", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:15 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "2 Nov 2006", } @Article{Eberhard:2007:MOC, author = "John Eberhard and Anand Tripathi", title = "Mechanisms for object caching in distributed applications using {Java RMI}", journal = j-SPE, volume = "37", number = "8", pages = "799--831", day = "10", month = jul, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.783", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:15 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "2 Nov 2006", } @Article{Ekman:2007:JEJ, author = "Torbj{\"o}rn Ekman and G{\"o}rel Hedin", title = "The {JastAdd} Extensible {Java} compiler", journal = j-SIGPLAN, volume = "42", number = "10", pages = "1--18", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297029", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The JastAdd Extensible Java Compiler is a high quality Java compiler that is easy to extend in order to build static analysis tools for Java, and to extend Java with new language constructs. It is built modularly, with a Java 1.4 compiler that is extended to a Java 5 compiler. Example applications that are built as extensions include an alternative backend that generates Jimple, an extension of Java with AspectJ constructs, and the implementation of a pluggable type system for non-null checking and inference.\par The system is implemented using JastAdd, a declarative Java-like language. We describe the compiler architecture, the major design ideas for building and extending the compiler, in particular, for dealing with complex extensions that affect name and type analysis. Our extensible compiler compares very favorably concerning quality, speed and size with other extensible Java compiler frameworks. It also compares favorably in quality and size compared with traditional non-extensible Java compilers, and it runs within a factor of three compared to javac.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compilers; declarative frameworks; extensibility; Java; modularity; OOP", } @Article{Elkarablieh:2007:SSA, author = "Bassem Elkarablieh and Sarfraz Khurshid and Duy Vu and Kathryn S. McKinley", title = "{STARC}: static analysis for efficient repair of complex data", journal = j-SIGPLAN, volume = "42", number = "10", pages = "387--404", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297056", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Data structure corruptions are insidious bugs that reduce the reliability of software systems. Constraint-based datastructure repair promises to help programs recover from potentially crippling corruption errors. Prior work repairs a variety of relatively small data structures, usually with hundreds of nodes.\par We present STARC which uses static analysis to repair data structures with tens of thousands of nodes. Given a Java predicate method that describes the integrity constraints of a structure, STARC statically analyzes the method to identify: (1) the recurrent fields, i.e., fields that the predicate method uses to traverse the structure; and (2) local field constraints, i.e., how the value of an object field is related to the value of a neighboring object field. STARC executes the predicate method on the structure and monitors its execution to identify corrupt object fields, which STARC then repairs using a systematic search of a neighborhood of the given structure. Each repair action is guided by the result of the static analysis, which enables more efficient and effective repair compared to prior work. Experimental results show that STARC can repair structures with tens of thousands of nodes, up to 100 times larger than prior work.\par STARC efficiency is probably not practical for very large data structures in deployed systems, but opens a promising direction for future work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "data structure repair; static analysis; symbolic execution", } @Article{Elmas:2007:GRT, author = "Tayfun Elmas and Shaz Qadeer and Serdar Tasiran", title = "{Goldilocks}: a race and transaction-aware {Java} runtime", journal = j-SIGPLAN, volume = "42", number = "6", pages = "245--255", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273442.1250762", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Data races often result in unexpected and erroneous behavior. In addition to causing data corruption and leading programs to crash, the presence of data races complicates the semantics of an execution which might no longer be sequentially consistent. Motivated by these observations, we have designed and implemented a Java runtime system that monitors program executions and throws a DataRaceException when a data race is about to occur. Analogous to other runtime exceptions, the DataRaceException provides two key benefits. First, accesses causing race conditions are interrupted and handled before they cause errors that may be difficult to diagnose later. Second, if no DataRaceException is thrown in an execution, it is guaranteed to be sequentially consistent. This strong guarantee helps to rule out many concurrency-related possibilities as the cause of erroneous behavior. When a DataRaceException is caught, the operation, thread, or program causing it can be terminated gracefully. Alternatively, the DataRaceException can serve as a conflict-detection mechanism in optimistic uses of concurrency.\par We start with the definition of data-race-free executions in the Java memory model. We generalize this definition to executions that use transactions in addition to locks and volatile variables for synchronization. We present a precise and efficient algorithm for dynamically verifying that an execution is free of data races. This algorithm generalizes the Goldilocks algorithm for data-race detection by handling transactions and providing the ability to distinguish between read and write accesses. We have implemented our algorithm and the DataRaceException in the Kaffe Java Virtual Machine. We have evaluated our system on a variety of publicly available Java benchmarks and a few microbenchmarks that combine lock-based and transaction-based synchronization. Our experiments indicate that our implementation has reasonable overhead. Therefore, we believe that in addition to being a debugging tool, the DataRaceException may be a viable mechanism to enforce the safety of executions of multithreaded Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "data-race detection; Java runtime; runtime monitoring; software transactions", } @Article{Emmi:2007:LA, author = "Michael Emmi and Jeffrey S. Fischer and Ranjit Jhala and Rupak Majumdar", title = "Lock allocation", journal = j-SIGPLAN, volume = "42", number = "1", pages = "291--296", month = jan, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1190216.1190260", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:53:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We introduce lock allocation, an automatic technique that takes a multi-threaded program annotated with atomic sections (that must be executed atomically), and infers a lock assignment from global variables to locks and a lock instrumentation that determines where each lock should be acquired and released such that the resulting instrumented program is guaranteed to preserve atomicity and deadlock freedom (provided all shared state is accessed only within atomic sections). Our algorithm works in the presence of pointers and procedures, and sets up the lock allocation problem as a 0-1 ILP which minimizes the conflict cost between atomic sections while simultaneously minimizing the number of locks. We have implemented our algorithm for both C with pthreads and Java, and have applied it to infer locks in 15K lines of AOLserver code. Our automatic allocation produces the same results as hand annotations for most of this code, while solving the optimization instances within a second for most programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "atomicity; ILP; lock inference", } @Article{Erkan:2007:DSV, author = "Ali S. Erkan and T. J. VanSlyke and Timothy M. Scaffidi", title = "Data structure visualization with {\LaTeX} and {Prefuse}", journal = j-SIGCSE, volume = "39", number = "3", pages = "301--305", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268870", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "We report two ways with which data structures as well as their algorithmic operations can be visualized. The first method uses LaTeX to automatically generate diagrammatic presentation material from extended versions of the Java implementations of well-known ADTs. The second method uses the Prefuse API to explore objects created in running Java programs.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Fahndrich:2007:EOI, author = "Manuel Fahndrich and Songtao Xia", title = "Establishing object invariants with delayed types", journal = j-SIGPLAN, volume = "42", number = "10", pages = "337--350", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297052", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Mainstream object-oriented languages such as C\# and Java provide an initialization model for objects that does not guarantee programmer controlled initialization of fields. Instead, all fields are initialized to default values (0 for scalars and null for non-scalars) on allocation. This is in stark contrast to functional languages, where all parts of an allocation are initialized to programmer-provided values. These choices have a direct impact on two main issues: 1) the prevalence of null in object oriented languages (and its general absence in functional languages), and 2) the ability to initialize circular data structures. This paper explores connections between these differing approaches and proposes a fresh look at initialization. Delayed types are introduced to express and formalize prevalent initialization patterns in object-oriented languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "initialization; non-null types; object invariants", } @Article{Feinberg:2007:VOO, author = "Dave Feinberg", title = "A visual object-oriented programming environment", journal = j-SIGCSE, volume = "39", number = "1", pages = "140--144", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227363", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper explores both the design and classroom usage of a visual and interactive programming environment. This environment, named JavaTown, provides a visual representation of the inner workings of object-oriented programs, in which on-screen characters are literally depicted as carrying messages to each other and remembering values. JavaTown was created to aid in the introduction of some of the most elusive concepts in the CS1/CS2 curriculum: object references, parameter passing, variable scope, recursion, and linked lists.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Ferguson:2007:CCM, author = "Arron Ferguson", title = "Creating content management systems in {Java}", publisher = pub-CHARLES-RIVER-MEDIA, address = pub-CHARLES-RIVER-MEDIA:adr, pages = "????", year = "2007", ISBN = "1-58450-466-8 (paperback)", ISBN-13 = "978-1-58450-466-5 (paperback)", LCCN = "TK6680.5 .M38 2004", bibdate = "Mon Oct 2 05:44:13 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", note = "Includes CD-ROM.", URL = "http://www.loc.gov/catdir/toc/ecip0612/2006012903.html", acknowledgement = ack-nhfb, subject = "Digital media; Management; Multimedia systems; Java (Computer program language)", xxnote = "Check spelling of author name.", } @Book{Fitzgerald:2007:GAS, author = "Michael Fitzgerald", title = "{Google Ajax} search {API}", publisher = pub-ORA, address = pub-ORA:adr, year = "2007", ISBN = "0-596-52953-8", ISBN-13 = "978-0-596-52953-6", LCCN = "TK5105.8885.A52 F58 2007eb; TK5105.8885.A52", bibdate = "Tue Aug 5 18:11:36 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596529536", acknowledgement = ack-nhfb, subject = "Google; Ajax (Web site development technology); Java (Computer program language)", } @Article{Fleissner:2007:EAA, author = "Sebastian Fleissner and Elisa L. A. Baniassad", title = "Epi-aspects: aspect-oriented conscientious software", journal = j-SIGPLAN, volume = "42", number = "10", pages = "659--674", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297076", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Conscientious software is a recently proposed paradigm for developing reliable, self-sustaining software systems. Conscientious software systems consist of an allopoietic part, which encapsulates application functionality, and an autopoietic part that is responsible for keeping the system alive by monitoring the application and adapting it to environmental changes. Practical application of the conscientious software paradigm requires solutions to two open problems: The design of suitable autopoietic programming languages and the proposal of concrete architectures for combining the autopoietic and allopoietic parts. In this paper, we tackle the second challenge, and propose a concrete, aspect-oriented architecture for realizing conscientious software. Here, we introduce epi-aspects, a construct for upgrading new and existing applications into conscientious software. This paper provides the architectural design of epi-aspects, an autopoietic simulator, and a concrete framework for developing epi-aspects in Java. The framework and the simulator are used to conduct a case study in which we develop and test a conscientious Java application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspect-oriented programming; conscientious software", } @Article{Frenzel:2007:ERB, author = "Leif Frenzel", title = "Experience report: building an eclipse-based {IDE} for {Haskell}", journal = j-SIGPLAN, volume = "42", number = "9", pages = "220--222", month = sep, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1291151.1291186", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:59:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper summarizes experiences from an open source project that builds a free Haskell IDE based on Eclipse (an open source IDE platform). Eclipse is extensible and has proved to be a good basis for IDEs for several programming languages. Difficulties arise mainly because it is written in Java and requires extensions to be written in Java. This made it hard to reuse existing development tools implemented in Haskell, and turned out to be a considerable obstacle to finding contributors. Several approaches to resolve these issues are described and their advantages and disadvantages discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Frost:2007:FGC, author = "Daniel Frost", title = "Fourth grade computer science", journal = j-SIGCSE, volume = "39", number = "1", pages = "302--306", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227417", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We describe a module, or sequence of lessons, that has been successfully used to teach basic elements of computer science to fourth grade students. The module was designed to reflect a firm grounding in computer science, to be age-appropriate, to be easily installed in schools, and to support a range of teachers. Over 300 students in grades three through six have taken this module or a related module. The programming language used is a modern variant of Logo called VVLogo, which students access through a Java applet on a web page.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Gabarro:2007:WAD, author = "Steven A. Gabarr{\'o}", title = "{Web} application design and implementation: {Apache 2}, {PHP5}, {MySQL}, {JavaScript}, and {Linux\slash Unix}", publisher = pub-WILEY, address = pub-WILEY:adr, pages = "xv + 295", year = "2007", ISBN = "0-471-77391-3 (cloth)", ISBN-13 = "978-0-471-77391-7 (cloth)", LCCN = "TK5105.8883 .G33 2007", bibdate = "Wed Jun 25 17:32:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Quantitative software engineering series", URL = "http://www.loc.gov/catdir/toc/ecip0613/2006014999.html", acknowledgement = ack-nhfb, subject = "Web site development; Web sites; Design; Application software; Development", } @Article{Gabay:2007:CJR, author = "Yarom Gabay and Assaf J. Kfoury", title = "A calculus for {Java}'s reference objects", journal = j-SIGPLAN, volume = "42", number = "8", pages = "9--17", month = aug, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1294297.1294299", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:59:24 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java's Reference objects provide the programmer with limited control over the process of memory management. Although reference objects are often helpful, they introduce nondeterminism into program evaluation and lead to ambiguous program outcome. In this paper we present a calculus to formally reason about Java's Reference objects. We model multiple levels of reference objects in a single calculus and apply a different garbage collection policy to each one of them. Accordingly, weak references are given the semantics of eager collection and soft references are given the semantics of lazy collection. In addition, we constrain garbage collection with the scarcity of two resources: time and space. We demonstrate the viability of our calculus by modeling a Java program which addresses a commonly-encountered caching problem. Using our model, we reason about the program's evaluation and interaction with the garbage collector.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "formal languages; garbage collection; Java reference objects; weak references", } @Book{Geary:2007:CJF, author = "David M. Geary and Cay S. Horstmann", title = "Core {JavaServer} faces", publisher = pub-PH, address = pub-PH:adr, edition = "Second", pages = "xx + 723", year = "2007", ISBN = "0-13-173886-0 (paperback)", ISBN-13 = "978-0-13-173886-7 (paperback)", LCCN = "TK5105.8885.J38 G433 2007", bibdate = "Tue Jan 27 16:12:11 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip0711/2007006830.html", acknowledgement = ack-nhfb, subject = "JavaServer pages; Web site development; Web sites; Design", } @Article{Genaud:2007:PMP, author = "St{\'e}phane Genaud and Choopan Rattanapoka", title = "{P2P--MPI}: a Peer-to-Peer Framework for Robust Execution of Message Passing Parallel Programs on {Grids}", journal = j-J-GRID-COMP, volume = "5", number = "1", pages = "27--42", month = mar, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1007/s10723-006-9056-2", ISSN = "1570-7873 (print), 1572-9184 (electronic)", ISSN-L = "1570-7873", bibdate = "Wed Jul 9 17:01:30 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1570-7873&volume=5&issue=1; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1570-7873&volume=5&issue=1&spage=27", acknowledgement = ack-nhfb, fjournal = "Journal of Grid Computing", journal-URL = "http://link.springer.com/journal/10723", keywords = "Grid; Java; Key words; middleware; MPI; peer-to-peer", } @Article{Georges:2007:SRJ, author = "Andy Georges and Dries Buytaert and Lieven Eeckhout", title = "Statistically rigorous {Java} performance evaluation", journal = j-SIGPLAN, volume = "42", number = "10", pages = "57--76", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297033", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java performance is far from being trivial to benchmark because it is affected by various factors such as the Java application, its input, the virtual machine, the garbage collector, the heap size, etc. In addition, non-determinism at run-time causes the execution time of a Java program to differ from run to run. There are a number of sources of non-determinism such as Just-In-Time (JIT) compilation and optimization in the virtual machine (VM) driven by timer-based method sampling, thread scheduling, garbage collection, and various.\par There exist a wide variety of Java performance evaluation methodologies used by researchers and benchmarkers. These methodologies differ from each other in a number of ways. Some report average performance over a number of runs of the same experiment; others report the best or second best performance observed; yet others report the worst. Some iterate the benchmark multiple times within a single VM invocation; others consider multiple VM invocations and iterate a single benchmark execution; yet others consider multiple VM invocations and iterate the benchmark multiple times.\par This paper shows that prevalent methodologies can be misleading, and can even lead to incorrect conclusions. The reason is that the data analysis is not statistically rigorous. In this paper, we present a survey of existing Java performance evaluation methodologies and discuss the importance of statistically rigorous data analysis for dealing with non-determinism. We advocate approaches to quantify startup as well as steady-state performance, and, in addition, we provide the JavaStats software to automatically obtain performance numbers in a rigorous manner. Although this paper focuses on Java performance evaluation, many of the issues addressed in this paper also apply to other programming languages and systems that build on a managed runtime system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "benchmarking; data analysis; Java; methodology; statistics", } @Article{Gestwicki:2007:CGM, author = "Paul V. Gestwicki", title = "Computer games as motivation for design patterns", journal = j-SIGCSE, volume = "39", number = "1", pages = "233--237", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227391", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "We present a computer game case study that can be used to motivate the need for design patterns. Design patterns are often misunderstood, but good examples can motivate students to work at understanding patterns. Computer games are used in many books and online resources to teach programming concepts, but these examples are usually simplified or non-object-oriented. We present a simple game that exhibits functionality found in commercial games (animation, collision detection, etc.) and show how it can be used as a case study for design patterns. Specifically, we illustrate how the state, facade, observer, strategy, and visitor patterns can replace procedural approaches for implementing the logic and animation of game written in Java.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Goodman:2007:JDC, author = "Danny Goodman", title = "{JavaScript} and {DHTML} cookbook", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xx + 582", year = "2007", ISBN = "0-596-51408-5 (paperback)", ISBN-13 = "978-0-596-51408-2 (paperback)", LCCN = "QA76.73.J39 G63 2007eb; QA76.73.J39 G63 2007; QA76.73.J39", bibdate = "Tue Aug 5 17:56:49 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596514082", abstract = "Offers problems, solutions, and examples for readers using JavaScript and DHTML in Web pages, covering topics such as interactive forms, user-friendly navigation, dynamic and stationary content, and frames.", acknowledgement = ack-nhfb, remark = "Previous edition 2003.", subject = "JavaScript (Computer program language); DHTML (Document markup language); Internet programming", } @Article{Gravvanis:2007:PPA, author = "George A. Gravvanis and Victor N. Epitropou and Konstantinos M. Giannoutakis", title = "On the performance of parallel approximate inverse preconditioning using {Java} multithreading techniques", journal = j-APPL-MATH-COMP, volume = "190", number = "1", pages = "255--270", day = "1", month = jul, year = "2007", CODEN = "AMHCBQ", ISSN = "0096-3003 (print), 1873-5649 (electronic)", ISSN-L = "0096-3003", bibdate = "Sat Jul 12 09:03:06 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/00963003", acknowledgement = ack-nhfb, fjournal = "Applied Mathematics and Computation", journal-URL = "http://www.sciencedirect.com/science/journal/00963003", } @Article{Greenfieldboyce:2007:TQI, author = "David Greenfieldboyce and Jeffrey S. Foster", title = "Type qualifier inference for {Java}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "321--336", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297051", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java's type system provides programmers with strong guarantees of type and memory safety, but there are many important properties not captured by standard Java types. We describe JQual, a tool that adds user-defined type qualifiers to Java, allowing programmers to quickly and easily incorporate extra lightweight, application-specific type checking into their programs. JQual provides type qualifier inference, so that programmers need only add a few key qualifier annotations to their program, and then JQual infers any remaining qualifiers and checks their consistency. We explore two applications of JQual. First, we introduce opaque and enum qualifiers to track C pointers and enumerations that flow through Java code via the JNI. In our benchmarks we found that these C values are treated correctly, but there are some places where a client could potentially violate safety. Second,we introduce a read only qualifier for annotating references that cannot be used to modify the objects they refer to. We found that JQual is able to automatically infer read only in many places on method signatures. These results suggest that type qualifiers and type qualifier inference are a useful addition to Java.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "context-free language reachability; context-sensitivity; field-sensitivity; Java; JQual; mutable; opaque; readonly; tracked; transparent; type qualifiers", } @Article{Guha:2007:CIF, author = "Rajarshi Guha", title = "Chemical Informatics Functionality in {R}", journal = j-J-STAT-SOFT, volume = "18", number = "5", pages = "1--16", month = jan, year = "2007", CODEN = "JSSOBK", ISSN = "1548-7660", bibdate = "Fri Jul 4 10:54:15 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/v18/i05", abstract = "The flexibility and scope of the R programming environment has made it a popular choice for statistical modeling and scientific prototyping in a number of fields. In the field of chemistry, R provides several tools for a variety of problems related to statistical modeling of chemical information. However, one aspect common to these tools is that they do not have direct access to the information that is available from chemical structures, such as contained in molecular descriptors.\par We describe the rcdk package that provides the R user with access to the CDK, a Java framework for cheminformatics. As a result, it is possible to read in a variety of molecular formats, calculate molecular descriptors and evaluate fingerprints. In addition, we describe the rpubchem that will allow access to the data in PubChem, a public repository of molecular structures and associated assay data for approximately 8 million compounds. Currently, the package allows access to structural information as well as some simple molecular properties from PubChem. In addition the package allows access to bio-assay data from the PubChem FTP servers.", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", pubdates = "Submitted 2006-09-25; Accepted 2007-01-01", } @Book{Halloway:2007:RJD, author = "Stuart Dabbs Halloway and Justin Gehtland", title = "{Rails} for {Java} developers", publisher = pub-PRAGMATIC-BOOKSHELF, address = pub-PRAGMATIC-BOOKSHELF:adr, pages = "xix + 311", year = "2007", ISBN = "0-9776166-9-X", ISBN-13 = "978-0-9776166-9-5", LCCN = "QA76.73.R83 H35 2007", bibdate = "Tue Aug 5 18:16:12 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Pragmatic programmers; Facets of Ruby series", URL = "http://www.loc.gov/catdir/toc/fy0709/2007273022.html; http://www.oreilly.com/catalog/9780977616695", acknowledgement = ack-nhfb, remark = "Includes bibliographical references (p. [293]) and index.", subject = "Ruby (Computer program language); Java (Computer program language); Object-oriented programming (Computer science)", } @Article{Hamada:2007:WBT, author = "Mohamed Hamada", title = "{Web}-based tools for active learning in information theory", journal = j-SIGCSE, volume = "39", number = "1", pages = "60--64", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227332", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The idea of using web-based technologies in education as a means of interactive learning has been emerging for several topics in computer science and engineering. It proves to be more effective in the learning process and hence rapidly expanding. In this paper we introduce an integrated environment for active learning in the information theory course and related fields. Our environment is designed to meet the learning preferences of computer engineering learners. The environment integrates several different materials to support the learners' preferred style. It includes a movie-like welcome component, an animated hyper-text introduction for the basic concepts of information theory, a communication model simulator, and an interactive set of exercises for self assessment. All the components of the environment are integrated into a single interface based on Java2D of Sun Microsysts. Being a Java applet, our environment is portable and web-based enabled, which makes it possible for learners to study at their convenience. An initial study shows that our integrated environment is a useful tool for learners of information theory and related fields.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Hayes:2007:IAA, author = "Alan Hayes and Pete Thomas and Neil Smith and Kevin Waugh", title = "An investigation into the automated assessment of the design-code interface", journal = j-SIGCSE, volume = "39", number = "3", pages = "324--324", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268891", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "In this paper, we present an investigation into the development of a framework for the automatic grading (marking) of student submitted course work. We discuss this framework, its structure and its subsystems. Our framework has been developed in the context of the student submission consisting of two components: a design (using the UML methodology) and source code (using the Java programming language). The focus of our framework is upon the consistency between the student code and design. We discuss its context and development and highlight how we can infer structure from the student submission and use this to inform the assessment process. We describe the approach we are currently undertaking to instantiate this framework and apply it to work submitted for assessment by undergraduate computing students.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Heckler:2007:BRB, author = "Charles E. Heckler", title = "Book Review: {{\booktitle{Correspondence Analysis and Data Coding with Java and R}} by Fionn Murtagh}", journal = j-TECHNOMETRICS, volume = "49", number = "1", pages = "100--100", month = feb, year = "2007", CODEN = "TCMTA2", DOI = "https://doi.org/10.2307/25471279", ISSN = "0040-1706 (print), 1537-2723 (electronic)", ISSN-L = "0040-1706", bibdate = "Sat Jun 21 13:21:15 MDT 2014", bibsource = "http://www.jstor.org/journals/00401706.html; http://www.jstor.org/stable/i25471268; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/s-plus.bib; https://www.math.utah.edu/pub/tex/bib/technometrics2000.bib", URL = "http://www.jstor.org/stable/25471279", acknowledgement = ack-nhfb, fjournal = "Technometrics", journal-URL = "http://www.jstor.org/journals/00401706.html", } @Book{Heffelfinger:2007:JED, author = "David R. Heffelfinger", title = "{Java EE 5} development using {Glassfish} application server", publisher = "Packt", address = "Birmingham, UK", pages = "408", year = "2007", ISBN = "1-84719-260-2", ISBN-13 = "978-1-84719-260-8", LCCN = "????", bibdate = "Tue Jan 27 16:24:37 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", acknowledgement = ack-nhfb, remark = "The complete guide to installing and configuring the Glassfish application server and developing Java EE 5 applications to be deployed to this server.", } @Article{Helmick:2007:IBP, author = "Michael T. Helmick", title = "Interface-based programming assignments and automatic grading of {Java} programs", journal = j-SIGCSE, volume = "39", number = "3", pages = "63--67", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268805", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "AutoGrader is a framework developed at Miami University for the automatic grading of student programming assignments written in the Java programming language. AutoGrader leverages the abstract concept of interfaces, as implemented by the Java interface language construct, in both the assignment and grading of programming assignments. The use of interfaces reinforces the role of procedural abstraction in object-oriented programming and allows for a common API to all student code. This common API then enables automatic grading of program functionality. AutoGrader provides a simple instructor API and enables the automatic testing of student code through the Java language features of interfaces and reflection. AutoGrader also supports static code analysis using PMD [4] to detect possible bugs, dead code, suboptimal, and overcomplicated code. While AutoGrader is written in and only handles Java programs, this style of automated grading is adaptable to any language that supports (or can mimic) named interfaces and/or abstract functions and that also supports runtime reflection.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Helmick:2007:IOC, author = "Michael T. Helmick", title = "Integrated online courseware for computer science courses", journal = j-SIGCSE, volume = "39", number = "3", pages = "146--150", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268828", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "Computer Science CourseWare (CSCW) is a Web-based integrated online courseware system for the management of computer science courses developed by the Miami University Department of Computer Science and Systems Analysis. The system is designed to support a unified student experience for content delivery and programming (and general) assignment management. CSCW promotes incremental development through rapid feedback for students with its integrated Java style checking (using PMD [2]) and automatic grading capabilities. CSCW integrates with existing version control infrastructure (using Subversion [4]) and authentication infrastructure (LDAP or custom plug-in) to minimize administration. Paperless handling of programming assignments is encouraged with the ability for precise feedback to be entered by instructors for student consumption. CSCW focuses on the needs of courses using computer programs as a primary assessment measure. CSCW is actively being used at Miami University.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Henkel:2007:DDJ, author = "J. Henkel and C. Reichenbach and A. Diwan", title = "Discovering Documentation for {Java} Container Classes", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "33", number = "8", pages = "526--543", month = aug, year = "2007", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2007.70705", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See errata \cite{Henkel:2008:EDD}.", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4267024", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Higuchi:2007:STS, author = "Tomoyuki Higuchi and Atsushi Ohori", title = "A static type system for {JVM} access control", journal = j-TOPLAS, volume = "29", number = "1", pages = "4:1--4:42", month = jan, year = "2007", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1180475.1180479", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Sat Apr 14 11:13:22 MDT 2007", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Hirzel:2007:DLO, author = "Martin Hirzel", title = "Data layouts for object-oriented programs", journal = j-SIGMETRICS, volume = "35", number = "1", pages = "265--276", month = jun, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1145/1269899.1254915", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Fri Jun 27 09:42:48 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Object-oriented programs rely heavily on objects and pointers, making them vulnerable to slow downs from cache and TLB misses. The cache and TLB behavior depends on the data layout of objects in memory. There are many possible data layouts with different impacts on performance, but it is not known which perform better. This paper presents a novel framework for evaluating data layouts. The framework both makes implementing many layouts easy, and enables performance measurements of real programs using a product Java virtual machine on stock hardware. This is achieved by sorting objects during copying garbage collection; outside of garbage collection, program performance is solely determined by the data layout that the sort key implements. This paper surveys and evaluates 10 common data layouts with 32 realistic bench mark programs running on 3 different hardware configurations. The results confirm the importance of data layouts for program performance, and show that almost all layouts yield the best performance for some programs and the worst performance for others.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", keywords = "cache; data layout; data placement; GC; hardware performance counters; memory subsystem; spatial locality; TLB", } @Article{Hirzel:2007:JGJ, author = "Martin Hirzel and Robert Grimm", title = "{Jeannie}: granting {Java Native Interface} developers their wishes", journal = j-SIGPLAN, volume = "42", number = "10", pages = "19--38", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297030", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Higher-level languages interface with lower-level languages such as C to access platform functionality, reuse legacy libraries, or improve performance. This raises the issue of how to best integrate different languages while also reconciling productivity, safety, portability, and efficiency. This paper presents Jeannie, a new language design for integrating Java with C. In Jeannie, both Javaand C code are nested within each other in the same file and compile down to JNI, the Java platform's standard foreign function interface. By combining the two languages' syntax and semantics, Jeannie eliminates verbose boiler-plate code, enables static error detection across the language boundary, and simplifies dynamic resource management. We describe the Jeannie language and its compiler, while also highlighting lessons from composing two mature programming languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "C; foreign function interface; Java; JNI; modular syntax; programming language composition; rats!; xtc", } @Article{Hong:2007:JCA, author = "SungHyun Hong and Jin-Chul Kim and Jin Woo Shin and Soo-Mook Moon and Hyeong-Seok Oh and Jaemok Lee and Hyung-Kyu Choi", title = "{Java} client ahead-of-time compiler for embedded systems", journal = j-SIGPLAN, volume = "42", number = "7", pages = "63--72", month = jul, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1254766.1254776", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:57:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The performance of embedded Java virtual machine can be improved by ahead-of-time compiler (AOTC), which translates bytecode into machine code in the server and installs the machine code on the client device. Although AOTC is more advantageous than just-in-time compiler (JITC) due to its absence of the translation overhead, AOTC cannot be applicable to dynamically downloaded classes at runtime. This paper proposes client-AOTC (c-AOTC) which performs AOTC on the client device using the JITC module installed on the device, complementing the server-AOTC. The machine code of a method translated by JITC is cached on a persistent memory of the device, and when the method is invoked again in a later run of the program, the machine code is loaded and executed directly without the translation and interpretation overhead. One of major issues in c-AOTC is relocation because some of the addresses used by the cached machine code are not correct when the machine code is loaded and used in a different run; those addresses should be corrected before they are used. Constant pool resolution and inlining complicate the relocation problem and we propose our solutions. We developed a c-AOTC on Sun's CDC VM reference implementation (RI) and our evaluation results indicate that c-AOTC can improve the performance significantly, as much as an average of 12\%. We also experiment with the issue of reducing the number of c-AOTC methods to be cached when the persistent space is tight, with a graceful degradation of performance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "early binding; J2ME CDC; Java ahead-of-time compiler; Java virtual machine; just-in-time compiler; relocation", } @Article{Igarashi:2007:VPT, author = "Atsushi Igarashi and Mirko Viroli", title = "Variant path types for scalable extensibility", journal = j-SIGPLAN, volume = "42", number = "10", pages = "113--132", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297037", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Much recent work in the design of object-oriented programming languages has been focusing on identifying suitable features to support so-called scalable extensibility, where the usual extension mechanism by inheritance works in different scales of software components-that is, classes, groups of classes, groups of groups and so on. Its typing issues has usually been addressed by means of dependent type systems, where nested types are seen as properties of objects. In this work, we seek instead for a different solution, which can be more easily applied to Java-like languages, in which nested types are considered properties of classes.\par We introduce the mechanism of variant path types, which provide a flexible means to express intra-group relationship (among classes) that has to be preserved through extension. In particular, improving and extending existing works on groups and exact types, we feature the new notions of exact and inexact qualifications, providing rich abstractions to express various kinds of set of objects, with a flexible subtyping scheme. We formalize a safe type system for variant path types on top of Feather weight Java. Our development results in a complete solution for scalable extensibility, similarly to previous attempts based on dependent type systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "scalable extensibility; subtyping; variance; variant path types", } @Article{Jipping:2007:TSJ, author = "Michael J. Jipping and Cameron Calka and Brian O'Neill and Christopher R. Padilla", title = "Teaching students {Java} bytecode using {Lego Mindstorms} robots", journal = j-SIGCSE, volume = "39", number = "1", pages = "170--174", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227371", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Assbly language is a valuable subject to teach, yet one of the most underappreciated by students. Students do not see the need for assembly language and they get through it as quickly as possible. Given the time in a computer organization course to teach assembly language, assignments --- either quick-and-easy ones or those contrived-to-teach-a-point --- contribute to this attitude of malaise. This paper documents a project to inject some fun into the teaching of assembly language. First, we switch the language to Java bytecode. Second, we use unique assignments to use Java bytecode with Lego Mindstorms robotics.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Juola:2007:PCO, author = "Patrick Juola", title = "Principles of computer organization and assembly language: using the {Java Virtual Machine}", publisher = "Pearson/Prentice Hall", address = "Upper Saddle River, NJ, USA", pages = "xv + 317", year = "2007", ISBN = "0-13-148683-7 (paperback)", ISBN-13 = "978-0-13-148683-6 (paperback)", LCCN = "QA76.9.C643 J96 2007", bibdate = "Thu Jan 21 14:01:37 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/ecip073/2006034154.html", acknowledgement = ack-nhfb, subject = "computer organization; assembler language (computer program language); Java Virtual Machine", } @Article{Kiciman:2007:APR, author = "Emre Kiciman and Benjamin Livshits", title = "{AjaxScope}: a platform for remotely monitoring the client-side behavior of {Web 2.0} applications", journal = j-OPER-SYS-REV, volume = "41", number = "6", pages = "17--30", month = dec, year = "2007", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1323293.1294264", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:18:34 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The rise of the software-as-a-service paradigm has led to the development of a new breed of sophisticated, interactive applications often called Web 2.0. While web applications have become larger and more complex, web application developers today have little visibility into the end-to-end behavior of their systems. This paper presents AjaxScope, a dynamic instrumentation platform that enables cross-user monitoring and just-in-time control of web application behavior on end-user desktops. AjaxScope is a proxy that performs on-the-fly parsing and instrumentation of JavaScript code as it is sent to users' browsers. AjaxScope provides facilities for distributed and adaptive instrumentation in order to reduce the client-side overhead, while giving fine-grained visibility into the code-level behavior of web applications. We present a variety of policies demonstrating the power of AjaxScope, ranging from simple error reporting and performance profiling to more complex memory leak detection and optimization analyses. We also apply our prototype to analyze the behavior of over 90 Web 2.0 applications and sites that use large amounts of JavaScript.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "software instrumentation; software monitoring; web applications", } @Article{Klemm:2007:JIO, author = "Michael Klemm and Matthias Bezold and Ronald Veldema and Michael Philippsen", title = "{JaMP}: an implementation of {OpenMP} for a {Java DSM}", journal = j-CCPE, volume = "19", number = "18", pages = "2333--2352", day = "25", month = dec, year = "2007", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1178", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:18 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pvm.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "3 Apr 2007", } @Book{Koletzke:2007:OJF, author = "Peter Koletzke and Duncan Mills", title = "{Oracle JDeveloper 10g} for forms and {PL\slash SQL} developers", publisher = pub-MCGRAW-HILL, address = pub-MCGRAW-HILL:adr, pages = "xxx + 562", year = "2007", ISBN = "0-07-225960-4 (paperback), (paperback)", ISBN-13 = "978-0-07-225960-5 (paperback), (paperback)", LCCN = "QA76.73.J38 K655 2006", bibdate = "Tue Oct 28 09:22:43 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0806/2007298524-b.html; http://www.loc.gov/catdir/enhancements/fy0806/2007298524-d.html; http://www.loc.gov/catdir/enhancements/fy0806/2007298524-t.html", acknowledgement = ack-nhfb, subject = "Oracle JDeveloper; Java (Computer program language); Application software; Development", } @Article{Kuehne:2007:CPL, author = "Thomas Kuehne and Daniel Schreiber", title = "Can programming be liberated from the two-level style: multi-level programming with {DeepJava}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "229--244", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297044", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Since the introduction of object-oriented programming few programming languages have attempted to provide programmers with more than objects and classes, i.e., more than two levels. Those that did, almost exclusively aimed at describing language properties-i.e., their metaclasses exert linguistic control on language concepts and mechanisms-often in order to make the language extensible. In terms of supporting logical domain classification levels, however, they are still limited to two levels.\par In this paper we conservatively extend the object-oriented programming paradigm to feature an unbounded number of domain classification levels. We can therefore avoid the introduction of accidental complexity into programs caused by accommodating multiple domain levels within only two programming levels. We present a corresponding language design featuring ``deep instantiation'' and demonstrate its features with a running example. Finally, we outline the implementation of our compiler prototype and discuss the potentials of further developing our language design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "deep characterization; domain metatypes; ontological metamodeling", } @Article{Laskowski:2007:BCS, author = "Eryk Laskowski and Marek Tudruj and Richard Olejnik and Bernard Toursel", title = "Byte-code scheduling of {Java} programs with branches for {Desktop Grid}", journal = j-FUT-GEN-COMP-SYS, volume = "23", number = "8", pages = "977--982", month = nov, year = "2007", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Sat Sep 11 13:08:10 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/0167739X", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Lazic:2007:BRBa, author = "S. E. Lazic", title = "Book Review: {{\booktitle{Correspondence Analysis and Data Coding with Java and R}}, by F. Murtagh}", journal = j-J-R-STAT-SOC-SER-A-STAT-SOC, volume = "170", number = "2", pages = "509--509", month = mar, year = "2007", CODEN = "JSSAEF", DOI = "https://doi.org/10.1111/j.1467-985X.2007.00473_12.x; https://doi.org/10.2307/4623181", ISSN = "0964-1998 (print), 1467-985X (electronic)", ISSN-L = "0964-1998", bibdate = "Mon Jan 26 13:24:14 MST 2015", bibsource = "http://www.jstor.org/stable/i413068; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jrss-a-2000.bib", URL = "http://www.jstor.org/stable/4623181", acknowledgement = ack-nhfb, fjournal = "Journal of the Royal Statistical Society. Series A (Statistics in Society)", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1111/(ISSN)1467-985X; http://www.jstor.org/journals/09641998.html", onlinedate = "13 Apr 2007", } @Article{Lee:2007:WFJ, author = "Gun Ho Lee and Junsu Jung", title = "{Web} framework with {Java} and {XML} in multi-tiers for productivity", journal = j-FUT-GEN-COMP-SYS, volume = "23", number = "2", pages = "263--268", month = feb, year = "2007", CODEN = "FGSEVI", ISSN = "0167-739X (print), 1872-7115 (electronic)", ISSN-L = "0167-739X", bibdate = "Sat Sep 11 13:08:08 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/0167739X", acknowledgement = ack-nhfb, fjournal = "Future Generation Computer Systems", journal-URL = "http://www.sciencedirect.com/science/journal/0167739X", } @Article{Lin:2007:SEA, author = "Chin-Yang Lin and Ting-Wei Hou", title = "A simple and efficient algorithm for cycle collection", journal = j-SIGPLAN, volume = "42", number = "3", pages = "7--13", month = mar, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273039.1273041", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:10 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The lack of collecting cyclic garbage is generally considered the major weakness of reference counting. Reference counted systems handle this problem by incorporating either a global tracing collector, or a 'partial' tracing collector that considers only the cycle candidates but needs several traces on them. In particular, the latter has become a preferred one as it has better scalability and locality (no need to scan the entire heap). This paper presents a new 'lightweight' cyclic reference counting algorithm, which is based on partial tracing and deals with the cycle problem in a simpler and more efficient way. By exploiting the lightweight hypothesis that considers a single sub-graph, instead of individual cycles, as the basic unit of cycle collection, the algorithm can detect garbage cycles in a single trace. In addition, we propose a technique for eliminating redundant scans over garbage objects, thus improving the efficiency of the algorithm. The pseudocode and its correctness proof are also presented. Finally, an implementation based on Jikes Research Virtual Machine is provided to demonstrate the effectiveness of the new algorithm.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "cycle collection; garbage collection; Java; reference counting", } @Article{Lin:2007:SIM, author = "Jim-Min Lin and Zeng-Wei Hong and Guo-Ming Fang and Che-Tai Lee", title = "A style for integrating {MS-Windows} software applications to client-server systems using {Java} technology", journal = j-SPE, volume = "37", number = "4", pages = "417--440", day = "10", month = apr, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.775", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:14 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "24 Oct 2006", } @Article{Long:2007:MVC, author = "Brad Long and Paul Strooper and Luke Wildman", title = "A method for verifying concurrent {Java} components based on an analysis of concurrency failures", journal = j-CCPE, volume = "19", number = "3", pages = "281--294", day = "10", month = mar, year = "2007", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1063", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:10 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "1 Aug 2006", } @Article{Ma:2007:IAE, author = "Kin-Keung Ma and Jeffrey S. Foster", title = "Inferring aliasing and encapsulation properties for {Java}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "423--440", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297059", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "There are many proposals for language techniques to control aliasing and encapsulation in object oriented programs, typically based on notions of object ownership and pointer uniqueness. Most of these systems require extensive manual annotations, and thus there is little experience with these properties in large, existing Java code bases. To remedy this situation, we present Uno, a novel static analysis for automatically inferring ownership, uniqueness, and other aliasing and encapsulation properties in Java. Our analysis requires no annotations, and combines an intraprocedural points-to analysis with an interprocedural, demand-driven predicate resolution algorithm. We have applied Uno to a variety of Java applications and found that some aliasing properties, such as temporarily lending a reference to a method, are common, while others, in particular field and argument ownership, are relatively uncommon. As a result, we believe that Uno can be a valuable tool for discovering and understanding aliasing and encapsulation in Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aliasing; encapsulation; Java; lending; ownership; ownership inference; uniqueness; uniqueness inference; Uno", } @Article{Ma:2007:IVM, author = "Linxiao Ma and John Ferguson and Marc Roper and Murray Wood", title = "Investigating the viability of mental models held by novice programmers", journal = j-SIGCSE, volume = "39", number = "1", pages = "499--503", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227481", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes an investigation into the viability of mental models used by novice programmers at the end of a first year Java programming course. The qualitative findings identify the range of mental models of value and reference assignment held by the participants. The quantitative analysis reveals that approximately one third of students held non-viable mental models of value assignment and only 17\% of students held a viable mental model of reference assignment. Further, in terms of a comparison between the participants' mental models and their performance in in-course assessments and final examination, it was found that students with viable mental models performed significantly better than those with non-viable models. These findings are used to propose a more ``constructivist'' approach to teaching programming based on the integration of ``cognitive conflict'' and program visualisation.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Malan:2007:SBC, author = "David J. Malan and Henry H. Leitner", title = "Scratch for budding computer scientists", journal = j-SIGCSE, volume = "39", number = "1", pages = "223--227", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227388", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Scratch is a ``media-rich programming environment'' recently developed by MIT's Media Lab that ``lets you create your own animations, games, and interactive art.'' Although Scratch is intended to ``enhance the development of technological fluency [among youths] at after-school centers in economically disadvantaged communities,'' we find remarkable potential in this programming environment for higher education as well. We propose Scratch as a first language for first-time programmers in introductory courses, for majors and non-majors alike. Scratch allows students to program with a mouse: programmatic constructs are represented as puzzle pieces that only fit together if ``syntactically'' appropriate. We argue that this environment allows students not only to master programmatic constructs before syntax but also to focus on problems of logic before syntax. We view Scratch as a gateway to languages like Java. To validate our proposal, we recently deployed Scratch for the first time in higher education via harvard Summer School's Computer Science S-1: Great Ideas in Computer Science, the summertime version of a course at harvard College. Our goal was not to improve scores but instead to improve first-time programmers' experiences. We ultimately transitioned to Java, but we first introduced programming itself via Scratch. We present in this paper the results of our trial. We find that, not only did Scratch excite students at a critical time (i.e.,, their first foray into computer science), it also familiarized the inexperienced among th with fundamentals of programming without the distraction of syntax. Moreover, when asked via surveys at term's end to reflect on how their initial experience with Scratch affected their subsequent experience with Java, most students (76\%) felt that Scratch was a positive influence, particularly those without prior background. Those students (16\%) who felt that Scratch was not an influence, positive or negative, all had prior programming experience.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Marin:2007:ICC, author = "Marius Marin and Arie {Van Deursen} and Leon Moonen", title = "Identifying {Crosscutting Concerns Using Fan-In Analysis}", journal = j-TOSEM, volume = "17", number = "1", pages = "3:1--3:37", month = dec, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1314493.1314496", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:04 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Aspect mining is a reverse engineering process that aims at finding crosscutting concerns in existing systems. This article proposes an aspect mining approach based on determining methods that are called from many different places, and hence have a high fan-in, which can be seen as a symptom of crosscutting functionality. The approach is semiautomatic, and consists of three steps: metric calculation, method filtering, and call site analysis. Carrying out these steps is an interactive process supported by an Eclipse plug-in called FINT. Fan-in analysis has been applied to three open source Java systems, totaling around 200,000 lines of code. The most interesting concerns identified are discussed in detail, which includes several concerns not previously discussed in the aspect-oriented literature. The results show that a significant number of crosscutting concerns can be recognized using fan-in analysis, and each of the three steps can be supported by tools.", acknowledgement = ack-nhfb, fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "Aspect-oriented programming; crosscutting concerns; fan-in metric; reverse engineering", } @Article{Matthews:2007:OSM, author = "Jacob Matthews and Robert Bruce Findler", title = "Operational semantics for multi-language programs", journal = j-SIGPLAN, volume = "42", number = "1", pages = "3--10", month = jan, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1190215.1190220", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:53:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Inter-language interoperability is big business, as the success of Microsoft's .NET and COM and Sun's JVM show. Programming language designers are designing programming languages that reflect that fact --- SML\#, Mondrian, and Scala, to name just a few examples, all treat interoperability with other languages as a central design feature. Still, current multi-language research tends not to focus on the semantics of interoperation features, but only on how to implement them efficiently. In this paper, we take first steps toward higher-level models of interoperating systems. Our technique abstracts away the low-level details of interoperability like garbage collection and representation coherence, and lets us focus on semantic properties like type-safety and observable equivalence. Beyond giving simple expressive models that are natural compositions of single-language models, our studies have uncovered several interesting facts about interoperability. For example, higher-order contracts naturally emerge as the glue to ensure that interoperating languages respect each other's type systems. While we present our results in an abstract setting, they shed light on real multi-language systems and tools such as the JNI, SWIG, and Haskell's stable pointers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "interoperability; multi-language systems; operational semantics", } @Article{McCreight:2007:GFC, author = "Andrew McCreight and Zhong Shao and Chunxiao Lin and Long Li", title = "A general framework for certifying garbage collectors and their mutators", journal = j-SIGPLAN, volume = "42", number = "6", pages = "468--479", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273442.1250788", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Garbage-collected languages such as Java and C\# are becoming more and more widely used in both high-end software and real-time embedded applications. The correctness of the GC implementation is essential to the reliability and security of a large portion of the world's mission-critical software. Unfortunately, garbage collectors--especially incremental and concurrent ones--are extremely hard to implement correctly. In this paper, we present a new uniform approach to verifying the safety of both a mutator and its garbage collector in Hoare-style logic. We define a formal garbage collector interface general enough to reason about a variety of algorithms while allowing the mutator to ignore implementation-specific details of the collector. Our approach supports collectors that require read and write barriers. We have used our approach to mechanically verify assembly implementations of mark-sweep, copying and incremental copying GCs in Coq, as well as sample mutator programs that can be linked with any of the GCs to produce a fully-verified garbage-collected program. Our work provides a foundation for reasoning about complex mutator-collector interaction and makes an important advance toward building fully certified production-quality GCs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "abstract data type; assembly code verification; garbage collection; proof-carrying code; separation logic", } @Book{McLaughlin:2007:JX, author = "Brett McLaughlin", title = "{Java} and {XML}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Third", pages = "465", year = "2007", ISBN = "0-596-10149-X (paperback)", ISBN-13 = "978-0-596-10149-7 (paperback)", LCCN = "QA76.73.J38 M39 2007", bibdate = "Mon Jan 26 15:43:29 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/enhancements/fy0715/2007273941-d.html; http://www.loc.gov/catdir/toc/fy0710/2007273941.html", acknowledgement = ack-nhfb, subject = "Java (Computer program language); XML (Document markup language); Web publishing", } @Article{Melton:2007:ESC, author = "Hayden Melton and Ewan Tempero", title = "An empirical study of cycles among classes in {Java}", journal = j-EMPIR-SOFTWARE-ENG, volume = "12", number = "4", pages = "389--415", month = aug, year = "2007", CODEN = "ESENFW", DOI = "https://doi.org/10.1007/s10664-006-9033-1", ISSN = "1382-3256 (print), 1573-7616 (electronic)", ISSN-L = "1382-3256", bibdate = "Fri Dec 2 09:14:02 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/empir-software-eng.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/accesspage/article/10.1007/s10664-006-9033-1", acknowledgement = ack-nhfb, fjournal = "Empirical Software Engineering", journal-URL = "http://link.springer.com/journal/10664", } @Article{Muller-Olm:2007:AMA, author = "Markus M{\"u}ller-Olm and Helmut Seidl", title = "Analysis of modular arithmetic", journal = j-TOPLAS, volume = "29", number = "5", pages = "29:1--29:27", month = aug, year = "2007", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1275497.1275504", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jun 11 19:22:40 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We consider integer arithmetic modulo a power of 2 as provided by mainstream programming languages like Java or standard implementations of C. The difficulty here is that, for $ w > 1 $, the ring $ Z_m $ of integers modulo $ m = 2^w $ has zero divisors and thus cannot be embedded into a field. Not withstanding that, we present intra- and interprocedural algorithms for inferring for every program point u affine relations between program variables valid at $u$. If conditional branching is replaced with nondeterministic branching, our algorithms are not only sound but also complete in that they detect all valid affine relations in a natural class of programs. Moreover, they run in time linear in the program size and polynomial in the number of program variables and can be implemented by using the same modular integer arithmetic as the target language to be analyzed. We also indicate how our analysis can be extended to deal with equality guards, even in an interprocedural setting.", acknowledgement = ack-nhfb, articleno = "29", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Murtagh:2007:SBV, author = "Thomas P. Murtagh", title = "{Squint}: barely visible library support for {CS1}", journal = j-SIGCSE, volume = "39", number = "1", pages = "526--530", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227489", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Squint is a Java library developed to support the use of event-driven programming and network applications in programming examples for a CS1 curriculum. We present the design of the library, emphasizing techniques employed to minimize the effort students expend learning features specific to the library. We also compare Squint to an established library that supports event-driven programming in CS1, emphasizing ways in which the two libraries support similar pedagogical approaches.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Naftalin:2007:JGC, author = "Maurice Naftalin and Philip Wadler", title = "{Java} Generics and Collections", publisher = pub-ORA, address = pub-ORA:adr, pages = "xvii + 273", year = "2007", ISBN = "0-596-52775-6", ISBN-13 = "978-0-596-52775-4", LCCN = "QA76.73.J38 N325 2007", bibdate = "Tue Jan 27 16:12:54 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", price = "US\$34.99", URL = "http://www.loc.gov/catdir/enhancements/fy0715/2006287224-d.html; http://www.loc.gov/catdir/toc/fy0705/2006287224.html; http://www.oreilly.com/catalog/9780596527754", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Object-oriented programming (Computer science)", } @Article{Naik:2007:CMA, author = "Mayur Naik and Alex Aiken", title = "Conditional must not aliasing for static race detection", journal = j-SIGPLAN, volume = "42", number = "1", pages = "327--338", month = jan, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1190216.1190265", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:53:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Race detection algorithms for multi-threaded programs using the common lock-based synchronization idiom must correlate locks with the memory locations they guard. The heart of a proof of race freedom is showing that if two locks are distinct, then the memory locations they guard are also distinct. This is an example of a general property we call conditional must not aliasing: Under the assumption that two objects are not aliased, prove that two other objects are not aliased. This paper introduces and gives an algorithm for conditional must not alias analysis and discusses experimental results for sound race detection of Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "concurrency; Java; multi-threading; static race detection; synchronization", } @Article{Neelakantam:2007:HAR, author = "Naveen Neelakantam and Ravi Rajwar and Suresh Srinivas and Uma Srinivasan and Craig Zilles", title = "Hardware atomicity for reliable software speculation", journal = j-COMP-ARCH-NEWS, volume = "35", number = "2", pages = "174--185", month = may, year = "2007", CODEN = "CANED2", DOI = "https://doi.org/10.1145/1250662.1250684", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Tue Jun 17 11:48:43 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Speculative compiler optimizations are effective in improving both single-thread performance and reducing power consumption, but their implementation introduces significant complexity, which can limit their adoption, limit their optimization scope, and negatively impact the reliability of the compilers that implement them. To eliminate much of this complexity, as well as increase the effectiveness of these optimizations, we propose that microprocessors provide architecturally-visible hardware primitives for atomic execution. These primitives provide to the compiler the ability to optimize the program's hot path in isolation, allowing the use of non-speculative formulations of optimization passes to perform speculative optimizations. Atomic execution guarantees that if a speculation invariant does not hold, the speculative updates are discarded, the register state is restored, and control is transferred to a non-speculative version of the code, thereby relieving the compiler from the responsibility of generating compensation code.\par We demonstrate the benefit of hardware atomicity in the context of a Java virtual machine. We find incorporating the notion of atomic regions into an existing compiler intermediate representation to be natural, requiring roughly 3,000 lines of code (~3\% of a JVM's optimizing compiler), most of which were for region formation. Its incorporation creates new opportunities for existing optimization passes, as well as greatly simplifying the implementation of additional optimizations (e.g., partial inlining, partial loop unrolling, and speculative lock elision). These optimizations reduce dynamic instruction count by 11\% on average and result in a 10-15\% average speedup, relative to a baseline compiler with a similar degree of inlining.", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", keywords = "atomicity; checkpoint; isolation; Java; optimization; speculation", } @Article{Noguera:2007:AEA, author = "Carlos Noguera and Renaud Pawlak", title = "{AVal}: an extensible attribute-oriented programming validator for {Java}", journal = j-J-SOFTW-MAINT-EVOL, volume = "19", number = "4", pages = "253--275", month = jul, year = "2007", CODEN = "JSMECT", DOI = "https://doi.org/10.1002/smr.349", ISSN = "1532-060X (print), 1532-0618 (electronic)", ISSN-L = "1532-060X", bibdate = "Wed Jan 31 10:00:21 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jsoftwmaintevol.bib", acknowledgement = ack-nhfb, fjournal = "Journal of Software Maintenance and Evolution: Research and Practice", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481", } @Book{Olsen:2007:AJ, author = "Steven Douglas Olsen", title = "{Ajax} on {Java}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiv + 211", year = "2007", ISBN = "0-596-10187-2", ISBN-13 = "978-0-596-10187-9", LCCN = "QA76.73.J38 O58 2007eb; QA76.73.J38", bibdate = "Tue Aug 5 17:51:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596101879", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Ajax (Web site development technology)", } @Article{Ozaki:2007:MOV, author = "K. Ozaki and T. Ogita and S. Miyajima and S. Oishi and S. M. Rump", title = "A method of obtaining verified solutions for linear systems suited for {Java}", journal = j-J-COMPUT-APPL-MATH, volume = "199", number = "2", pages = "337--344", day = "15", month = feb, year = "2007", CODEN = "JCAMDI", ISSN = "0377-0427 (print), 1879-1778 (electronic)", ISSN-L = "0377-0427", bibdate = "Sat Feb 25 13:12:04 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jcomputapplmath2005.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0377042705007697", acknowledgement = ack-nhfb, fjournal = "Journal of Computational and Applied Mathematics", journal-URL = "http://www.sciencedirect.com/science/journal/03770427", } @Article{Padala:2007:ACV, author = "Pradeep Padala and Kang G. Shin and Xiaoyun Zhu and Mustafa Uysal and Zhikui Wang and Sharad Singhal and Arif Merchant and Kenneth Salem", title = "Adaptive control of virtualized resources in utility computing environments", journal = j-OPER-SYS-REV, volume = "41", number = "3", pages = "289--302", month = jun, year = "2007", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1272998.1273026", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:16:31 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Data centers are often under-utilized due to over-provisioning as well as time-varying resource demands of typical enterprise applications. One approach to increase resource utilization is to consolidate applications in a shared infrastructure using virtualization. Meeting application-level quality of service (QoS) goals becomes a challenge in a consolidated environment as application resource needs differ. Furthermore, for multi-tier applications, the amount of resources needed to achieve their QoS goals might be different at each tier and may also depend on availability of resources in other tiers. In this paper, we develop an adaptive resource control system that dynamically adjusts the resource shares to individual tiers in order to meet application-level QoS goals while achieving high resource utilization in the data center. Our control system is developed using classical control theory, and we used a black-box system modeling approach to overcome the absence of first principle models for complex enterprise applications and systems. To evaluate our controllers, we built a testbed simulating a virtual data center using Xen virtual machines. We experimented with two multi-tier applications in this virtual data center: a two-tier implementation of RUBiS, an online auction site, and a two-tier Java implementation of TPC-W. Our results indicate that the proposed control system is able to maintain high resource utilization and meets QoS goals in spite of varying resource demands from the applications.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "application QoS; control theory; data center; resource utilization; server consolidation; virtualization", } @Article{Pearce:2007:PA, author = "David J. Pearce and Matthew Webster and Robert Berry and Paul H. J. Kelly", title = "Profiling with {AspectJ}", journal = j-SPE, volume = "37", number = "7", pages = "747--777", month = jun, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.788", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:15 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", abstract = "This paper investigates whether AspectJ can be used for efficient profiling of Java programs. Profiling differs from other applications of AOP (e.g. tracing), since it necessitates efficient and often complex interactions with the target program. As such, it was uncertain whether AspectJ could achieve this goal. Therefore, we investigate four common profiling problems (heap usage, object lifetime, wasted time and time-spent) and report on how well AspectJ handles them. For each, we provide an efficient implementation, discuss any trade-offs or limitations and present the results of an experimental evaluation into the costs of using it. Our conclusions are mixed. On the one hand, we find that AspectJ is sufficiently expressive to describe the four profiling problems and reasonably efficient in most cases. On the other hand, we find several limitations with the current AspectJ implementation that severely hamper its suitability for profiling.", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "23 Nov 2006", } @Article{Perez:2007:RJI, author = "Carlos Javier P{\'e}rez and Hansgeorg Schwibbe and Petra Weidner", title = "{RAGE}: a {Java}-implemented Visual Random Generator", journal = j-J-STAT-SOFT, volume = "17", number = "10", pages = "1--10", month = jan, year = "2007", CODEN = "JSSOBK", ISSN = "1548-7660", bibdate = "Fri Jul 4 10:54:15 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/v17/i10", abstract = "Carefully designed Java applications turn out to be efficient and platform independent tools that can compete well with classical implementations of statistical software. The project presented here is an example underlining this statement for random variate generation. An end-user application called RAGE (Random Variate Generator) is developed to generate random variates from probability distributions. A Java class library called JDiscreteLib has been designed and implemented for the simulation of random variables from the most usual discrete distributions inside RAGE. For each distribution, specific and general algorithms are available for this purpose. RAGE can also be used as an interactive simulation tool for data and data summary visualization.", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", pubdates = "Submitted 2006-03-30; Accepted 2007-01-31", } @Article{Permandla:2007:TSP, author = "Pratibha Permandla and Michael Roberson and Chandrasekhar Boyapati", title = "A type system for preventing data races and deadlocks in the {Java Virtual Machine} language: 1", journal = j-SIGPLAN, volume = "42", number = "7", pages = "10--10", month = jul, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1254766.1254768", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:57:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In previous work on SafeJava we presented a type system extension to the Java source language that statically prevents data races and deadlocks in multithreaded programs. SafeJava is expressive enough to support common programming patterns, its type checking is fast and scalable, and it requires little programming overhead. SafeJava thus offers a promising approach for making multithreaded programs more reliable. This paper presents a corresponding type system extension for the Java virtual machine language (JVML). We call the resulting language SafeJVML. Well-typed SafeJVML programs are guaranteed to be free of data races and deadlocks. Designing a corresponding type system for JVML is important because most Java code is shipped in the JVML format. Designing a corresponding type system for JVML is nontrivial because of important differences between Java and JVML. In particular, the absence of block structure in JVML programs and the fact that they do not use named local variables the way Java programs do make the type systems for Java and JVML significantly different. For example, verifying absence of races and deadlocks in JVML programs requires performing an alias analysis, something that was not necessary for verifying absence of races and deadlocks in Java programs. This paper presents static and dynamic semantics for Safe JVML. It also includes a proof that the SafeJVML type system is sound and that it prevents data races and deadlocks. To the best of our knowledge, this is the first type system for JVML that statically ensures absence of synchronization errors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "data races; deadlocks; ownership types; SafeJava", } @Article{Pizlo:2007:HRT, author = "Filip Pizlo and Antony L. Hosking and Jan Vitek", title = "Hierarchical real-time garbage collection", journal = j-SIGPLAN, volume = "42", number = "7", pages = "123--133", month = jul, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273444.1254784", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:57:50 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Memory management is a critical issue for correctness and performance in real-time embedded systems. Recent work on real-time garbage collectors has shown that it is possible to provide guarantees on worst-case pause times and minimum mutator utilization time. This paper presents a new hierarchical real-time garbage collection algorithm for mixed-priority and mixed-criticality environments. With hierarchical garbage collection, real-time programmers can partition the heap into a number of heaplets and for each partition choose to run a separate collector with a schedule that matches the allocation behavior and footprint of the real-time task using it. This approach lowers worst-case response times of real-time applications by 26\%, while almost doubling mutator utilization -- all with only minimal changes to the application code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java memory management; real time systems", } @Article{Pothier:2007:SOD, author = "Guillaume Pothier and {\'E}ric Tanter and Jos{\'e} Piquer", title = "Scalable omniscient debugging", journal = j-SIGPLAN, volume = "42", number = "10", pages = "535--552", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297067", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Omniscient debuggers make it possible to navigate backwards in time within a program execution trace, drastically improving the task of debugging complex applications. Still, they are mostly ignored in practice due to the challenges raised by the potentially huge size of the execution traces. This paper shows that omniscient debugging can be realistically realized through the use of different techniques addressing efficiency, scalability and usability. We present TOD, a portable Trace-Oriented Debugger for Java, which combines an efficient instrumentation for event generation, a specialized distributed database for scalable storage and efficient querying, support for partial traces in order to reduce the trace volume to relevant events, and innovative interface components for interactive trace navigation and analysis in the development environment. Provided a reasonable infrastructure, the performance of TOD allows a responsive debugging experience in the face of large programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "execution traces; interface components; omniscient debugging; partial traces; scalability; specialized distributed database", } @Book{Powers:2007:LJ, author = "Shelley Powers", title = "Learning {JavaScript}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiv + 335", year = "2007", ISBN = "0-596-52746-2", ISBN-13 = "978-0-596-52746-4", LCCN = "QA76.73.J39 P7 2007eb; QA76.73.J39", bibdate = "Tue Aug 5 18:07:00 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596527464", acknowledgement = ack-nhfb, remark = "Covers Ajax and DOM.", subject = "JavaScript (Computer program language)", } @Article{Rafieymehr:2007:JVD, author = "Ali Rafieymehr and Richard McKeever", title = "{Java} visual debugger", journal = j-SIGCSE, volume = "39", number = "2", pages = "75--79", month = jun, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1272848.1272889", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:35 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#RafieymehrM07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "We have developed a visual debugger for Java programs (JVD) that makes use of smooth continuous graphical animation and runtime state history retention to display program state during execution, in order to consider the viability of this approach in the context of both software engineering and computer science education.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rahimi:2007:PPA, author = "Shahram Rahimi and Michael Wainer and Delano Lewis", title = "A Performance and Programming Analysis of {Java} Communication Mechanisms in a Distributed Environment", journal = j-SCPE, volume = "8", number = "2", pages = "209--226", month = jun, year = "2007", CODEN = "????", ISSN = "1895-1767", bibdate = "Thu Sep 2 11:55:11 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.scpe.org/content/8/2.toc", URL = "http://www.scpe.org/vols/vol08/no2/SCPE_8_2_07.pdf; http://www.scpe.org/vols/vol08/no2/SCPE_8_2_07.zip", acknowledgement = ack-nhfb, } @Article{Ranganath:2007:SCJ, author = "Venkatesh Prasad Ranganath and John Hatcliff", title = "Slicing concurrent {Java} programs using {Indus} and {Kaveri}", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "9", number = "5--6", pages = "489--504", month = oct, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-007-0043-0", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Wed Jul 9 18:12:23 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1433-2779&volume=9&issue=5; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1433-2779&volume=9&issue=5&spage=489", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", keywords = "Concurrent Java; Indus; Kaveri; Program dependences; Program slicing", } @Article{Reis:2007:BVD, author = "Charles Reis and John Dunagan and Helen J. Wang and Opher Dubrovsky and Saher Esmeir", title = "{BrowserShield}: {Vulnerability}-driven filtering of dynamic {HTML}", journal = j-TWEB, volume = "1", number = "3", pages = "11:1--11:??", month = sep, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1145/1281480.1281481", ISSN = "1559-1131 (print), 1559-114X (electronic)", ISSN-L = "1559-1131", bibdate = "Fri Apr 24 18:17:14 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Vulnerability-driven filtering of network data can offer a fast and easy-to-deploy alternative or intermediary to software patching, as exemplified in Shield [Wang et al. 2004]. In this article, we take Shield's vision to a new domain, inspecting and cleansing not just static content, but also dynamic content. The dynamic content we target is the dynamic HTML in Web pages, which have become a popular vector for attacks. The key challenge in filtering dynamic HTML is that it is undecidable to statically determine whether an embedded script will exploit the browser at runtime. We avoid this undecidability problem by rewriting web pages and any embedded scripts into safe equivalents, inserting checks so that the filtering is done at runtime. The rewritten pages contain logic for recursively applying runtime checks to dynamically generated or modified web content, based on known vulnerabilities. We have built and evaluated {\em BrowserShield}, a general framework that performs this dynamic instrumentation of embedded scripts, and that admits policies for customized runtime actions like vulnerability-driven filtering. We also explore other applications on top of BrowserShield.", acknowledgement = ack-nhfb, articleno = "11", fjournal = "ACM Transactions on the Web (TWEB)", keywords = "code rewriting; JavaScript; vulnerability; Web browser", } @Article{Rellermeyer:2007:CSP, author = "Jan S. Rellermeyer and Gustavo Alonso", title = "{Concierge}: a service platform for resource-constrained devices", journal = j-OPER-SYS-REV, volume = "41", number = "3", pages = "245--258", month = jun, year = "2007", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1272996.1273022", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:16:31 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "As mobile and embedded devices become widespread, the management and configuration of the software in the devices is increasingly turning into a critical issue. OSGi is a business standard for the life cycle management of Java software components. It is based on a service oriented architecture where functional units are decoupled and components can be managed independently of each other. However, the focus continuously shifts from the originally intended area of small and embedded devices towards large-scaled enterprise systems. As a result, implementations of the OSGi framework are increasingly becoming more heavyweight and less suitable for smaller computing devices. In this paper, we describe the experience gathered during the design of Concierge, an implementation of the OSGi specification tailored to resource-constrained devices. Comprehensive benchmarks show that Concierge performs better than existing implementations and consumes less resources.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "average bundle; concierge; OSGi; resource-constrained devices; service oriented architecture", } @Article{Robbins:2007:JES, author = "Steven Robbins", title = "A {Java} execution simulator", journal = j-SIGCSE, volume = "39", number = "1", pages = "536--540", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227491", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper describes JES, a Java Execution Simulator that allows users to explore how a Java program executes. This interactive simulator displays a representation of a Java program and animates the running of the program. Instructors can use JES to demonstrate how data is moved when variables are assigned, when parameters are passed, and when values are returned by a method. JES is useful for comparing how primitive and object values are manipulated. The simulator also demonstrates scope rules, object creation, inheritance and polymorphism. While the simulator only supports variables of type double and object and does not support conditionals or looping, it allows users to write general Java programs that might be used as examples in the first weeks of a CS 1 course. JES also has support for arrays of doubles and objects. The simulator is written in Java and can be run as an application or an applet. Support for the simulator includes a simple mechanism for quickly running the simulator on a program developed with a standard Java development system.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberts:2007:RAP, author = "Eric Roberts", title = "Resurrecting the applet paradigm", journal = j-SIGCSE, volume = "39", number = "1", pages = "521--525", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227488", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Since the introduction of Java in 1995, educators have recognized the potential of Java applets as an educational resource. Sadly, the continuing evolution of Java has made it harder to use applets, largely because it is so difficult to keep those applets compatible with the many different versions of the Java runtime environment supported by existing browsers. Over the past two years, the ACM Java Task Force (JTF) has developed an effective strategy that makes it possible to write applets using up-to-date versions of Java that will nonetheless run on browsers that support only the JDK 1.1 environment. This paper describes the acm11.jar library, which uses this strategy to achieve the desired backward compatibility. It also describes a more general solution strategy for which we have a prototype, although we are unable to release the prototype until we get permission from Sun Microsystems. The acm11.jar library can be used with any Java applet and does not depend on adopting the JTF library packages. That library therefore represents a general resource for teachers and students who want to write Java code that runs in web environments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Robillard:2007:RCS, author = "Martin P. Robillard and Gail C. Murphy", title = "Representing concerns in source code", journal = j-TOSEM, volume = "16", number = "1", pages = "3:1--3:??", month = feb, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1189748.1189751", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:11:50 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "A software modification task often addresses several concerns. A concern is anything a stakeholder may want to consider as a conceptual unit, including features, nonfunctional requirements, and design idioms. In many cases, the source code implementing a concern is not encapsulated in a single programming language module, and is instead scattered and tangled throughout a system. Inadequate separation of concerns increases the difficulty of evolving software in a correct and cost-effective manner. To make it easier to modify concerns that are not well modularized, we propose an approach in which the implementation of concerns is documented in artifacts, called concern graphs. Concern graphs are abstract models that describe which parts of the source code are relevant to different concerns. We present a formal model for concern graphs and the tool support we developed to enable software developers to create and use concern graphs during software evolution tasks. We report on five empirical studies, providing evidence that concern graphs support views and operations that facilitate the task of modifying the code implementing scattered concerns, are cost-effective to create and use, and robust enough to be used with different versions of a software system.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "aspect-oriented software development; concern modeling; Java; Separation of concerns; software evolution", } @Article{Rossi:2007:JJL, author = "G. Rossi and E. Panegai and E. Poleo", title = "{JSetL}: a {Java} library for supporting declarative programming in {Java}", journal = j-SPE, volume = "37", number = "2", pages = "115--149", month = feb, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.749", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:14 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "12 Sep 2006", } @InProceedings{Ruiz:2007:JLC, author = "Irene Luque Ruiz and Miguel {\'A}ngel G{\'o}mez-Nieto", title = "A {Java} Library for the Calculation of Molecular Descriptors", crossref = "Simos:2007:CMS", volume = "2B", pages = "1347--1350", year = "2007", bibdate = "Thu Feb 21 14:34:40 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://proceedings.aip.org/getpdf/servlet/GetPDFServlet?filetype=pdf& id=APCPCS000963000002001347000001& idtype=cvips", acknowledgement = ack-nhfb, } @Article{Saougkos:2007:RJB, author = "D. Saougkos and G. Manis and K. Blekas and A. V. Zarras", title = "Revisiting {Java} Bytecode Compression for Embedded and Mobile Computing Environments", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "33", number = "7", pages = "478--495", month = jul, year = "2007", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2007.1021", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4227829", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Sasitorn:2007:CNS, author = "James Sasitorn and Robert Cartwright", title = "Component {NEXTGEN}: a sound and expressive component framework for {Java}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "153--170", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297039", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Developing a general component system for a statically typed, object-oriented language is a challenging design problem for two reasons. First, mutually recursive references across components are common in object-oriented programs --- an issue that has proven troublesome in the context of component systems for functional and procedural languages. Second, inheritance across component boundaries can cause accidental method overrides. Our recent research shows that a component framework can be constructed for a nominally typed object-oriented language supporting first-class generic types simply by adding appropriate annotations, syntactic sugar, and component-level type-checking. The fundamental semantic building blocks for constructing, type-checking and manipulating components are provided by the underlying first-class generic type system. To demonstrate the simplicity and utility of this approach we have designed and implemented an extension of Java called Component NEXTGEN (CGEN). CGEN, which is based on the Sun Java 5.0 javac compiler, is backwards compatible with existing Java binary code and runs on current Java Virtual Machines.\par The primary contribution of this paper is a technical analysis of the subtle design issues involved in building a component framework for a nominally typed object-oriented language supporting first-class generics. In contrast to component systems for structurally typed languages, mutual recursion among components is accommodated in the type system and semantics without incorporating any special machinery. Our analysis includes a presentation of Core CGEN (CCG), a small, core language modeling the CGEN framework. It is based on Featherweight GJ and incorporates some ideas from MIXGEN. CCG adds the essential features to support components, but nothing more. Our discussion includes the type rules and semantics for CCG, as well as a proof of type safety.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "components; custom class loader; first-class generics; Java implementation; modules; signatures", } @Article{Sattar:2007:DCJ, author = "Abdul Sattar and Torben Lorenzen", title = "Develop a compiler in {Java} for a compiler design course", journal = j-SIGCSE, volume = "39", number = "2", pages = "80--82", month = jun, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1272848.1272890", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:35 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#SattarL07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "The authors' Compiler Design course at Bridgewater State College implemented a translator for a small language using Java. The project was broken into five assignments that included a language definition, extension of this language, a lexical analyzer, a recursive descent parser, and finally a code generator that generated Jasmin assembly language code for the JVM (Java Virtual Machine).", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Schneider:2007:OOD, author = "Florian T. Schneider and Mathias Payer and Thomas R. Gross", title = "Online optimizations driven by hardware performance monitoring", journal = j-SIGPLAN, volume = "42", number = "6", pages = "373--382", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1250734.1250777", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Hardware performance monitors provide detailed direct feedback about application behavior and are an additional source of information that a compiler may use for optimization. A JIT compiler is in a good position to make use of such information because it is running on the same platform as the user applications. As hardware platforms become more and more complex, it becomes more and more difficult to model their behavior. Profile information that captures general program properties (like execution frequency of methods or basic blocks) may be useful, but does not capture sufficient information about the execution platform. Machine-level performance data obtained from a hardware performance monitor can not only direct the compiler to those parts of the program that deserve its attention but also determine if an optimization step actually improved the performance of the application.\par This paper presents an infrastructure based on a dynamic compiler+runtime environment for Java that incorporates machine-level information as an additional kind of feedback for the compiler and runtime environment. The low-overhead monitoring system provides fine-grained performance data that can be tracked back to individual Java bytecode instructions. As an example, the paper presents results for object co-allocation in a generational garbage collector that optimizes spatial locality of objects on-line using measurements about cache misses. In the best case, the execution time is reduced by 14\% and L1 cache misses by 28\%.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dynamic optimization; hardware performance monitors; Java; just-in-time compilation", } @Article{Sciore:2007:SSJ, author = "Edward Sciore", title = "{SimpleDB}: a simple {Java}-based multiuser syst for teaching database internals", journal = j-SIGCSE, volume = "39", number = "1", pages = "561--565", month = mar, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1227504.1227498", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:32 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In this paper we examine the probl of how to give hands-on assignments in a database syst internals course. We argue that current approaches are inadequate, either because they are not sufficiently comprehensive or because they require using software that has a steep learning curve. We then describe SimpleDB, which is software written expressly for such a course. SimpleDB is a database syst in the spirit of Minibase. Unlike Minibase, however, it supports multiple users and transactions via JDBC, and its code is easy to read and modify. We then describe a course that we teach using SimpleDB, and discuss the educational benefits resulting from it.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Settle:2007:DLS, author = "A. Settle and C. Settle", title = "Distance Learning and Student Satisfaction in {Java} Programming Courses", journal = j-J-UCS, volume = "13", number = "9", pages = "1270--1286", month = "????", year = "2007", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Thu Jul 10 06:41:41 MDT 2008", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_13_9/distance_learning_and_student", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Article{Sewell:2007:OET, author = "Peter Sewell and Francesco Zappa Nardelli and Scott Owens and Gilles Peskine and Thomas Ridge and Susmit Sarkar and Rok Strni{\v{s}}a", title = "{Ott}: effective tool support for the working semanticist", journal = j-SIGPLAN, volume = "42", number = "9", pages = "1--12", month = sep, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1291220.1291155", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:59:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "It is rare to give a semantic definition of a full-scale programming language, despite the many potential benefits. Partly this is because the available metalanguages for expressing semantics - usually either L$^a$ T$_E$ X for informal mathematics, or the formal mathematics of a proof assistant - make it much harder than necessary to work with large definitions.\par We present a metalanguage specifically designed for this problem, and a tool, ott, that sanity-checks such definitions and compiles them into proof assistant code for Coq, HOL, Isabelle, and (in progress) Twelf, together with L$^a$ T$_E$ X code for production-quality typesetting, and OCaml boilerplate. The main innovations are:(1) metalanguage design to make definitions concise, and easy to read and edit;(2) an expressive but intuitive metalanguage for specifying binding structures; and (3) compilation to proof assistant code.\par This has been tested in substantial case studies, including modular specifications of calculi from the TAPL text, a Lightweight Java with Java JSR 277/294 module system proposals, and a large fragment of OCaml (around 306 rules), with machine proofs of various soundness results. Our aim with this work is to enable a phase change: making it feasible to work routinely, without heroic effort, with rigorous semantic definitions of realistic languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Shankar:2007:DAI, author = "Ajeet Shankar and Rastislav Bod{\'\i}k", title = "{DITTO}: automatic incrementalization of data structure invariant checks (in {Java)}", journal = j-SIGPLAN, volume = "42", number = "6", pages = "310--319", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1250734.1250770", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present DITTO, an automatic incrementalizer for dynamic, side-effect-free data structure invariant checks. Incrementalization speeds up the execution of a check by reusing its previous executions, checking the invariant anew only the changed parts of the data structure. DITTO exploits properties specific to the domain of invariant checks to automate and simplify the process without restricting what mutations the program can perform. Our incrementalizer works for modern imperative languages such as Java and C\#. It can incrementalize,for example, verification of red-black tree properties and the consistency of the hash code in a hash table bucket. Our source-to-source implementation for Java is automatic, portable, and efficient. DITTO provides speedups on data structures with as few as 100 elements; on larger data structures, its speedups are characteristic of non-automatic incrementalizers: roughly 5-fold at 5,000 elements,and growing linearly with data structure size.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "automatic; data structure invariants; dynamic optimization; incrementalization; optimistic memoization; program analysis", } @Article{Shpeisman:2007:EIO, author = "Tatiana Shpeisman and Vijay Menon and Ali-Reza Adl-Tabatabai and Steven Balensiefer and Dan Grossman and Richard L. Hudson and Katherine F. Moore and Bratin Saha", title = "Enforcing isolation and ordering in {STM}", journal = j-SIGPLAN, volume = "42", number = "6", pages = "78--88", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1273442.1250744", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Transactional memory provides a new concurrency control mechanism that avoids many of the pitfalls of lock-based synchronization. High-performance software transactional memory (STM) implementations thus far provide weak atomicity: Accessing shared data both inside and outside a transaction can result in unexpected, implementation-dependent behavior. To guarantee isolation and consistent ordering in such a system, programmers are expected to enclose all shared-memory accesses inside transactions.\par A system that provides strong atomicity guarantees isolation even in the presence of threads that access shared data outside transactions. A strongly-atomic system also orders transactions with conflicting non-transactional memory operations in a consistent manner.\par In this paper, we discuss some surprising pitfalls of weak atomicity, and we present an STM system that avoids these problems via strong atomicity. We demonstrate how to implement non-transactional data accesses via efficient read and write barriers, and we present compiler optimizations that further reduce the overheads of these barriers. We introduce a dynamic escape analysis that differentiates private and public data at runtime to make barriers cheaper and a static not-accessed-in-transaction analysis that removes many barriers completely. Our results on a set of Java programs show that strong atomicity can be implemented efficiently in a high-performance STM system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "code generation; compiler optimizations; escape analysis; isolation; ordering; strong atomicity; transactional memory; virtual machines; weak atomicity", } @Article{Simon:2007:DAN, author = "Beth Simon and Sue Fitzgerald and Ren{\'e}e McCauley and Susan M. Haller and John Hamer and Brian Hanks and Michael T. Helmick and Jan Erik Mostr{\"o}m and Judy Sheard and Lynda Thomas", title = "Debugging assistance for novices: a video repository", journal = j-SIGCSE, volume = "39", number = "4", pages = "137--151", month = dec, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1345375.1345437", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:39 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#SimonFMHHHHMST07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "This paper reports on the efforts of an ITiCSE 2007 working group with the aim of producing a publicly available, searchable, tagable, Web 2.0-style repository of short debugging videos. This repository may be accessed from http://debug.csi.muohio.edu/. The videos are aimed at novice Java programmers who may need help debugging when none is available (e.g., in the middle of the night before the homework is due). However, it could also be used by instructors of introductory programming. Here we discuss our motivation in creating this repository and detail the process we followed and the products we produced.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Skinner:2007:UA, author = "Jesse Skinner", title = "Unobtrusive {Ajax}", publisher = pub-ORA, address = pub-ORA:adr, year = "2007", ISBN = "0-596-51024-1", ISBN-13 = "978-0-596-51024-4", LCCN = "TK5105.8885.A52", bibdate = "Tue Aug 5 17:54:06 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "O'Reilly shortcuts", URL = "http://www.oreilly.com/catalog/9780596510244", acknowledgement = ack-nhfb, subject = "Ajax (Web site development technology); Web sites; Design; JavaScript (Computer program language)", } @Article{Small:2007:DER, author = "Margot Small", title = "Design error and reusability", journal = j-SIGCSE, volume = "39", number = "2", pages = "185--187", month = jun, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1272848.1272906", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:35 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse39.html#Small07; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2007.bib", abstract = "Failure to account for the placement of components of a complex system on different servers leads to problems in reusability. We examine a case involving an Enterprise JavaBean (EJB) application using Java 2 Platform, Enterprise Edition (J2EE). In creating an EJB entity bean class to represent persistent data, the designer assumed that all EJB client objects would be local. Attempts by developers, whose programs were on another server, to create an entity bean object, failed. Lack of documentation by the original designer and lack of training in use of entity beans led to long delays in construction of new applications.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Spring:2007:SHT, author = "Jesper H. Spring and Jean Privat and Rachid Guerraoui and Jan Vitek", title = "{StreamFlex}: high-throughput stream programming in {Java}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "211--228", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297105.1297043", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The stream programming paradigm aims to expose coarse-grained parallelism in applications that must process continuous sequences of events. The appeal of stream programming comes from its conceptual simplicity. A program is a collection of independent filters which communicate by the means of uni-directional data channels. This model lends itself naturally to concurrent and efficient implementations on modern multiprocessors. As the output behavior of filters is determined by the state of their input channels, stream programs have fewer opportunities for the errors (such as data races and deadlocks) that plague shared memory concurrent programming. This paper introduces StreamFlex, an extension to Java which marries streams with objects and thus enables to combine, in the same Java virtual machine, stream processing code with traditional object-oriented components. StreamFlex targets high-throughput low-latency applications with stringent quality-of-service requirements. To achieve these goals, it must, at the same time, extend and restrict Java. To allow for program optimization and provide latency guarantees, the StreamFlex compiler restricts Java by imposing a stricter typing discipline on filters. On the other hand, StreamFlex extends the Java virtual machine with real-time capabilities, transactional memory and type-safe region-based allocation. The result is a rich and expressive language that can be implemented efficiently.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java Virtual Machine; memory management; ownership types; real-time systems; stream processing", } @Article{Sridharan:2007:TS, author = "Manu Sridharan and Stephen J. Fink and Rastislav Bodik", title = "Thin slicing", journal = j-SIGPLAN, volume = "42", number = "6", pages = "112--122", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1250734.1250748", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Program slicing systematically identifies parts of a program relevant to a seed statement. Unfortunately, slices of modern programs often grow too large for human consumption. We argue that unwieldy slices arise primarily from an overly broad definition of relevance, rather than from analysis imprecision. While a traditional slice includes all statements that may affect a point of interest, not all such statements appear equally relevant to a human.\par As an improved method of finding relevant statements, we propose thin slicing. A thin slice consists only of producer statements for the seed, i.e., those statements that help compute and copy a value to the seed. Statements that explain why producers affect the seed are excluded. For example, for a seed that reads a value from a container object, a thin slice includes statements that store the value into the container, but excludes statements that manipulate pointers to the container itself. Thin slices can also be hierarchically expanded to include statements explaining how producers affect the seed, yielding a traditional slice in the limit.\par We evaluated thin slicing for a set of debugging and program understanding tasks. The evaluation showed that thin slices usually included the desired statements for the tasks (e.g., the buggy statement for a debugging task). Furthermore, in simulated use of a slicing tool, thin slices revealed desired statements after inspecting 3.3 times fewer statements than traditional slicing for our debugging tasks and 9.4 times fewer statements for our program understanding tasks. Finally, our thin slicing algorithm scales well to relatively large Java benchmarks, suggesting that thin slicing represents an attractive option for practical tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "debugging; program understanding; slicing", } @Article{Strnisa:2007:JMS, author = "Rok Strni{\v{s}}a and Peter Sewell and Matthew Parkinson", title = "The {Java} module system: core design and semantic definition", journal = j-SIGPLAN, volume = "42", number = "10", pages = "499--514", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297064", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java has no module system. Its packages only subdivide the class name space, allowing only a very limited form of component-level information hiding and reuse. Two Java Community Processes have started addressing this problem: one describes the runtime system and has reached an early draft stage, while the other considers the developer's view and only has a straw-man proposal. Both are natural language documents, which inevitably contain ambiguities.\par In this work we design and formalize a core module system for Java. Where the JCP documents are complete, we follow them closely; elsewhere we make reasonable choices. We define the syntax, the type system, and the operational semantics of an LJAM language, defining these rigorously in the Isabelle/HOL automated proof assistant. Using this formalization, we identify various issues with the module system. We highlight the underlying design decisions, and discuss several alternatives and their benefits. Our Isabelle/HOL definitions should provide a basis for further consideration of the design alternatives, for reference implementations, and for proofs of soundness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "JAM; Java; LJAM; module; superpackage", } @Book{Stubblebine:2007:REP, author = "Tony Stubblebine", title = "Regular expression pocket reference: Regular expressions for {Perl}, {Ruby}, {PHP}, {Python}, {C}, {Java}, and {.NET}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "vii + 117", year = "2007", ISBN = "0-596-51427-1 (paperback)", ISBN-13 = "978-0-596-51427-3 (paperback)", LCCN = "QA76.9.T48 S78 2007", bibdate = "Thu Apr 16 10:31:52 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", URL = "http://www.loc.gov/catdir/toc/fy0802/2007281074.html", acknowledgement = ack-nhfb, subject = "Text processing (Computer science); Programming languages (Electronic computers); Syntax", } @Article{Sward:2007:UAS, author = "Ricky E. Sward", title = "Using {Ada} in a service-oriented architecture", journal = j-SIGADA-LETTERS, volume = "27", number = "3", pages = "63--68", month = dec, year = "2007", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1315580.1315596", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Tue Jun 17 09:18:04 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "One of the latest trends in software architecture is known as a Service-Oriented Architecture (SOA). This paper describes SOA briefly and one of the enabling technologies of SOA, namely the Enterprise Service Bus (ESB). The paper goes on to describe two ways in which Ada applications can be built as services in a SOA. The first method is to build the Ada code as a Dynamically Linked Library (DLL) and wrap it in Java code. The second method is to use the Ada Web Server (AWS) and build a direct interface to the Ada code that is needed to plug into the ESB.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "enterprise service bus; ESB; service-oriented architecture; SOA; software architecture", } @Article{Tan:2007:IIL, author = "Gang Tan and Greg Morrisett", title = "{Ilea}: inter-language analysis across {Java} and {C}", journal = j-SIGPLAN, volume = "42", number = "10", pages = "39--56", month = oct, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1297027.1297031", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:00:28 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java bug finders perform static analysis to find implementation mistakes that can lead to exploits and failures; Java compilers perform static analysis for optimization. If Java programs contain foreign function calls to C libraries, however, static analysis is forced to make either optimistic or pessimistic assumptions about the foreign function calls, since models of the C libraries are typically not available.\par We propose ILEA (stands for Inter-LanguagE Analysis), which is a framework that enables existing Java analyses to understand the behavior of C code. Our framework includes: (1) a novel specification language, which extends the Java Virtual Machine Language (JVML) with a few primitives that approximate the effects that the C code might have; (2) an automatic specification extractor, which builds models of the C code. Comparing to other possible specification languages, our language is expressive, yet facilitates construction of automatic specification extractors. Furthermore, because the specification language is based on the JVML, existing Java analyses can be easily migrated to utilize specifications in the language. We also demonstrate the utility of the specifications generated, by modifying an existing non-null analysis to identify null-related bugs in Java applications that contain C libraries. Our preliminary experiments identified dozens of null-related bugs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "inter-language analysis; Java Native Interface; JNI; JVML; specification extraction", } @Article{Tang:2007:PRI, author = "Audrey Tang", title = "{Perl 6}: reconciling the irreconcilable", journal = j-SIGPLAN, volume = "42", number = "1", pages = "1--1", month = jan, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1190215.1190218", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:53:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Perl is a general-purpose language, known for its vast number of freely available libraries. The Perl 6 project was started to improve the language's support for multi-paradigmatic programming, while retaining compatibility with the existing code base. This talk discusses how Perl 6 attempts to reconcile various competing paradigms in the field of programming language design, such as static vs. dynamic typechecking, nominal vs. structural subtyping, prototype vs. class-based objects, and lazy vs. eager evaluation. Moreover, this talk also covers the design and development of Pugs, a self-hosting Perl 6 implementation bootstrapped from Haskell, targeting multiple runtime environments, including Perl 5, JavaScript and Parrot.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Titzer:2007:ESA, author = "Ben L. Titzer and Joshua Auerbach and David F. Bacon and Jens Palsberg", title = "The {ExoVM} system for automatic {VM} and application reduction", journal = j-SIGPLAN, volume = "42", number = "6", pages = "352--362", month = jun, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1250734.1250775", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:55:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Embedded systems pose unique challenges to Java application developers and virtual machine designers. Chief among these challenges is the memory footprint of both the virtual machine and the applications that run within it. With the rapidly increasing set of features provided by the Java language, virtual machine designers are often forced to build custom implementations that make various tradeoffs between the footprint of the virtual machine and the subset of the Java language and class libraries that are supported. In this paper, we present the ExoVM, a system in which an application is initialized in a fully featured virtual machine, and then the code, data, and virtual machine features necessary to execute it are packaged into a binary image. Key to this process is feature analysis, a technique for computing the reachable code and data of a Java program and its implementation inside the VM simultaneously. The ExoVM reduces the need to develop customized embedded virtual machines by reusing a single VM infrastructure and automatically eliding the implementation of unused Java features on a per-program basis. We present a constraint-based instantiation of the analysis technique, an implementation in IBM's J9 Java VM, experiments evaluating our technique for the EEMBC benchmark suite, and some discussion of the individual costs of some of Java's features. Our evaluation shows that our system can reduce the non-heap memory allocation of the virtual machine by as much as 75\%. We discuss VM and language design decisions that our work shows are important in targeting embedded systems, supporting the long-term goal of a common VM infrastructure spanning from motes to large servers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dead code elimination; embedded systems; feature analysis; persistence; pre-initialization; static analysis; static compilation; VM design; VM modularity", } @Article{Venstermans:2007:JOH, author = "Kris Venstermans and Lieven Eeckhout and Koen {De Bosschere}", title = "{Java} object header elimination for reduced memory consumption in 64-bit virtual machines", journal = j-TACO, volume = "4", number = "3", pages = "17:1--17:??", month = sep, year = "2007", CODEN = "????", DOI = "https://doi.org/10.1145/1275937.1275941", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Mon Jun 16 11:41:20 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Memory performance is an important design issue for contemporary computer systems given the huge processor/memory speed gap. This paper proposes a space-efficient Java object model for reducing the memory consumption of 64-bit Java virtual machines. We completely eliminate the object header through typed virtual addressing (TVA) or implicit typing. TVA encodes the object type in the object's virtual address by allocating all objects of a given type in a contiguous memory segment. This allows for removing the type information as well as the status field from the object header. Whenever type and status information is needed, masking is applied to the object's virtual address for obtaining an offset into type and status information structures. Unlike previous work on implicit typing, we apply TVA to a selected number of frequently allocated object types, hence, the name selective TVA (STVA); this limits the amount of memory fragmentation. In addition to applying STVA, we also compress the type information block (TIB) pointers for all objects that do not fall under TVA. We implement the space-efficient Java object model in the 64-bit version of the Jikes RVM on an AIX IBM platform and compare its performance against the traditionally used Java object model using a multitude of Java benchmarks. We conclude that the space-efficient Java object model reduces memory consumption by on average 15\% (and up to 45\% for some benchmarks). About one-half the reduction comes from TIB pointer compression; the other one-half comes from STVA. In terms of performance, the space-efficient object model generally does not affect performance; however, for some benchmarks we observe statistically significant performance speedups, up to 20\%.", acknowledgement = ack-nhfb, articleno = "17", fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", keywords = "64-bit implementation; implicit typing; Java object model; typed virtual addressing; Virtual machine", } @Article{Vilner:2007:FCC, author = "Tamar Vilner and Ela Zur and Judith Gal-Ezer", title = "Fundamental concepts of {CS1}: procedural vs. object oriented paradigm --- a case study", journal = j-SIGCSE, volume = "39", number = "3", pages = "171--175", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268835", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", abstract = "For some time, there has been an ongoing debate among Computer Science (CS) educators about the advantages and disadvantages of the shift from the procedural to the Object-Oriented (OO) paradigm. In our institution, we decided to implement this shift in the year 2005, when we changed our introductory course and started, right from the beginning, to teach the Java language, instead of the procedural facet of C++. While we still offered the two different paradigms in parallel, we had two similar groups each taking one of the paradigms. These two groups served as the research population of the study we describe in this paper. We examined whether the shift from the procedural to the OO paradigm had an effect on students' perception of fundamental concepts taught in the introductory course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Wang:2007:PAS, author = "Yi-Hsien Wang and I-Chen Wu and Jyh-Yaw Jiang", title = "A portable {AWT\slash Swing} architecture for {Java} game development", journal = j-SPE, volume = "37", number = "7", pages = "727--745", month = jun, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.786", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:15 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "2 Nov 2006", } @Article{Wassermann:2007:SCD, author = "Gary Wassermann and Carl Gould and Zhendong Su and Premkumar Devanbu", title = "Static checking of dynamically generated queries in database applications", journal = j-TOSEM, volume = "16", number = "4", pages = "14:1--14:??", month = sep, year = "2007", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1276933.1276935", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:12:55 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many data-intensive applications dynamically construct queries in response to client requests and execute them. Java servlets, for example, can create strings that represent SQL queries and then send the queries, using JDBC, to a database server for execution. The servlet programmer enjoys static checking via Java's strong type system. However, the Java type system does little to check for possible errors in the dynamically generated SQL query strings. Thus, a type error in a generated selection query (e.g., comparing a string attribute with an integer) can result in an SQL runtime exception. Currently, such defects must be rooted out through careful testing, or (worse) might be found by customers at runtime. In this article, we present a sound, static program analysis technique to verify that dynamically generated query strings do not contain type errors. We describe our analysis technique and provide soundness results for our static analysis algorithm. We also describe the details of a prototype tool based on the algorithm and present several illustrative defects found in senior software-engineering student-team projects, online tutorial examples, and a real-world purchase order system written by one of the authors.", acknowledgement = ack-nhfb, articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "context-free language reachability; database queries; JDBC; Static checking", } @Book{Weaver:2007:JSD, author = "James L. Weaver", title = "{JavaFX} script: dynamic {Java} scripting for rich {Internet}\slash client-side applications", publisher = "Apress", address = "Berkeley, CA, USA", pages = "xi + 201", year = "2007", ISBN = "1-59059-945-4", ISBN-13 = "978-1-59059-945-7", LCCN = "????", bibdate = "Tue Jan 27 14:50:16 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", acknowledgement = ack-nhfb, } @Article{Wyman:2007:ZZI, author = "L. W. Wyman and J. Casta{\~n}o and J. P. Kubala and R. J. Maddison and B. R. Pierce and R. R. Rogers", title = "{zAAPs} and {zIIPs}: Increasing the strategic value of {System z}", journal = j-IBM-JRD, volume = "51", number = "1/2", pages = "77--86", month = jan # " \slash " # mar, year = "2007", CODEN = "IBMJAE", ISSN = "0018-8646 (print), 2151-8556 (electronic)", ISSN-L = "0018-8646", bibdate = "Fri Feb 9 20:31:06 MST 2007", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/", URL = "http://www.research.ibm.com/journal/rd/511/wyman.html", abstract = "With the addition of IBM System z application assist processors (zAAPs) and integrated information processors (zIIPs) to the portfolio of special-purpose IBM System z processors, the reinvention of the IBM mainframe continues. Jointly, zAAPs and zIIPs provide significant IBM System z9e integrated and cost-effective processing cycles for today's strategic Javae and DB2t for z/OS programming platforms which are increasingly fundamental to enterprise-class business environments. Overviews of zAAPs and zIIPs are presented that describe their functionality, design, and use by the z/OS operating system to achieve the execution of both Java and z/OS DB2 programming functions.", acknowledgement = ack-nhfb, fjournal = "IBM Journal of Research and Development", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5288520", ordernumber = "????", } @Article{Xiao:2007:HIB, author = "Gaoyu Xiao and Aamer Aziz and Wieslaw L. Nowinski", title = "Hybrid image-based collision detection in {Java 3D}", journal = j-SPE, volume = "37", number = "9", pages = "963--982", day = "25", month = jul, year = "2007", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.796", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Oct 17 18:33:16 MDT 2007", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "19 Dec 2006", } @Article{Xinogalos:2007:TJB, author = "Stelios Xinogalos and Maya Satratzemi and Vassilios Dagdilelis", title = "Teaching {Java} with {BlueJ}: a two-year experience", journal = j-SIGCSE, volume = "39", number = "3", pages = "345--345", month = sep, year = "2007", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1269900.1268914", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 16:57:36 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of the 12th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE'07).", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Yang:2007:DPP, author = "X. Yang and A. Akram and R. J. Allan", title = "Developing portals\slash portlets using {Enterprise JavaBeans} for {Grid} users", journal = j-CCPE, volume = "19", number = "12", pages = "1633--1641", day = "25", month = aug, year = "2007", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1200", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:15 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "7 Jun 2007", } @Article{Yang:2007:ERM, author = "Byung-Sun Yang and Junpyo Lee and SeungIl Lee and Seongbae Park and Yoo C. Chung and Suhyun Kim and Kemal Ebcioglu and Erik Altman and Soo-Mook Moon", title = "Efficient Register Mapping and Allocation in {LaTTe}, an Open-Source {Java} Just-in-Time Compiler", journal = j-IEEE-TRANS-PAR-DIST-SYS, volume = "18", number = "1", pages = "57--69", month = jan, year = "2007", CODEN = "ITDSEO", DOI = "https://doi.org/10.1109/TPDS.2007.10", ISSN = "1045-9219 (print), 1558-2183 (electronic)", ISSN-L = "1045-9219", bibdate = "Thu Jul 3 14:26:51 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Parallel and Distributed Systems", journal-URL = "http://www.computer.org/tpds/archives.htm", } @Article{Yu:2007:JIB, author = "Dachuan Yu and Ajay Chander and Nayeem Islam and Igor Serikov", title = "{JavaScript} instrumentation for browser security", journal = j-SIGPLAN, volume = "42", number = "1", pages = "237--249", month = jan, year = "2007", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1190216.1190252", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 10:53:14 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "It is well recognized that JavaScript can be exploited to launch browser-based security attacks. We propose to battle such attacks using program instrumentation. Untrusted JavaScript code goes through a rewriting process which identifies relevant operations, modifies questionable behaviors, and prompts the user (a web page viewer) for decisions on how to proceed when appropriate. Our solution is parametric with respect to the security policy-the policy is implemented separately from the rewriting, and the same rewriting process is carried out regardless of which policy is in use. Be-sides providing a rigorous account of the correctness of our solution, we also discuss practical issues including policy management and prototype experiments. A useful by-product of our work is an operational semantics of a core subset of JavaScript, where code embedded in (HTML) documents may generate further document pieces (with new code embedded) at runtime, yielding a form of self-modifying code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "edit automata; JavaScript; program instrumentation; web browser", } @Article{Zhang:2007:ACA, author = "Weilei Zhang and Barbara G. Ryder", title = "Automatic construction of accurate application call graph with library call abstraction for {Java}", journal = j-J-SOFTW-MAINT-EVOL, volume = "19", number = "4", pages = "231--252", month = jul, year = "2007", CODEN = "JSMECT", DOI = "https://doi.org/10.1002/smr.351", ISSN = "1532-060X (print), 1532-0618 (electronic)", ISSN-L = "1532-060X", bibdate = "Wed Jan 31 10:00:21 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jsoftwmaintevol.bib", acknowledgement = ack-nhfb, fjournal = "Journal of Software Maintenance and Evolution: Research and Practice", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481", } @Article{Abraham:2008:DPS, author = "Erika {\'A}brah{\'a}m and Frank S. de Boer and Willem-Paul de Roever and Martin Steffen", title = "A Deductive Proof System for Multithreaded {Java} with Exceptions", journal = j-FUND-INFO, volume = "82", number = "4", pages = "391--463", month = jul, year = "2008", CODEN = "FUMAAJ", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:06:39 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/multithreading.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Alagic:2008:GJP, author = "Suad Alagi{\'c} and Mark Royer", title = "Genericity in {Java}: persistent and database systems implications", journal = j-VLDB-J, volume = "17", number = "4", pages = "847--878", month = jul, year = "2008", CODEN = "VLDBFR", ISSN = "1066-8888 (print), 0949-877X (electronic)", ISSN-L = "1066-8888", bibdate = "Mon Jun 23 10:51:30 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Lack of parametric polymorphism has been a major obstacle for making Java a viable database programming language. Regrettably, a recently accepted solution for genericity in Java 5.0 has far-reaching negative implications for persistent and database systems because of static and dynamic type violations. Severe implications occur in typical database transactions when processing a variety of database collections. Well-known approaches to persistence in Java, including Java's own persistence mechanism, do not perform correctly due to incorrect dynamic type information that gets promoted to persistence along with objects. Dynamic checking of types of objects fetched from the persistent store may now lead to unexpected type violations. Further problems occur in reflective transactions as Java Core Reflection now allows dynamic type violations without detecting them or throwing standard exceptions. All of this shows that extending Java with parametric polymorphism has not made Java a more viable database programming language. Both legacy systems, such as those based on the Java binding of the ODMG or JDO, and future Java-related persistent and database technologies will be affected. The source of these problems is in an implementation idiom called type erasure. This paper provides formal proofs of the above implications of type erasure along with specific samples of code in Java 5.0 illustrating these violations. The limitations of the virtual platform and extensions required for persistent systems to solve this problem are also elaborated.", acknowledgement = ack-nhfb, fjournal = "VLDB Journal: Very Large Data Bases", journal-URL = "http://portal.acm.org/toc.cfm?id=J869", keywords = "Java; object persistence; object-oriented databases; reflection; transactions; type systems; virtual platforms", } @Article{Allenstein:2008:QSS, author = "Brett Allenstein and Andrew Yost and Paul Wagner and Joline Morrison", title = "A query simulation system to illustrate database query execution", journal = j-SIGCSE, volume = "40", number = "1", pages = "493--497", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352301", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "The underlying processes that enable database query execution are fundamental to understanding database management systems. However, these processes are complex and can be difficult to explain and illustrate. To address this problem, we have developed a Java-based query simulation system that enables students to visualize the steps involved in processing DML queries. We performed a field experiment to evaluate the system, and the results suggest that the system improves student comprehension of the query execution process.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Anonymous:2008:BRBe, author = "Anonymous", title = "Book Review: {{\booktitle{SAS Graphics for Java: Examples Using SAS AppDev Studio and the Output Delivery System}} by Wendy Bohnenkamp; Jackie Iverson}", journal = j-TECHNOMETRICS, volume = "50", number = "3", pages = "412--412", month = aug, year = "2008", CODEN = "TCMTA2", DOI = "https://doi.org/10.2307/25471510", ISSN = "0040-1706 (print), 1537-2723 (electronic)", ISSN-L = "0040-1706", bibdate = "Sat Jun 21 13:21:24 MDT 2014", bibsource = "http://www.jstor.org/journals/00401706.html; http://www.jstor.org/stable/i25471481; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sas.bib; https://www.math.utah.edu/pub/tex/bib/technometrics2000.bib", URL = "http://www.jstor.org/stable/25471510", acknowledgement = ack-nhfb, fjournal = "Technometrics", journal-URL = "http://www.jstor.org/journals/00401706.html", } @Article{Appert:2008:SAS, author = "C. Appert and M. Beaudouin-Lafon", title = "{SwingStates}: adding state machines to {Java} and the {Swing} toolkit", journal = j-SPE, volume = "38", number = "11", pages = "1149--1182", day = "??", month = sep, year = "2008", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.867", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 09:55:30 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Dec 19 2007 10:50AM", } @Article{Arnold:2008:QER, author = "Matthew Arnold and Martin Vechev and Eran Yahav", title = "{QVM}: an efficient runtime for detecting defects in deployed systems", journal = j-SIGPLAN, volume = "43", number = "10", pages = "143--162", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449776", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Coping with software defects that occur in the post-deployment stage is a challenging problem: bugs may occur only when the system uses a specific configuration and only under certain usage scenarios. Nevertheless, halting production systems until the bug is tracked and fixed is often impossible. Thus, developers have to try to reproduce the bug in laboratory conditions. Often the reproduction of the bug consists of the lion share of the debugging effort.\par In this paper we suggest an approach to address the aforementioned problem by using a specialized runtime environment (QVM, for {\em Quality Virtual Machine\/}). QVM efficiently detects defects by continuously monitoring the execution of the application in a production setting. QVM enables the efficient checking of violations of user-specified correctness properties, e.g., typestate safety properties, Java assertions, and heap properties pertaining to ownership.\par QVM is markedly different from existing techniques for continuous monitoring by using a novel overhead manager which enforces a user-specified overhead budget for quality checks. Existing tools for error detection in the field usually disrupt the operation of the deployed system. QVM, on the other hand, provides a balanced trade off between the cost of the monitoring process and the maintenance of sufficient accuracy for detecting defects. Specifically, the overhead cost of using QVM instead of a standard JVM, is low enough to be acceptable in production environments.\par We implemented QVM on top of IBM's J9 Java Virtual Machine and used it to detect and fix various errors in real-world applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "algorithms; reliability; virtual machines", } @Article{Auerbach:2008:FTG, author = "Joshua Auerbach and David F. Bacon and Rachid Guerraoui and Jesper Honig Spring and Jan Vitek", title = "Flexible task graphs: a unified restricted thread programming model for {Java}", journal = j-SIGPLAN, volume = "43", number = "7", pages = "1--11", month = jul, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1375657.1375659", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:05:54 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The disadvantages of unconstrained shared-memory multi-threading in Java, especially with regard to latency and determinism in realtime systems, have given rise to a variety of language extensions that place restrictions on how threads allocate, share, and communicate memory, leading to order-of-magnitude reductions in latency and jitter. However, each model makes different trade-offs with respect to expressiveness, efficiency, enforcement, and latency, and no one model is best for all applications.\par In this paper we present Flexible Task Graphs (Flexotasks), a single system that allows different isolation policies and mechanisms to be combined in an orthogonal manner, subsuming four previously proposed models as well as making it possible to use new combinations best suited to the needs of particular applications. We evaluate our implementation on top of the IBM Web-Sphere Real Time Java virtual machine using both a microbenchmark and a 30 KLOC avionics collision detector. We show that Flexotasks are capable of executing periodic threads at 10 KHz with a standard deviation of 1.2$ \mu $ s and that it achieves significantly better performance than RTSJ's scoped memory constructs while remaining impervious to interference from global garbage collection.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java Virtual Machine; memory management; ownership types; real-time systems", } @Article{Badea:2008:IJS, author = "Carmen Badea and Alexandru Nicolau and Alexander V. Veidenbaum", title = "Impact of {JVM} superoperators on energy consumption in resource-constrained embedded systems", journal = j-SIGPLAN, volume = "43", number = "7", pages = "23--30", month = jul, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379023.1375661", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:05:54 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Energy consumption is one of the most important issues in resource-constrained embedded systems. Many such systems run Java-based applications due to Java's architecture-independent format (bytecode). Standard techniques for executing bytecode programs, e.g. interpretation or just-in-time compilation, have performance or memory issues that make them unsuitable for resource-constrained embedded systems.\par A superoperator-extended, lightweight Java Virtual Machine (JVM) can be used in resource-constrained embedded systems to improve performance and reduce memory consumption. This paper shows that such a JVM also significantly reduces energy consumption. This is due primarily to a considerable reduction in the number of memory accesses and thus in energy consumption in the instruction and data TLBs and caches and, in most cases, in DRAM energy consumption. Since the fraction of processor energy dissipated in these units is approximately 60\%, the energy savings achieved are significant.\par The paper evaluates the number of load, store, and computational instructions eliminated by the use of proposed superoperators as compared to a simple interpreter on a set of embedded benchmarks. Using cache and DRAM per access energy we estimate the total processor/DRAM energy saved by using our JVM. Our results show that with 32KB caches the reduction in energy consumption ranges from 40\% to 60\% of the overall processor, plus DRAM energy. Even higher savings may be achieved with smaller caches and increased access to DRAM as DRAM access energy is fairly high.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "embedded systems; energy estimation; Java Virtual Machine; profile-guided optimization; superoperators", } @Article{Baldi:2008:TAL, author = "Pierre F. Baldi and Cristina V. Lopes and Erik J. Linstead and Sushil K. Bajracharya", title = "A theory of aspects as latent topics", journal = j-SIGPLAN, volume = "43", number = "10", pages = "543--562", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449807", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "After more than 10 years, Aspect-Oriented Programming (AOP) is still a controversial idea. While the concept of aspects appeals to everyone's intuitions, concrete AOP solutions often fail to convince researchers and practitioners alike. This discrepancy results in part from a lack of an adequate theory of aspects, which in turn leads to the development of AOP solutions that are useful in limited situations.\par We propose a new theory of aspects that can be summarized as follows: concerns are latent topics that can be automatically extracted using statistical topic modeling techniques adapted to software. Software scattering and tangling can be measured precisely by the entropies of the underlying topic-over-files and files-over-topics distributions. Aspects are latent topics with high scattering entropy.\par The theory is validated empirically on both the large scale, with a study of 4,632 Java projects, and the small scale, with a study of 5 individual projects. From these analyses, we identify two dozen topics that emerge as general-purpose aspects across multiple projects, as well as project-specific topics/concerns. The approach is also shown to produce results that are compatible with previous methods for identifying aspects, and also extends them.\par Our work provides not only a concrete approach for identifying aspects at several scales in an unsupervised manner but, more importantly, a formulation of AOP grounded in information theory. The understanding of aspects under this new perspective makes additional progress toward the design of models and tools that facilitate software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspect-oriented programming; scattering; tangling; topic models", } @Article{Bapst:2008:SIO, author = "Frederic Bapst and Fran{\c{c}}ois Kilchoer", title = "Signalling Integer Overflows in {Java}: a tool for checking overflows in {Java} code", journal = j-DDJ, volume = "33", number = "9", pages = "54--58", month = sep, year = "2008", CODEN = "DDJOEB", ISSN = "1044-789X", bibdate = "Tue Aug 12 18:02:50 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://home.hefr.ch/bapst/cojac", acknowledgement = ack-nhfb, fjournal = "Dr. Dobb's Journal of Software Tools", keywords = "integer overflow detection; Java", remark = "The COJAC (Checking Overflows in JAva Code) tool instruments a compiled {\tt .class} file, replacing integer instructions subject to overflow with calls to routines that report any overflow.", } @Book{Basham:2008:HFS, author = "Bryan Basham and Kathy Sierra and Bert Bates", title = "Head first servlets and {JSP}", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, edition = "Second", pages = "xxxii + 879", year = "2008", ISBN = "0-596-51668-1", ISBN-13 = "978-0-596-51668-0", LCCN = "QA76.3 .B377 2008eb; QA76.3; QA76.3 .B377 2008; Internet", bibdate = "Sat Nov 13 10:16:55 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90; prodorbis.library.yale.edu:7090/voyager", acknowledgement = ack-nhfb, remark = "Passing the Sun certified Web component developer exam.", subject = "JavaServer pages; Electronic data processing personnel; Certification; Study guides; Java (Computer program language); Servlets", tableofcontents = "Why use servlets and JSPs? \\ Web app architecture \\ Mini MVC tutorial \\ Being a servlet \\ Being a web app \\ Conversational state \\ Being a JSP \\ Script-free pages \\ Custom tags are powerful \\ When even JSTL isn't enough \\ Deploying your web app \\ Keep it secret, keep it safe \\ The power of filters \\ Enterprise design patterns.", } @Article{Beckman:2008:VCU, author = "Nels E. Beckman and Kevin Bierhoff and Jonathan Aldrich", title = "Verifying correct usage of atomic blocks and typestate", journal = j-SIGPLAN, volume = "43", number = "10", pages = "227--244", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449783", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The atomic block, a synchronization primitive provided to programmers in transactional memory systems, has the potential to greatly ease the development of concurrent software. However, atomic blocks can still be used incorrectly, and race conditions can still occur at the level of application logic. In this paper, we present a intraprocedural static analysis, formalized as a type system and proven sound, that helps programmers use atomic blocks correctly. Using {\em access permissions}, which describe how objects are aliased and modified, our system statically prevents race conditions and enforces typestate properties in concurrent programs. We have implemented a prototype static analysis for the Java language based on our system and have used it to verify several realistic examples.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "permissions; transactional memory; typestate", } @Article{Bellamy:2008:ELT, author = "Ben Bellamy and Pavel Avgustinov and Oege de Moor and Damien Sereni", title = "Efficient local type inference", journal = j-SIGPLAN, volume = "43", number = "10", pages = "475--492", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449802", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Inference of static types for local variables in Java bytecode is the first step of any serious tool that manipulates bytecode, be it for decompilation, transformation or analysis. It is important, therefore, to perform that step as accurately and efficiently as possible. Previous work has sought to give solutions with good worst-case complexity.\par We present a novel algorithm, which is optimised for the common case rather than worst-case performance. It works by first finding a set of minimal typings that are valid for all assignments, and then checking whether these minimal typings satisfy all uses. Unlike previous algorithms, it does not explicitly build a data structure of type constraints, and it is easy to implement efficiently. We prove that the algorithm produces a typing that is both sound (obeying the rules of the language) and as tight as possible.\par We then go on to present extensive experiments, comparing the results of the new algorithm against the previously best known method. The experiments include bytecode that is generated in other ways than compilation of Java source. The new algorithm is always faster, typically by a factor 6, but on some real benchmarks the gain is as high as a factor of 92. Furthermore, whereas that previous method is sometimes suboptimal, our algorithm always returns a tightest possible type.\par We also discuss in detail how we handle primitive types, which is a difficult issue due to the discrepancy in their treatment between Java bytecode and Java source. For the application to decompilation, however, it is very important to handle this correctly.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "program analysis; type inference", } @Article{Bellia:2008:MPP, author = "Marco Bellia and M. Eugenia Occhiuto", title = "Methods as Parameters: A Preprocessing Approach to Higher Order in {Java}", journal = j-FUND-INFO, volume = "85", number = "1--4", pages = "35--50", month = sep, year = "2008", CODEN = "FUMAAJ", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:07:07 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Bernardeschi:2008:DBV, author = "C. Bernardeschi and N. {De Francesco} and G. Lettieri and L. Martini and P. Masci", title = "Decomposing bytecode verification by abstract interpretation", journal = j-TOPLAS, volume = "31", number = "1", pages = "3:1--3:63", month = dec, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1452044.1452047", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Dec 23 11:52:52 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Bytecode verification is a key point in the security chain of the Java platform. This feature is only optional in many embedded devices since the memory requirements of the verification process are too high. In this article we propose an approach that significantly reduces the use of memory by a serial/parallel decomposition of the verification into multiple specialized passes. The algorithm reduces the type encoding space by operating on different abstractions of the domain of types. The results of our evaluation show that this bytecode verification can be performed directly on small memory systems. The method is formalized in the framework of abstract interpretation.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "Abstract interpretation; bytecode verification", } @Article{Biernacki:2008:CDM, author = "Dariusz Biernacki and Jean-Louis Cola{\c{c}}o and Gregoire Hamon and Marc Pouzet", title = "Clock-directed modular code generation for synchronous data-flow languages", journal = j-SIGPLAN, volume = "43", number = "7", pages = "121--130", month = jul, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1375657.1375674", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:05:54 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The compilation of synchronous block diagrams into sequential imperative code has been addressed in the early eighties and can now be considered as folklore. However, separate, or modular, code generation, though largely used in existing compilers and particularly in industrial ones, has never been precisely described or entirely formalized. Such a formalization is now fundamental in the long-term goal to develop a mathematically certified compiler for a synchronous language as well as in simplifying existing implementations.\par This article presents in full detail the modular compilation of synchronous block diagrams into sequential code. We consider a first-order functional language reminiscent of LUSTRE, which it extends with a general $n$-ary merge operator, a reset construct, and a richer notion of clocks. The clocks are used to express activation of computations in the program and are specifically taken into account during the compilation process to produce efficient imperative code. We introduce a generic machine-based intermediate language to represent transition functions, and we present a concise clock-directed translation from the source to this intermediate language. We address the target code generation phase by describing a translation from the intermediate language to JAVA and C.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compilation; real-time systems; semantics; synchronous languages; type systems", } @Book{Bloch:2008:EJ, author = "Joshua Bloch", title = "Effective {Java}", publisher = pub-AW, address = pub-AW:adr, edition = "Second", pages = "xxi + 346", year = "2008", ISBN = "0-321-35668-3 (paperback)", ISBN-13 = "978-0-321-35668-0 (paperback)", LCCN = "QA76.73.J38 B57 2008", bibdate = "Tue Jan 27 16:10:46 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "The Java series", URL = "http://www.loc.gov/catdir/toc/fy0805/2008926278.html", acknowledgement = ack-nhfb, remark = "Revised and updated for Java SE 6.", subject = "Java (Computer program language)", tableofcontents = "Introduction \\ Creating and destroying objects \\ Methods common to all objects \\ Classes and interfaces \\ Generics \\ Enums and annotations \\ Methods \\ General programming \\ Exceptions \\ Concurrency \\ Serialization", } @Article{Boehm:2008:FCC, author = "Hans-J. Boehm and Sarita V. Adve", title = "Foundations of the {C++} concurrency memory model", journal = j-SIGPLAN, volume = "43", number = "6", pages = "68--78", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379022.1375591", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Currently multi-threaded C or C++ programs combine a single-threaded programming language with a separate threads library. This is not entirely sound [7].\par We describe an effort, currently nearing completion, to address these issues by explicitly providing semantics for threads in the next revision of the C++ standard. Our approach is similar to that recently followed by Java [25], in that, at least for a well-defined and interesting subset of the language, we give sequentially consistent semantics to programs that do not contain data races. Nonetheless, a number of our decisions are often surprising even to those familiar with the Java effort:\par We (mostly) insist on sequential consistency for race-free programs, in spite of implementation issues that came to light after the Java work.\par We give no semantics to programs with data races. There are no benign C++ data races.\par We use weaker semantics for trylock than existing languages or libraries, allowing us to promise sequential consistency with an intuitive race definition, even for programs with trylock.\par This paper describes the simple model we would like to be able to provide for C++ threads programmers, and explain how this, together with some practical, but often under-appreciated implementation constraints, drives us towards the above decisions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "c++; data race; memory consistency; memory model; sequential consistency; trylock", } @Article{Bond:2008:TML, author = "Michael D. Bond and Kathryn S. McKinley", title = "Tolerating memory leaks", journal = j-SIGPLAN, volume = "43", number = "10", pages = "109--126", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449774", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Type safety and garbage collection in managed languages eliminate memory errors such as dangling pointers, double frees, and leaks of unreachable objects. Unfortunately, a program still leaks memory if it maintains references to objects it will never use again. Leaked objects decrease program locality and increase garbage collection frequency and workload. A growing leak will eventually exhaust memory and crash the program.\par This paper introduces a {\em leak tolerance\/} approach called {\em Melt\/} that safely eliminates performance degradations and crashes due to leaks of dead but reachable objects in managed languages, given sufficient disk space to hold leaking objects. Melt (1) identifies {\em stale\/} objects that the program is not accessing; (2) segregates in-use and stale objects by storing stale objects to disk; and (3) preserves safety by activating stale objects if the program subsequently accesses them. We design and build a prototype implementation of Melt in a Java VM and show it adds overhead low enough for production systems. Whereas existing VMs grind to a halt and then crash on programs with leaks, Melt keeps many of these programs running much longer without significantly degrading performance. Melt provides users the illusion of a fixed leak and gives developers more time to fix leaky programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bug tolerance; managed languages; memory leaks", } @Article{Chen:2008:MJR, author = "Chung-Kai Chen and Cheng-Wei Chen and Chien-Tan Ko and Jenq-Kuen Lee and Jyh-Cheng Chen", title = "Mobile {Java RMI} support over heterogeneous wireless networks: a case study", journal = j-J-PAR-DIST-COMP, volume = "68", number = "11", pages = "1425--1436", month = nov, year = "2008", CODEN = "JPDCER", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Sep 1 16:27:23 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/07437315", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Chen:2008:TPC, author = "Juan Chen and Chris Hawblitzel and Frances Perry and Mike Emmi and Jeremy Condit and Derrick Coetzee and Polyvios Pratikaki", title = "Type-preserving compilation for large-scale optimizing object-oriented compilers", journal = j-SIGPLAN, volume = "43", number = "6", pages = "183--192", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379022.1375604", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Type-preserving compilers translate well-typed source code, such as Java or C\#, into verifiable target code, such as typed assembly language or proof-carrying code. This paper presents the implementation of type-preserving compilation in a complex, large-scale optimizing compiler. Compared to prior work, this implementation supports extensive optimizations, and it verifies a large portion of the interface between the compiler and the runtime system. This paper demonstrates the practicality of type-preserving compilation in complex optimizing compilers: the generated typed assembly language is only 2.3\% slower than the base compiler's generated untyped assembly language, and the type-preserving compiler is 82.8\% slower than the base compiler.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "object-oriented compilers; type-preserving compilation", } @Article{Chern:2008:ISD, author = "Rick Chern and Kris {De Volder}", title = "The impact of static-dynamic coupling on remodularization", journal = j-SIGPLAN, volume = "43", number = "10", pages = "261--276", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449786", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We explore the concept of {\em static-dynamic coupling\/} --the degree to which changes in a program's static modular structure imply changes to its dynamic structure. This paper investigates the impact of static-dynamic coupling in a programming language on the effort required to evolve the coarse modular structure of programs written in that language. We performed a series of remodularization case studies in both Java and SubjectJ. SubjectJ is designed to be similar to Java, but have strictly less static-dynamic coupling. Our results include quantitative measures-time taken and number of bugs introduced--as well as a more subjective qualitative analysis of the remodularization process. All results point in the same direction and suggest that static-dynamic coupling causes substantial accidental complexity for the remodularization of Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "hyperslices; language design; refactoring; remodularization; static-dynamic coupling; subject-oriented programming", } @Article{Choi:2008:SHM, author = "Yoonseo Choi and Hwansoo Han", title = "Shared heap management for memory-limited {Java} virtual machines", journal = j-TECS, volume = "7", number = "2", pages = "13:1--13:??", month = feb, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1331331.1331337", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Jun 12 15:22:00 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "One scarce resource in embedded systems is memory. Multitasking makes the lack of memory problem even worse. Most current embedded systems, which do not provide virtual memory, simply divide physical memory and evenly assign contiguous memory chunks to multiple applications. Such simple memory management can frequently cause the lack of available memory for some applications, while others are not using the full amount of assigned memory. To overcome inefficiency in current memory management, we present an efficient heap management scheme that allows multiple applications to share heap space. To reduce overall heap memory usage, applications adaptively acquire subheaps out of shared pool of memory and release surplus subheaps to shared pool. As a result, applications see noncontiguous multiple subheaps as a heap in their address space. We target Java applications to implement our heap-sharing scheme in the KVM from Sun Microsystems. To protect fragmented heap space with a limited number of regions in memory protection unit (MPU), we maintain only a limited number of subheaps. We experimentally evaluate our heap management scheme with J2ME MIDP applications. Our static and dynamic schemes reduce heap memory usage, on average, by 30 and 27\%, respectively. For both schemes, overheads are kept low. The execution times in our schemes are increased only by 0.01\% for static scheme and 0.35\% for dynamic scheme, on average.", acknowledgement = ack-nhfb, articleno = "13", fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "dynamic memory management; garbage collection; heap sharing; memory protection unit", } @Article{Cimadamore:2008:RJW, author = "Maurizio Cimadamore and Mirko Viroli", title = "On the reification of {Java} wildcards", journal = j-SCI-COMPUT-PROGRAM, volume = "73", number = "2--3", pages = "59--75", day = "1", month = oct, year = "2008", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:22 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Corliss:2008:BCJ, author = "Marc L. Corliss and E. Christopher Lewis", title = "{Bantam}: a customizable, {Java}-based, classroom compiler", journal = j-SIGCSE, volume = "40", number = "1", pages = "38--42", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352153", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "This paper introduces the Bantam Java compiler project, a new language and compiler designed specifically for the classroom Bantam Java, the source programming language, is a small subset of the Java language, which is a commonly-used language in introductory programming courses. Because Bantam Java is similar to Java, it leverages the student's existing intuition and the student can automatically apply what they learn in the course directly to Java. The Bantam Java project is also customizable (it supports several tools and targets), which gives instructors flexibility in designing course assignments. Finally, the Bantam Java compiler project includes a free, comprehensive, student manual which can be used in conjunction with any compiler textbook.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Crockford:2008:JGP, author = "Douglas Crockford", title = "{JavaScript}: the good parts", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiii + 153", year = "2008", ISBN = "0-596-51774-2", ISBN-13 = "978-0-596-51774-8", LCCN = "QA76.73.J39 C763 2008", bibdate = "Wed Apr 27 11:12:33 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language)", } @Article{Cross:2008:EAV, author = "James H. {Cross II} and T. Dean Hendrix and David A. Umphress and Larry A. Barowski", title = "Exploring accessibility and visibility relationships in {Java}", journal = j-SIGCSE, volume = "40", number = "3", pages = "103--108", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384300", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "Inheritance and polymorphism are important OOP topics in CS1 and CS2. While these concepts are generally straightforward, there are subtleties that may leave students confused. For example, accessibility of a field in an object is generally determined by the declaring type and access modifiers of the field, and the context in the executing program from which the field is referenced. The dynamic object viewers in jGRASP have been expanded to allow the user to: (1) change the declared type of the object reference to any compatible type and (2) change the accessibility context of the object reference. These options enable the user to explore accessibility and visibility relationships by experimenting with any object on the workbench or in the debugger. Symbols, color, and text are used in the viewer to indicate inheritance relationships, accessibility, and visibility of fields and methods. Initial classroom use has demonstrated the potential for these new viewer features as an aid to students who are learning about inheritance and polymorphism.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Dagenais:2008:ESA, author = "Barth{\'e}l{\'e}my Dagenais and Laurie Hendren", title = "Enabling static analysis for partial {Java} programs", journal = j-SIGPLAN, volume = "43", number = "10", pages = "313--328", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449790", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Software engineering tools often deal with the source code of programs retrieved from the web or source code repositories. Typically, these tools only have access to a subset of a program's source code (one file or a subset of files) which makes it difficult to build a complete and typed intermediate representation (IR). Indeed, for incomplete object-oriented programs, it is not always possible to completely disambiguate the syntactic constructs and to recover the declared type of certain expressions because the declaration of many types and class members are not accessible.\par We present a framework that performs partial type inference and uses heuristics to recover the declared type of expressions and resolve ambiguities in partial Java programs. Our framework produces a complete and typed IR suitable for further static analysis. We have implemented this framework and used it in an empirical study on four large open source systems which shows that our system recovers most declared types with a low error rate, even when only one class is accessible.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java; partial programs; type inference", } @Article{Damiani:2008:TSS, author = "Ferruccio Damiani and Elena Giachino and Paola Giannini and Sophia Drossopoulou", title = "A type safe state abstraction for coordination in {Java}-like languages", journal = j-ACTA-INFO, volume = "45", number = "7--8", pages = "479--536", month = dec, year = "2008", CODEN = "AINFA2", ISSN = "0001-5903 (print), 1432-0525 (electronic)", ISSN-L = "0001-5903", bibdate = "Tue Sep 6 22:41:25 MDT 2011", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0001-5903&volume=45&issue=7; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0001-5903&volume=45&issue=7&spage=479", acknowledgement = ack-nhfb, fjournal = "Acta Informatica", journal-URL = "http://www.springerlink.com/content/0001-5903", } @Book{Deitel:2008:JFI, author = "Harvey M. Deitel", title = "{Java} fundamentals. {I} and {II}: Video {LiveLessons}", publisher = pub-PH, address = pub-PH:adr, year = "2008", ISBN = "0-13-713129-1", ISBN-13 = "978-0-13-713129-7", LCCN = "QA76.73.J38", bibdate = "Sat Nov 30 17:06:56 MST 2013", bibsource = "fsz3950.oclc.org:210/WorldCat; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "1 streaming video file (16h36m25s).", series = "LiveLessons", URL = "http://proquest.safaribooksonline.com/9780137131297", abstract = "Java Fundamentals I and II will show you everything you need to know to start building robust, powerful software with Java SE.", acknowledgement = ack-nhfb, subject = "Java (Computer program language)", } @InProceedings{deMoor:2008:TID, author = "Oege de Moor and Damien Sereni and Pavel Avgustinov and Mathieu Verbaere", title = "Type inference for datalog and its application to query optimisation", crossref = "Lenzerini:2008:PTS", pages = "291--300", year = "2008", DOI = "https://doi.org/10.1145/1376916.1376957", bibdate = "Fri Jun 20 14:17:29 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Certain variants of object-oriented Datalog can be compiled to Datalog with negation. We seek to apply optimisations akin to virtual method resolution (a well-known technique in compiling Java and other OO languages) to improve efficiency of the resulting Datalog programs. The effectiveness of such optimisations strongly depends on the precision of the underlying type inference algorithm. Previous work on type inference for Datalog has focussed on Cartesian abstractions, where the type of each field is computed separately. Such Cartesian type inference is inherently imprecise in the presence of field equalities. We propose a type system where equalities are tracked, and present a type inference algorithm. The algorithm is proved sound. We also prove that it is optimal for Datalog without negation, in the sense that the inferred type is as tight as possible. Extensive experiments with our type-based optimisations, in a commercial implementation of object-oriented Datalog, confirm the benefits of this non-Cartesian type inference algorithm.", acknowledgement = ack-nhfb, keywords = "datalog; query optimization; type inference", } @Article{Distefano:2008:JTP, author = "Dino Distefano and Matthew J. Parkinson", title = "{jStar}: towards practical verification for {Java}", journal = j-SIGPLAN, volume = "43", number = "10", pages = "213--226", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449782", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In this paper we introduce a novel methodology for verifying a large set of Java programs which builds on recent theoretical developments in program verification: it combines the idea of abstract predicate families and the idea of symbolic execution and abstraction using separation logic. The proposed technology has been implemented in a new automatic verification system, called jStar, which combines theorem proving and abstract interpretation techniques. We demonstrate the effectiveness of our methodology by using jStar to verify example programs implementing four popular design patterns (subject/observer, visitor, factory, and pooling). Although these patterns are extensively used by object-oriented developers in real-world applications, so far they have been highly challenging for existing object-oriented verification techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "classes; design patterns; moduarity; separation logic", } @Article{Djordjevic:2008:JPM, author = "Mirela Djordjevic", title = "{Java} projects motivated by student interests", journal = j-SIGCSE, volume = "40", number = "3", pages = "321--321", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384364", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "We present four Java projects suggested by our student that were developed in Java CS1/CS2 course. What is in interest of our students who start programming? The answer might be different from the teachers or textbook approach. The themes include games, drawing, colors, measuring time, etc. Questions can be raised if we can just monitor a process of studying by watching the development of projects and simply making directions in different ways, or can we as teachers learn what major interests of our students are when learning to program. We share our finding of interesting examples.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ducournau:2008:PHA, author = "Roland Ducournau", title = "Perfect hashing as an almost perfect subtype test", journal = j-TOPLAS, volume = "30", number = "6", pages = "33:1--33:56", month = oct, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1391956.1391960", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Sat Nov 1 20:05:05 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Subtype tests are an important issue in the implementation of object-oriented programming languages. Many techniques have been proposed, but none of them perfectly fulfills the five requirements that we have identified: constant-time, linear-space, multiple inheritance, dynamic loading and inlining. In this article, we propose a subtyping test implementation that involves a combination of usual hashtables and Cohen's display, which is a well-known technique for single inheritance hierarchies. This novel approach is based on {\em perfect hashing}, that is, an optimized and truly constant-time variant of hashing that applies to {\em immutable\/} hashtables. We show that the resulting technique closely meets all five requirements. Furthermore, in the framework of Java-like languages --- characterized by single inheritance of classes and multiple subtyping of interfaces --- perfect hashing also applies to method invocation when the receiver is typed by an interface. The proposed technique is compared to some alternatives, including the proposal by Palacz and Vitek [2003]. Time-efficiency is assessed at the cycle level in the framework of Driesen's pseudo-code and the linear-space criterion is validated by statistical simulation on benchmarks consisting of large-scale class hierarchies.", acknowledgement = ack-nhfb, articleno = "33", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "Casting; coloring; downcast; dynamic loading; interfaces; method tables; multiple inheritance; multiple subtyping; perfect hashing; single inheritance; subtype test; virtual function tables", } @Book{Elliott:2008:HHS, author = "James Elliott and Ryan Fowler and Tim O{\'B}rien", title = "Harnessing {Hibernate}: [a step-by-step guide to {Java} persistence]", publisher = pub-ORA, address = pub-ORA:adr, pages = "xiv + 363", year = "2008", ISBN = "0-596-51772-6", ISBN-13 = "978-0-596-51772-4", LCCN = "????", bibdate = "Tue Jan 27 16:00:07 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", price = "US\$39.99", acknowledgement = ack-nhfb, } @Article{Escribano:2008:DTJ, author = "Carmen Escribano and Antonio Giraldo and Mar{\'\i}a Asunci{\'o}n Sastre and Mario Trotta", title = "Digital topology {Java} applet", journal = j-SIGCSE, volume = "40", number = "3", pages = "329--329", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384372", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "We present here a java applet, accessible through the World Wide Web, which allows to apply to a binary digital image a series of topological algorithms for image processing.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Fekete:2008:TSD, author = "Alan D. Fekete", title = "Teaching students to develop thread-safe {Java} classes", journal = j-SIGCSE, volume = "40", number = "3", pages = "119--123", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384304", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/csharp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "Concurrent programming was once the preserve of experts writing systems internals; but recently the growing importance of application servers, and the excellent support in Java and C\# for thread handling, has brought threads and locking as topics that every software developer might experience, and therefore every computer science graduate ought to know. In this paper we report on several years of experience teaching this material in the early years of the curriculum. We focus on one aspect of multi-threaded code, namely how to write sensible thread-safe classes. We identify the learning outcomes we aim to deliver, and we discuss the main pedagogic difficulties students find. We present some examples that can help students avoid common erroneous views.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Fink:2008:ETV, author = "Stephen J. Fink and Eran Yahav and Nurit Dor and G. Ramalingam and Emmanuel Geay", title = "Effective typestate verification in the presence of aliasing", journal = j-TOSEM, volume = "17", number = "2", pages = "9:1--9:??", month = apr, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1348250.1348255", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Jun 16 11:13:13 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This article addresses the challenge of sound typestate verification, with acceptable precision, for real-world Java programs. We present a novel framework for verification of typestate properties, including several new techniques to precisely treat aliases without undue performance costs. In particular, we present a flow-sensitive, context-sensitive, integrated verifier that utilizes a parametric abstract domain combining typestate and aliasing information. To scale to real programs without compromising precision, we present a staged verification system in which faster verifiers run as early stages which reduce the workload for later, more precise, stages.\par We have evaluated our framework on a number of real Java programs, checking correct API usage for various Java standard libraries. The results show that our approach scales to hundreds of thousands of lines of code, and verifies correctness for 93\% of the potential points of failure.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "Alias analysis; program verification; typestate", } @Article{Flanagan:2008:TAS, author = "Cormac Flanagan and Stephen N. Freund and Marina Lifshin and Shaz Qadeer", title = "Types for atomicity: {Static} checking and inference for {Java}", journal = j-TOPLAS, volume = "30", number = "4", pages = "20:1--20:52", month = jul, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1377492.1377495", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Aug 5 19:14:53 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Atomicity is a fundamental correctness property in multithreaded programs. A method is atomic if, for every execution, there is an equivalent serial execution in which the actions of the method are not interleaved with actions of other threads. Atomic methods are amenable to sequential reasoning, which significantly facilitates subsequent analysis and verification.\par This article presents a type system for specifying and verifying the atomicity of methods in multithreaded Java programs using a synthesis of Lipton's theory of reduction and type systems for race detection. The type system supports guarded, write-guarded, and unguarded fields, as well as thread-local data, parameterized classes and methods, and protected locks. We also present an algorithm for verifying atomicity via type inference.\par We have applied our type checker and type inference tools to a number of commonly used Java library classes and programs. These tools were able to verify the vast majority of methods in these benchmarks as atomic, indicating that atomicity is a widespread methodology for multithreaded programming. In addition, reported atomicity violations revealed some subtle errors in the synchronization disciplines of these programs.", acknowledgement = ack-nhfb, articleno = "20", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "Atomicity; concurrent programs; type inference; type systems", } @Article{Frenger:2008:HJ, author = "Paul Frenger", title = "Hard {Java}", journal = j-SIGPLAN, volume = "43", number = "5", pages = "5--9", month = may, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1402227.1402231", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:28 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Sun Microsystems has been a fantastic repository of talent for years, somewhat reminiscent of Apple Computer and the Xerox PARC (Palo Alto Research Center). Sun developed the SPARC line of CPUs for their Solaris Operating System (a flavor of Unix). This group devised the only-ever hardware- and software-independent computer boot-up system (OpenBoot / Open Firmware / IEEE 1275). They also brought forth Java, a programming language which today seems ubiquitous and indispensable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Frost:2008:UJL, author = "Daniel Frost", title = "{Ucigame}, a {Java} library for games", journal = j-SIGCSE, volume = "40", number = "1", pages = "310--314", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352243", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "Ucigame (pronounced OO-see-GAH-me) is a Java package that supports the programming of $2$D sprite-based computer games. Designed for novice programmers, it enables students in an introductory class to write computer games that have animated sprites, music and sound effects, and event-driven keyboard and mouse handling. Ucigame has also been used successfully in a senior-level class for experienced programmers.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Book{Fry:2008:VD, author = "Ben Fry", title = "Visualizing data", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiii + 366", year = "2008", ISBN = "0-596-51455-7", ISBN-13 = "978-0-596-51455-6", LCCN = "T385 .F79 2008; T385", bibdate = "Tue Aug 5 17:58:20 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596514556", abstract = "Provides information on the methods of visualizing data on the Web, along with example projects and code.", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Web site development; Web sites; Authoring programs; Processing (Web site development technology)", } @Article{Furr:2008:CTS, author = "Michael Furr and Jeffrey S. Foster", title = "Checking type safety of foreign function calls", journal = j-TOPLAS, volume = "30", number = "4", pages = "18:1--18:63", month = jul, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1377492.1377493", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Aug 5 19:14:53 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Foreign function interfaces (FFIs) allow components in different languages to communicate directly with each other. While FFIs are useful, they often require writing tricky low-level code and include little or no static safety checking, thus providing a rich source of hard-to-find programming errors. In this article, we study the problem of enforcing type safety across the OCaml-to-C FFI and the Java Native Interface (JNI). We present O-Saffire and J-Saffire, a pair of multilingual type inference systems that ensure C code that uses these FFIs accesses high-level data safely. Our inference systems use {\em representational types\/} to model C's low-level view of OCaml and Java values, and singleton types to track integers, strings, memory offsets, and type tags through C. J-Saffire, our Java system, uses a polymorphic flow-insensitive, unification-based analysis. Polymorphism is important because it allows us to precisely model user-defined wrapper functions and the more than 200 JNI functions. O-Saffire, our OCaml system, uses a monomorphic flow-sensitive analysis because, while polymorphism is much less important for the OCaml FFI flow-sensitivity is critical to track conditional branches, which are used when pattern matching OCaml data in C. O-Saffire also tracks garbage collection information to ensure that local C pointers to the OCaml heap are registered properly, which is not necessary for the JNI. We have applied O-Saffire and J-Saffire to a set of benchmarks and found many bugs and questionable coding practices. These results suggest that static checking of FFIs can be a valuable tool in writing correct multilingual software.", acknowledgement = ack-nhfb, articleno = "18", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "dataflow analysis; FFI; flow-sensitive type system; foreign function calls; Foreign function interface; Java; Java Native Interface; JNI; multilingual type inference; multilingual type system; OCaml; representational type", } @Article{Gal:2008:JBV, author = "Andreas Gal and Christian W. Probst and Michael Franz", title = "{Java} bytecode verification via static single assignment form", journal = j-TOPLAS, volume = "30", number = "4", pages = "21:1--21:21", month = jul, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1377492.1377496", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Aug 5 19:14:53 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java Virtual Machines (JVMs) traditionally perform bytecode verification by way of an iterative dataflow analysis. Bytecode verification is necessary to ensure type safety because temporary variables in the JVM are not statically typed. We present an alternative verification mechanism that transforms JVM bytecode into Static Single Assignment Form (SSA) and thereby propagates definitions directly to uses. Type checking at control flow merge points can then be performed in a single pass.\par Our prototype implementation of the new algorithm is faster than the standard JVM bytecode verifier. It has the additional benefit of generating SSA as a side effect, which may be immediately useful for a subsequent dynamic compilation stage.", acknowledgement = ack-nhfb, articleno = "21", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "dataflow analysis; Java bytecode verification; static single assignment form", } @InProceedings{Gardner:2008:LHR, author = "Philippa A. Gardner and Gareth D. Smith and Mark J. Wheelhouse and Uri D. Zarfaty", title = "Local {Hoare} reasoning about {DOM}", crossref = "Lenzerini:2008:PTS", pages = "261--270", year = "2008", DOI = "https://doi.org/10.1145/1376916.1376953", bibdate = "Fri Jun 20 14:17:29 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The W3C Document Object Model (DOM) specifies an XML update library. DOM is written in English, and is therefore not compositional and not complete. We provide a first step towards a compositional specification of DOM. Unlike DOM, we are able to work with a minimal set of commands and obtain a complete reasoning for straight-line code. Our work transfers O'Hearn, Reynolds and Yang's local Hoare reasoning for analysing heaps to XML, viewing XML as an in-place memory store as does DOM. In particular, we apply recent work by Calcagno, Gardner and Zarfaty on local Hoare reasoning about simple tree update to this real-world DOM application. Our reasoning not only formally specifies a significant subset of DOM Core Level 1, but can also be used to verify, for example, invariant properties of simple Javascript programs.", acknowledgement = ack-nhfb, keywords = "context logic; dom; local Hoare reasoning; XML", } @Article{Gebotys:2008:EAW, author = "Catherine H. Gebotys and Brian A. White", title = "{EM} analysis of a wireless {Java}-based {PDA}", journal = j-TECS, volume = "7", number = "4", pages = "44:1--44:??", month = jul, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1376804.1376812", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Tue Aug 5 19:32:59 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The susceptibility of wireless portable devices to electromagnetic (EM) attacks is largely unknown. If analysis of electromagnetic (EM) waves emanating from the wireless device during a cryptographic computation do leak sufficient information, it may be possible for an attacker to reconstruct the secret key. Possession of the secret cryptographic key would render all future wireless communications insecure and cause further potential problems, such as identity theft. Despite the complexities of a PDA wireless device, such as operating system events, interrupts, cache misses, and other interfering events, this article demonstrates that, for the first time, repeatable EM differential attacks are possible. The proposed differential analysis methodology involves precharacterization of the PDA device (thresholding and pattern recognition), and a new frequency-based differential analysis. Unlike previous research, the new methodology does not require perfect alignment of EM frames and is repeatable in the presence of a complex embedded system (including cache misses, operating system events, etc), thus supporting attacks on real embedded systems. This research is important for future wireless embedded systems, which will increasingly demand higher levels of security.", acknowledgement = ack-nhfb, articleno = "44", fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "countermeasures; EM analysis; power attacks; Side-channel analysis", } @Article{Genaud:2008:EPC, author = "St{\'e}phane Genaud and Pierre Gan{\c{c}}arski and Guillaume Latu and Alexandre Blansch{\'e} and Choopan Rattanapoka and Damien Vouriot", title = "Exploitation of a parallel clustering algorithm on commodity hardware with {P2P-MPI}", journal = j-J-SUPERCOMPUTING, volume = "43", number = "1", pages = "21--41", month = jan, year = "2008", CODEN = "JOSUED", DOI = "https://doi.org/10.1007/s11227-007-0136-2", ISSN = "0920-8542 (print), 1573-0484 (electronic)", ISSN-L = "0920-8542", bibdate = "Wed Jul 9 17:32:33 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0920-8542&volume=43&issue=1; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0920-8542&volume=43&issue=1&spage=21", acknowledgement = ack-nhfb, fjournal = "The Journal of Supercomputing", journal-URL = "http://link.springer.com/journal/11227", keywords = "Clustering; Evolutionary algorithms; Grid; Java; Parallel algorithms", } @Article{Georges:2008:JPE, author = "Andy Georges and Lieven Eeckhout and Dries Buytaert", title = "{Java} performance evaluation through rigorous replay compilation", journal = j-SIGPLAN, volume = "43", number = "10", pages = "367--384", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449794", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "A managed runtime environment, such as the Java virtual machine, is non-trivial to benchmark. Java performance is affected in various complex ways by the application and its input, as well as by the virtual machine (JIT optimizer, garbage collector, thread scheduler, etc.). In addition, non-determinism due to timer-based sampling for JIT optimization, thread scheduling, and various system effects further complicate the Java performance benchmarking process.\par Replay compilation is a recently introduced Java performance analysis methodology that aims at controlling non-determinism to improve experimental repeatability. The key idea of replay compilation is to control the compilation load during experimentation by inducing a pre-recorded compilation plan at replay time. Replay compilation also enables teasing apart performance effects of the application versus the virtual machine.\par This paper argues that in contrast to current practice which uses a single compilation plan at replay time, multiple compilation plans add statistical rigor to the replay compilation methodology. By doing so, replay compilation better accounts for the variability observed in compilation load across compilation plans. In addition, we propose matched-pair comparison for statistical data analysis. Matched-pair comparison considers the performance measurements per compilation plan before and after an innovation of interest as a pair, which enables limiting the number of compilation plans needed for accurate performance analysis compared to statistical analysis assuming unpaired measurements.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "benchmarking; Java; matched-pair comparison; performance evaluation; replay compilation; virtual machine", } @Article{Gestwicki:2008:TDP, author = "Paul Gestwicki and Fu-Shing Sun", title = "Teaching Design Patterns Through Computer Game Development", journal = j-JERIC, volume = "8", number = "1", pages = "2:1--2:??", month = mar, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1348713.1348715", ISSN = "1531-4278", bibdate = "Fri Jun 20 10:13:08 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/jeric/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present an approach for teaching design patterns that emphasizes object-orientation and patterns integration. The context of computer game development is used to engage and motivate students, and it is additionally rich with design patterns. A case study is presented based on EEClone, an arcade-style computer game implemented in Java. Our students analyzed various design patterns within EEClone, and from this experience, learned how to apply design patterns in their own game software. The six principal patterns of EEClone are described in detail, followed by a description of our teaching methodology, assessment techniques, and results.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM Journal on Educational Resources in Computing (JERIC)", keywords = "assessment; design patterns; games in education; UML", } @Article{Ghosh:2008:BFI, author = "Sudipto Ghosh and John L. Kelly", title = "Bytecode fault injection for {Java} software", journal = j-J-SYST-SOFTW, volume = "81", number = "11", pages = "2034--2043", month = nov, year = "2008", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Sep 7 07:27:04 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Gil:2008:WIS, author = "Joseph Gil and Itay Maman", title = "{Whiteoak}: introducing structural typing into {Java}", journal = j-SIGPLAN, volume = "43", number = "10", pages = "73--90", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449771", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper presents WHITEOAK: a JAVA extension that introduces structural type equivalence and subtyping into the language. We argue that structural subtyping addresses common software design problems, and promotes the development of loosely coupled modules without compromising type safety.\par We discuss language design issues, including subtyping in face of self-referencing structural types, compile-time operators for computing the new types from existing ones, and the semantics of constructors and non-abstract methods in structural types. We describe implementation techniques, including the compile-time and run-time challenges that we faced (in particular, preserving the identity of objects). Measurement indicate that the performance of our implementation of structural dispatching is comparable to that of the JVM's standard invocation mechanisms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "abstraction; Java; structural subtyping", } @Article{Godefroid:2008:GBW, author = "Patrice Godefroid and Adam Kiezun and Michael Y. Levin", title = "Grammar-based whitebox fuzzing", journal = j-SIGPLAN, volume = "43", number = "6", pages = "206--215", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379022.1375607", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Whitebox fuzzing is a form of automatic dynamic test generation, based on symbolic execution and constraint solving, designed for security testing of large applications. Unfortunately, the current effectiveness of whitebox fuzzing is limited when testing applications with highly-structured inputs, such as compilers and interpreters. These applications process their inputs in stages, such as lexing, parsing and evaluation. Due to the enormous number of control paths in early processing stages, whitebox fuzzing rarely reaches parts of the application beyond those first stages.\par In this paper, we study how to enhance whitebox fuzzing of complex structured-input applications with a grammar-based specification of their valid inputs. We present a novel dynamic test generation algorithm where symbolic execution directly generates grammar-based constraints whose satisfiability is checked using a custom grammar-based constraint solver. We have implemented this algorithm and evaluated it on a large security-critical application, the JavaScript interpreter of Internet Explorer 7 (IE7). Results of our experiments show that grammar-based whitebox fuzzing explores deeper program paths and avoids dead-ends due to non-parsable inputs. Compared to regular whitebox fuzzing, grammar-based whitebox fuzzing increased coverage of the code generation module of the IE7 JavaScript interpreter from 53\% to 81\% while using three times fewer tests.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "automatic test generation; grammars; program verification; software testing", } @Article{Goldwasser:2008:TOO, author = "Michael H. Goldwasser and David Letscher", title = "Teaching an object-oriented {CS1} -: with {Python}", journal = j-SIGCSE, volume = "40", number = "3", pages = "42--46", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384285", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/python.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "There is an ongoing debate regarding the role of object orientation in the introductory programming sequence. While the pendulum swings to and fro between the ``objects first'' and ``back to basics'' extremes, there is general agreement that object-oriented programming is central to modern software development and therefore integral to a computer science curriculum. Developing effective approaches to teach these principles raises challenges that have been exacerbated by the use of Java or C++ as the first instructional language. In this paper, we recommend Python as an excellent choice for teaching an object-oriented CS1. Although often viewed as a ``scripting'' language, Python is a fully object-oriented language with a consistent object model and a rich set of built-in classes. Based upon our experiences, we describe aspects of the language that help support a balanced introduction to object orientation in CS1. We also discuss the downstream effects on our students' transition to Java and C++ in subsequent courses.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gravvanis:2008:JMB, author = "George A. Gravvanis and Victor N. Epitropou", title = "{Java} multithreading-based parallel approximate arrow-type inverses", journal = j-CCPE, volume = "20", number = "10", pages = "1151--1172", month = jul, year = "2008", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1262", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:25 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "18 Sep 2007", } @Article{Gries:2008:PAT, author = "David Gries", title = "A principled approach to teaching {OO} first", journal = j-SIGCSE, volume = "40", number = "1", pages = "31--35", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352149", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "There has been debate about whether OO should, or even can, be taught first in CS1 (using Java). We claim that OO can be taught successfully, provided certain principles are followed. These principles lead to the requirement of an appropriate model for classes and objects, which we provide.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Guizzo:2008:GFG, author = "Erico Guizzo", title = "The game-frame guild", journal = j-IEEE-SPECTRUM, volume = "45", number = "8", pages = "44--52", month = aug, year = "2008", CODEN = "IEESAM", DOI = "https://doi.org/10.1109/MSPEC.2008.4586287", ISSN = "0018-9235 (print), 1939-9340 (electronic)", ISSN-L = "0018-9235", bibdate = "Sat Jan 18 12:29:46 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeespectrum2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Spectrum", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6", keywords = "Cities and towns; computer games; game-frame guild; IBM mainframe; Java; Large-scale systems; Layout; Marine vehicles; massive games; Military computing; online games; Planets; Programming profession; Weapons", } @Book{Haase:2008:FRC, author = "Chet Haase and Romain Guy", title = "Filthy rich clients: developing animated and graphical effects for desktop {Java} applications", publisher = pub-AW, address = pub-AW:adr, pages = "xxvii + 572", year = "2008", ISBN = "0-13-241393-0 (paperback)", ISBN-13 = "978-0-13-241393-0 (paperback)", LCCN = "QA76.73.C153 H33 2008", bibdate = "Tue Jan 27 16:12:32 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "The Java series", URL = "http://www.loc.gov/catdir/toc/ecip0717/2007019818.html", acknowledgement = ack-nhfb, subject = "Object-oriented programming (Computer science); Java (Computer program language)", } @Article{Henkel:2008:DDA, author = "Johannes Henkel and Christoph Reichenbach and Amer Diwan", title = "Developing and debugging algebraic specifications for {Java} classes", journal = j-TOSEM, volume = "17", number = "3", pages = "14:1--14:??", month = jun, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1363102.1363105", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 25 08:43:45 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Modern programs make extensive use of reusable software libraries. For example, a study of a number of large Java applications shows that between 17\% and 30\% of the classes in those applications use container classes defined in the {\tt java.util} package. Given this extensive code reuse in Java programs, it is important for the interfaces of reusable classes to be well documented. An interface is well documented if it satisfies the following requirements: (1) the documentation completely describes how to use the interface; (2) the documentation is clear; (3) the documentation is unambiguous; and (4) any deviation between the documentation and the code is machine detectable. Unfortunately, documentation in natural language, which is the norm, does not satisfy the above requirements. Formal specifications can satisfy them but they are difficult to develop, requiring significant effort on the part of programmers.\par To address the practical difficulties with formal specifications, we describe and evaluate a tool to help programmers write and debug algebraic specifications. Given an algebraic specification of a class, our interpreter generates a prototype that can be used within an application like a regular Java class. When running an application that uses the prototype, the interpreter prints error messages that tell the developer in which way the specification is incomplete or inconsistent with a hand-coded implementation of the class. We use case studies to demonstrate the usefulness of our system.", acknowledgement = ack-nhfb, articleno = "14", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "algebraic interpretation; algebraic specifications; specification discovery", } @Article{Henkel:2008:EDD, author = "J. Henkel and C. Reichenbach and A. Diwan", title = "Errata for {``Discovering Documentation for Java Container Classes''} [Aug 07 526--543]", journal = j-IEEE-TRANS-SOFTW-ENG, volume = "34", number = "2", pages = "303--303", month = mar # "\slash " # apr, year = "2008", CODEN = "IESEDJ", DOI = "https://doi.org/10.1109/TSE.2008.22", ISSN = "0098-5589 (print), 1939-3520 (electronic)", ISSN-L = "0098-5589", bibdate = "Thu Feb 1 11:00:42 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeetranssoftweng2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "See \cite{Henkel:2007:DDJ}.", URL = "http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4476755", acknowledgement = ack-nhfb, fjournal = "IEEE Transactions on Software Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=32", } @Article{Higo:2008:MBA, author = "Yoshiki Higo and Shinji Kusumoto and Katsuro Inoue", title = "A metric-based approach to identifying refactoring opportunities for merging code clones in a {Java} software system", journal = j-J-SOFTW-MAINT-EVOL, volume = "20", number = "6", pages = "435--461", month = nov, year = "2008", CODEN = "JSMECT", DOI = "https://doi.org/10.1002/smr.394", ISSN = "1532-060X (print), 1532-0618 (electronic)", ISSN-L = "1532-060X", bibdate = "Wed Jan 31 10:00:24 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jsoftwmaintevol.bib", acknowledgement = ack-nhfb, fjournal = "Journal of Software Maintenance and Evolution: Research and Practice", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481", } @Article{Huang:2008:DSL, author = "Shan Shan Huang and David Zook and Yannis Smaragdakis", title = "Domain-specific languages and program generation with {meta-AspectJ}", journal = j-TOSEM, volume = "18", number = "2", pages = "6:1--6:??", month = nov, year = "2008", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1416563.1416566", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Nov 11 15:45:20 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Meta-AspectJ (MAJ) is a language for generating AspectJ programs using code templates. MAJ itself is an extension of Java, so users can interleave arbitrary Java code with AspectJ code templates. MAJ is a structured metaprogramming tool: a well-typed generator implies a syntactically correct generated program. MAJ promotes a methodology that combines aspect-oriented and generative programming. A valuable application is in implementing small domain-specific language extensions as generators using unobtrusive annotations for syntax extension and AspectJ as a back-end. The advantages of this approach are twofold. First, the generator integrates into an existing software application much as a regular API or library, instead of as a language extension. Second, a mature language implementation is easy to achieve with little effort since AspectJ takes care of the low-level issues of interfacing with the base Java language.\par In addition to its practical value, MAJ offers valuable insights to metaprogramming tool designers. It is a mature metaprogramming tool for AspectJ (and, by extension, Java): a lot of emphasis has been placed on context-sensitive parsing and error reporting. As a result, MAJ minimizes the number of metaprogramming (quote/unquote) operators and uses type inference to reduce the need to remember type names for syntactic entities.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "domain-specific languages; language extensions; Metaprogramming; program synthesis; program transformation; program verification", } @Article{Huang:2008:ESS, author = "Shan Shan Huang and Yannis Smaragdakis", title = "Expressive and safe static reflection with {MorphJ}", journal = j-SIGPLAN, volume = "43", number = "6", pages = "79--89", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1375581.1375592", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Recently, language extensions have been proposed for Java and C\# to support pattern-based reflective declaration. These extensions introduce a disciplined form of meta-programming and aspect-oriented programming to mainstream languages: They allow members of a class (i.e., fields and methods) to be declared by statically iterating over and pattern-matching on members of other classes. Such techniques, however, have been unable to safely express simple, but common, idioms such as declaring getter and setter methods for fields.\par In this paper, we present a mechanism that addresses the lack of expressiveness in past work without sacrificing safety. Our technique is based on the idea of nested patterns that elaborate the outer-most pattern with blocking or enabling conditions. We implemented this mechanism in a language, MorphJ. We demonstrate the expressiveness of MorphJ with real-world applications. In particular, the MorphJ reimplementation of DSTM2, a software transactional memory library, reduces 1,107 lines of Java reflection and bytecode engineering library calls to just 374 lines of MorphJ code. At the same time, the MorphJ solution is both high level and safer, as MorphJ can separately type check generic classes and catch errors early. We present and formalize the MorphJ type system, and offer a type-checking algorithm.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "aspect-oriented programming; class morphing; language extensions; meta-programming; object-oriented programming; structural abstraction", } @Article{Hulaas:2008:PTL, author = "Jarle Hulaas and Walter Binder", title = "Program transformations for light-weight {CPU} accounting and control in the {Java Virtual Machine}", journal = j-HIGHER-ORDER-SYMB-COMPUT, volume = "21", number = "1--2", pages = "119--146", month = jun, year = "2008", CODEN = "LSCOEX", DOI = "https://doi.org/10.1007/s10990-008-9026-4", ISSN = "1388-3690 (print), 2212-0793 (electronic)", ISSN-L = "1388-3690", bibdate = "Wed Jul 9 12:34:46 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1388-3690&volume=21&issue=1; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1388-3690&volume=21&issue=1&spage=119", acknowledgement = ack-nhfb, fjournal = "Higher-Order and Symbolic Computation", keywords = "Bytecode engineering; Java; Program transformations; Resource management", } @Book{ISO:2008:IIId, author = "{ISO}", title = "{ISO/IEC 9075-13:2008 Information technology --- Database languages --- SQL --- Part 13: QL Routines and Types Using the Java TM Programming Language (SQL/JRT)}", publisher = pub-ISO, address = pub-ISO:adr, pages = "186", day = "17", month = jul, year = "2008", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Thu Apr 26 12:13:07 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/isostd.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38646", acknowledgement = ack-nhfb, } @Article{Jacobs:2008:PMC, author = "Bart Jacobs and Frank Piessens and Jan Smans and K. Rustan M. Leino and Wolfram Schulte", title = "A programming model for concurrent object-oriented programs", journal = j-TOPLAS, volume = "31", number = "1", pages = "1:1--1:48", month = dec, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1452044.1452045", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Dec 23 11:52:52 MST 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Reasoning about multithreaded object-oriented programs is difficult, due to the nonlocal nature of object aliasing and data races. We propose a programming regime (or {\em programming model\/}) that rules out data races, and enables local reasoning in the presence of object aliasing and concurrency. Our programming model builds on the multithreading and synchronization primitives as they are present in current mainstream programming languages. Java or C\# programs developed according to our model can be annotated by means of stylized comments to make the use of the model explicit. We show that such annotated programs can be formally verified to comply with the programming model. If the annotated program verifies, the underlying Java or C\# program is guaranteed to be free from data races, and it is sound to reason locally about program behavior. Verification is modular: a program is valid if all methods are valid, and validity of a method does not depend on program elements that are not visible to the method. We have implemented a verifier for programs developed according to our model in a custom build of the Spec\# programming system, and we have validated our approach on a case study.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "Aliasing; data races; local reasoning; modular reasoning; ownership; verification condition generation", } @Article{Joao:2008:IPOa, author = "Jose A. Joao and Onur Mutlu and Hyesoon Kim and Rishi Agarwal and Yale N. Patt", title = "Improving the performance of object-oriented languages with dynamic predication of indirect jumps", journal = j-COMP-ARCH-NEWS, volume = "36", number = "1", pages = "80--90", month = mar, year = "2008", CODEN = "CANED2", DOI = "https://doi.org/10.1145/1353535.1346293", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Tue Jun 17 11:51:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Indirect jump instructions are used to implement increasingly-common programming constructs such as virtual function calls, switch-case statements, jump tables, and interface calls. The performance impact of indirect jumps is likely to increase because indirect jumps with multiple targets are difficult to predict even with specialized hardware.\par This paper proposes a new way of handling hard-to-predict indirect jumps: dynamically predicating them. The compiler (static or dynamic) identifies indirect jumps that are suitable for predication along with their control-flow merge (CFM) points. The hardware predicates the instructions between different targets of the jump and its CFM point if the jump turns out to be hard-to-predict at run time. If the jump would actually have been mispredicted, its dynamic predication eliminates a pipeline flush, thereby improving performance.\par Our evaluations show that Dynamic Indirect jump Predication (DIP) improves the performance of a set of object-oriented applications including the Java DaCapo benchmark suite by 37.8\% compared to a commonly-used branch target buffer based predictor, while also reducing energy consumption by 24.8\%. We compare DIP to three previously proposed indirect jump predictors and find that it provides the best performance and energy-efficiency.", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", keywords = "dynamic predication; indirect jumps; object-oriented languages; predicated execution; virtual functions", } @Article{Joao:2008:IPOb, author = "Jose A. Joao and Onur Mutlu and Hyesoon Kim and Rishi Agarwal and Yale N. Patt", title = "Improving the performance of object-oriented languages with dynamic predication of indirect jumps", journal = j-OPER-SYS-REV, volume = "42", number = "2", pages = "80--90", month = mar, year = "2008", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1353535.1346293", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:20:12 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Indirect jump instructions are used to implement increasingly-common programming constructs such as virtual function calls, switch-case statements, jump tables, and interface calls. The performance impact of indirect jumps is likely to increase because indirect jumps with multiple targets are difficult to predict even with specialized hardware.\par This paper proposes a new way of handling hard-to-predict indirect jumps: dynamically predicating them. The compiler (static or dynamic) identifies indirect jumps that are suitable for predication along with their control-flow merge (CFM) points. The hardware predicates the instructions between different targets of the jump and its CFM point if the jump turns out to be hard-to-predict at run time. If the jump would actually have been mispredicted, its dynamic predication eliminates a pipeline flush, thereby improving performance.\par Our evaluations show that Dynamic Indirect jump Predication (DIP) improves the performance of a set of object-oriented applications including the Java DaCapo benchmark suite by 37.8\% compared to a commonly-used branch target buffer based predictor, while also reducing energy consumption by 24.8\%. We compare DIP to three previously proposed indirect jump predictors and find that it provides the best performance and energy-efficiency.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "dynamic predication; indirect jumps; object-oriented languages; predicated execution; virtual functions", } @Article{Joao:2008:IPOc, author = "Jose A. Joao and Onur Mutlu and Hyesoon Kim and Rishi Agarwal and Yale N. Patt", title = "Improving the performance of object-oriented languages with dynamic predication of indirect jumps", journal = j-SIGPLAN, volume = "43", number = "3", pages = "80--90", month = mar, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1353535.1346293", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:03:40 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Indirect jump instructions are used to implement increasingly-common programming constructs such as virtual function calls, switch-case statements, jump tables, and interface calls. The performance impact of indirect jumps is likely to increase because indirect jumps with multiple targets are difficult to predict even with specialized hardware.\par This paper proposes a new way of handling hard-to-predict indirect jumps: dynamically predicating them. The compiler (static or dynamic) identifies indirect jumps that are suitable for predication along with their control-flow merge (CFM) points. The hardware predicates the instructions between different targets of the jump and its CFM point if the jump turns out to be hard-to-predict at run time. If the jump would actually have been mispredicted, its dynamic predication eliminates a pipeline flush, thereby improving performance.\par Our evaluations show that Dynamic Indirect jump Predication (DIP) improves the performance of a set of object-oriented applications including the Java DaCapo benchmark suite by 37.8\% compared to a commonly-used branch target buffer based predictor, while also reducing energy consumption by 24.8\%. We compare DIP to three previously proposed indirect jump predictors and find that it provides the best performance and energy-efficiency.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dynamic predication; indirect jumps; object-oriented languages; predicated execution; virtual functions", } @Article{Jung:2008:EEH, author = "Dong-Heon Jung and JongKuk Park and Sung-Hwan Bae and Jaemok Lee and Soo-Mook Moon", title = "Efficient exception handling in {Java} bytecode-to-{C} ahead-of-time compiler for embedded systems", journal = j-COMP-LANGS-SYS-STRUCT, volume = "34", number = "4", pages = "170--183", month = dec, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1016/j.cl.2007.06.004", ISSN = "1477-8424 (print), 1873-6866 (electronic)", ISSN-L = "1477-8424", bibdate = "Thu Mar 8 08:39:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/complngs.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/14778424", URL = "http://www.sciencedirect.com/science/article/pii/S1477842407000176", acknowledgement = ack-nhfb, fjournal = "Computer Languages, Systems \& Structures", journal-URL = "http://www.sciencedirect.com/science/journal/14778424", } @Article{Kats:2008:MSB, author = "Lennart C. L. Kats and Martin Bravenboer and Eelco Visser", title = "Mixing source and bytecode: a case for compilation by normalization", journal = j-SIGPLAN, volume = "43", number = "10", pages = "91--108", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449772", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Language extensions increase programmer productivity by providing concise, often domain-specific syntax, and support for static verification of correctness, security, and style constraints. Language extensions can often be realized through translation to the base language, supported by preprocessors and extensible compilers. However, various kinds of extensions require further adaptation of a base compiler's internal stages and components, for example to support separate compilation or to make use of low-level primitives of the platform (e.g., jump instructions or unbalanced synchronization). To allow for a more loosely coupled approach, we propose an open compiler model based on normalization steps from a high-level language to a subset of it, the core language. We developed such a compiler for a mixed Java and (core) bytecode language, and evaluate its effectiveness for composition mechanisms such as traits, as well as statement-level and expression-level language extensions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bytecode; compilers; domain-specific languages; dryad compiler; embedded languages; iterators; Java; language extensions; meta programming; SDF; source tracing; stratego; traits", } @Article{Kawachiya:2008:ARM, author = "Kiyokuni Kawachiya and Kazunori Ogata and Tamiya Onodera", title = "Analysis and reduction of memory inefficiencies in {Java} strings", journal = j-SIGPLAN, volume = "43", number = "10", pages = "385--402", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449795", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper describes a novel approach to reduce the memory consumption of Java programs, by focusing on their 'string memory inefficiencies'. In recent Java applications, string data occupies a large amount of the heap area. For example, about 40\% of the live heap area is used for string data when a production J2EE application server is running. By investigating the string data in the live heap, we identified two types of memory inefficiencies -- 'duplication' and 'unused literals'. In the heap, there are many string objects that have the same values. There also exist many string literals whose values are not actually used by the application. Since these inefficiencies exist as live objects, they cannot be eliminated by existing garbage collection techniques, which only remove dead objects. Quantitative analysis of Java heaps in real applications revealed that more than 50\% of the string data in the live heap is wasted by these inefficiencies. To reduce the string memory inefficiencies, this paper proposes two techniques at the Java virtual machine level, 'StringGC' for eliminating duplicated strings at the time of garbage collection, and 'Lazy Body Creation' for delaying part of the literal instantiation until the literal's value is actually used. We also present an interesting technique at the Java program level, which we call 'BundleConverter', for preventing unused message literals from being instantiated. Prototype implementations on a production Java virtual machine have achieved about 18\% reduction of the live heap in the production application server. The proposed techniques could also reduce the live heap of standard Java benchmarks by 11.6\% on average, without noticeable performance degradation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "footprint analysis and reduction; garbage collection; Java; memory management; string", } @Article{Kimball:2008:CCW, author = "Aaron Kimball and Sierra Michels-Slettvet and Christophe Bisciglia", title = "Cluster computing for {Web}-scale data processing", journal = j-SIGCSE, volume = "40", number = "1", pages = "116--120", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352177", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "In this paper we present the design of a modern course in cluster computing and large-scale data processing. The defining differences between this and previously published designs are its focus on processing very large data sets and its use of Hadoop, an open source Java-based implementation of MapReduce and the Google File System as the platform for programming exercises. Hadoop proved to be a key element for successfully implementing structured lab activities and independent design projects. Through this course, offered at the University of Washington in 2007, we imparted new skills on our students, improving their ability to design systems capable of solving web-scale problems.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kireev:2008:RTJ, author = "Alexandre N. Kireev and Olivier J. F. Martin", title = "Real-time {Java} simulations of multiple interference dielectric filters", journal = j-COMP-PHYS-COMM, volume = "179", number = "12", pages = "903--907", day = "15", month = dec, year = "2008", CODEN = "CPHCBZ", DOI = "https://doi.org/10.1016/j.cpc.2008.07.015", ISSN = "0010-4655 (print), 1879-2944 (electronic)", ISSN-L = "0010-4655", bibdate = "Mon Feb 13 23:42:38 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/compphyscomm1970.bib; https://www.math.utah.edu/pub/tex/bib/compphyscomm2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sciencedirect.com/science/article/pii/S0010465508002531", acknowledgement = ack-nhfb, fjournal = "Computer Physics Communications", journal-URL = "http://www.sciencedirect.com/science/journal/00104655", } @Article{Kotzmann:2008:DJH, author = "Thomas Kotzmann and Christian Wimmer and Hanspeter M{\"o}ssenb{\"o}ck and Thomas Rodriguez and Kenneth Russell and David Cox", title = "Design of the {Java HotSpot\TM} client compiler for {Java 6}", journal = j-TACO, volume = "5", number = "1", pages = "7:1--7:??", month = may, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1369396.1370017", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Mon Jun 16 11:41:51 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Version 6 of Sun Microsystems' Java HotSpot{\TM} VM ships with a redesigned version of the client just-in-time compiler that includes several research results of the last years. The client compiler is at the heart of the VM configuration used by default for interactive desktop applications. For such applications, low startup and pause times are more important than peak performance. This paper outlines the new architecture of the client compiler and shows how it interacts with the VM. It presents the intermediate representation that now uses static single-assignment (SSA) form and the linear scan algorithm for global register allocation. Efficient support for exception handling and deoptimization fulfills the demands that are imposed by the dynamic features of the Java programming language. The evaluation shows that the new client compiler generates better code in less time. The popular SPECjvm98 benchmark suite is executed 45\% faster, while the compilation speed is also up to 40\% better. This indicates that a carefully selected set of global optimizations can also be integrated in just-in-time compilers that focus on compilation speed and not on peak performance. In addition, the paper presents the impact of several optimizations on execution and compilation speed. As the source code is freely available, the Java HotSpot{\TM} VM and the client compiler are the ideal basis for experiments with new feedback-directed optimizations in a production-level Java just-in-time compiler. The paper outlines research projects that add fast algorithms for escape analysis, automatic object inlining, and array bounds check elimination.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", keywords = "compiler; deoptimization; intermediate representation; Java; just-in-time compilation; optimization; register allocation", } @Article{Lai:2008:JIA, author = "Charlie Lai", title = "{Java} Insecurity: Accounting for Subtleties That Can Compromise Code", journal = j-IEEE-SOFTWARE, volume = "25", number = "1", pages = "13--19", month = jan # "\slash " # feb, year = "2008", CODEN = "IESOEG", DOI = "https://doi.org/10.1109/MS.2008.9", ISSN = "0740-7459 (print), 0740-7459 (electronic)", ISSN-L = "0740-7459", bibdate = "Thu Jul 3 12:17:31 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Software", journal-URL = "http://www.computer.org/portal/web/csdl/magazines/software", } @Article{Langmaack:2008:DAI, author = "Hans Langmaack and Andrzej Salwicki and Marek Warpechowski", title = "A Deterministic Algorithm for Identifying Direct Superclasses in {Java}", journal = j-FUND-INFO, volume = "85", number = "1--4", pages = "343--357", month = sep, year = "2008", CODEN = "FUMAAJ", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:07:07 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Lee:2008:EHS, author = "Seong-Won Lee and Soo-Mook Moon and Seong-Moo Kim", title = "Enhanced hot spot detection heuristics for embedded {Java} just-in-time compilers", journal = j-SIGPLAN, volume = "43", number = "7", pages = "13--22", month = jul, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1375657.1375660", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:05:54 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Most Java just-in-time compilers (JITC) try to compile only hot methods since the compilation overhead is part of the running time. This requires precise and efficient hot spot detection, which includes distinguishing hot methods from cold methods, detecting them as early as possible, and paying a small runtime overhead for detection. A hot method could be identified by measuring its running time during interpretation since a long-running method is likely to be a hot method. However, precise measurement of the running time during execution is too expensive, especially in embedded systems, so many counter-based heuristics have been proposed to estimate it. The Simple heuristic counts only method invocations without any consideration of loops [1], while Sun's HotSpot heuristic counts loop iterations as well, but does not consider loop sizes or method sizes [2,14]. The static analysis heuristic estimates the running time of a method by statically analyzing loops or heavy-cost bytecodes but does not measure their dynamic counts [3]. Although the overhead of these heuristics is low, they do not estimate the running time precisely, which may lead to imprecise hot spot detection.\par This paper proposes a new hot spot detection heuristic which can estimate the running time more precisely than others with a relatively low overhead. It dynamically counts only important bytecodes interpreted, but with a simple arithmetic calculation it can obtain the precise count of all interpreted bytecodes. We also propose employing a static analysis technique to predict those hot methods which spend a huge execution time once invoked. This static prediction can allow compiling these methods at their first-invocation, complementing the proposed dynamic estimation technique. We implemented both, which led to a performance benefit of 10\% compared to the HotSpot heuristic.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "hot spot detection; J2ME CDC; Java just-in-time compilation; Java Virtual Machine; Sun's Hotspot heuristic", } @Article{Lhotak:2008:EBC, author = "Ond{\v{r}}ej Lhot{\'a}k and Laurie Hendren", title = "Evaluating the benefits of context-sensitive points-to analysis using a {BDD}-based implementation", journal = j-TOSEM, volume = "18", number = "1", pages = "3:1--3:??", month = sep, year = "2008", CODEN = "ATSMER", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Mon Oct 6 15:14:19 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present Paddle, a framework of BDD-based context-sensitive points-to and call graph analyses for Java, as well as client analyses that use their results. Paddle supports several variations of context-sensitive analyses, including call site strings and object sensitivity, and context-sensitively specializes both pointer variables and the heap abstraction. We empirically evaluate the precision of these context-sensitive analyses on significant Java programs. We find that object-sensitive analyses are more precise than comparable variations of the other approaches, and that specializing the heap abstraction improves precision more than extending the length of context strings.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", } @Article{Lhotak:2008:RAB, author = "Ond{\v{r}}ej Lhot{\'a}k and Laurie Hendren", title = "Relations as an abstraction for {BDD}-based program analysis", journal = j-TOPLAS, volume = "30", number = "4", pages = "19:1--19:63", month = jul, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1377492.1377494", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Tue Aug 5 19:14:53 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In this article we present Jedd, a language extension to Java that supports a convenient way of programming with Binary Decision Diagrams (BDDs). The Jedd language abstracts BDDs as database-style relations and operations on relations, and provides static type rules to ensure that relational operations are used correctly.\par The article provides a description of the Jedd language and reports on the design and implementation of the Jedd translator and associated runtime system. Of particular interest is the approach to assigning attributes from the high-level relations to physical domains in the underlying BDDs, which is done by expressing the constraints as a SAT problem and using a modern SAT solver to compute the solution. Further, a runtime system is defined that handles memory management issues and supports a browsable profiling tool for tuning the key BDD operations.\par The motivation for designing Jedd was to support the development of interrelated whole program analyses based on BDDs. We have successfully used Jedd to build Paddle, a framework of context-sensitive program analyses, including points-to analysis and call graph construction, as well as several client analyses.", acknowledgement = ack-nhfb, articleno = "19", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "Binary decision diagrams; Boolean formula satisfiability; Java; language design; physical domain assignment; points-to analysis; program analysis; relations", } @Book{Liguori:2008:JPG, author = "Robert Liguori and Patricia Liguori", title = "{Java} pocket guide", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xiii + 177", year = "2008", ISBN = "0-596-51419-0", ISBN-13 = "978-0-596-51419-8", LCCN = "QA76.73.J38 L545 2008", bibdate = "Sat Nov 13 10:15:12 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90; prodorbis.library.yale.edu:7090/voyager", abstract = "A guide to the Java programming language provides concise information on such topics as naming conventions, lexical elements, reference types, exception handling, Java modifiers, the Java Platform SE, and the Java Scripting API.", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Handbooks, manuals, etc", } @Article{Lim:2008:RSS, author = "Sang Boem Lim and Hanku Lee and Bryan Carpenter and Geoffrey Fox", title = "Runtime support for scalable programming in {Java}", journal = j-J-SUPERCOMPUTING, volume = "43", number = "2", pages = "165--182", month = feb, year = "2008", CODEN = "JOSUED", DOI = "https://doi.org/10.1007/s11227-007-0125-5", ISSN = "0920-8542 (print), 1573-0484 (electronic)", ISSN-L = "0920-8542", bibdate = "Wed Jul 9 17:32:33 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=0920-8542&volume=43&issue=2; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=0920-8542&volume=43&issue=2&spage=165", acknowledgement = ack-nhfb, fjournal = "The Journal of Supercomputing", journal-URL = "http://link.springer.com/journal/11227", keywords = "HPJava; mpiJava; Parallel runtime library", } @Article{Liquori:2008:EFJ, author = "Luigi Liquori and Arnaud Spiwack", title = "Extending {FeatherTrait Java} with {Interfaces}", journal = j-THEOR-COMP-SCI, volume = "398", number = "1--3", pages = "243--260", day = "28", month = may, year = "2008", CODEN = "TCSCDI", ISSN = "0304-3975 (print), 1879-2294 (electronic)", ISSN-L = "0304-3975", bibdate = "Mon Mar 28 21:49:15 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/03043975", acknowledgement = ack-nhfb, fjournal = "Theoretical Computer Science", journal-URL = "http://www.sciencedirect.com/science/journal/03043975", } @Article{Liquori:2008:FME, author = "Luigi Liquori and Arnaud Spiwack", title = "{FeatherTrait}: a modest extension of {Featherweight Java}", journal = j-TOPLAS, volume = "30", number = "2", pages = "11:1--11:32", month = mar, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1330017.1330022", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jun 11 19:22:42 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, articleno = "11", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Liu:2008:PBH, author = "Tiancheng Liu and Ying Li and Andrew Schofield and Matt Hogstrom and Kewei Sun and Ying Chen", title = "Partition-based heap memory management in an application server", journal = j-OPER-SYS-REV, volume = "42", number = "1", pages = "98--98", month = jan, year = "2008", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1341312.1341331", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:19:29 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Heap is an important shared resource in Java virtual machine. A problem with memory management in one component can affect the whole system and even result in crashing the virtual machine. In this paper, we propose a partition-based approach to manage heap in an application server. In our approach, the shared heap is divided into logical partitions, in which instances of application components and server components are allocated separately.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "application server; Java; memory management; reliability", } @Article{Liu:2008:UOS, author = "Peter L. Liu", title = "Using open-source robocode as a {Java} programming assignment", journal = j-SIGCSE, volume = "40", number = "4", pages = "63--67", month = dec, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1473195.1473222", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:17 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/gnu.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper is a teacher-researcher's reflection upon the use of open-source Robocode as a Java programming assignment. Following the educational perspectives of Parker Palmer and Elliot Eisner, it is a qualitative inquiry into the learning experiences of the students as well as the inner journey of a teacher. The design of the assignment may be validated by the ITiCSE 2007 Working Group's matrix taxonomy.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Lobosco:2008:ERT, author = "Marcelo Lobosco and Orlando Loques and Claudio L. de Amorim", title = "On the effectiveness of runtime techniques to reduce memory sharing overheads in distributed {Java} implementations", journal = j-CCPE, volume = "20", number = "13", pages = "1509--1538", day = "10", month = sep, year = "2008", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1289", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:26 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "7 Dec 2007", } @Article{Lorenzen:2008:OFU, author = "Torben Lorenzen and Abdul Sattar", title = "Objects first using {Alice} to introduce object constructs in {CS1}", journal = j-SIGCSE, volume = "40", number = "2", pages = "62--64", month = jun, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1383602.1383636", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:13 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse40.html#LorenzenS08; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2008.bib", abstract = "Java has become the programming language of choice for the first computer programming course in most of the computer science programs in the country. However, Java is a true objected-oriented language and requires instructors to introduce object-oriented constructs (classes, objects and methods) early in the course. This poses a problem for both students (who find the introduction to objects to be very dry and abstract) and instructors (who attempt to enliven this material). In this paper, the authors describe how Alice is used to introduce the essential concepts of object-oriented programming in the beginning of a CS1 Java course.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Lucas:2008:ITJ, author = "Joan M. Lucas and Jonathan Jarvis", title = "Incorporating transformations into {JFLAP} for enhanced understanding of automata", journal = j-SIGCSE, volume = "40", number = "1", pages = "14--18", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352143", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "This paper describes our experience extending the educational software program JFLAP. JFLAP enables students to design and simulate automata such as Finite State Machines, push-down automata, and Turing Machines. It is a valuable aid in any Automata Theory course. We modified JFLAP so that students could write Java programs that alter the actual automaton itself. This utility greatly increases the students' ability to grasp such fundamental topics as the Church--Turing thesis and the theory of undecidability.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Mathiske:2008:ADF, author = "Bernd Mathiske and Doug Simon and Dave Ungar", title = "An assembler and disassembler framework for {Java{\TM}} programmers", journal = j-SCI-COMPUT-PROGRAM, volume = "70", number = "2--3", pages = "127--148", day = "1", month = feb, year = "2008", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:17 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Book{McFarland:2008:JMM, author = "David Sawyer McFarland", title = "{JavaScript}: the missing manual", publisher = pub-POGUE-PRESS-OREILLY, address = pub-POGUE-PRESS-OREILLY:adr, pages = "xiv + 528", year = "2008", ISBN = "0-596-51589-8", ISBN-13 = "978-0-596-51589-8", LCCN = "QA76.73.J39 M388 2008; **See", bibdate = "Wed Apr 27 11:27:09 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; library.mit.edu:9909/mit01", series = "Missing manual", URL = "http://proquest.safaribooksonline.com/9780596515898", acknowledgement = ack-nhfb, subject = "JavaScript (Computer program language)", } @Article{Menon:2008:SGL, author = "Vijay Menon and Steven Balensiefer and Tatiana Shpeisman and Ali-Reza Adl-Tabatabai and Richard L. Hudson and Bratin Saha and Adam Welc", title = "Single global lock semantics in a weakly atomic {STM}", journal = j-SIGPLAN, volume = "43", number = "5", pages = "15--26", month = may, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1402227.1402235", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:28 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "As memory transactions have been proposed as a language-level replacement for locks, there is growing need for well-defined semantics. In contrast to database transactions, transaction memory (TM) semantics are complicated by the fact that programs may access the same memory locations both inside and outside transactions. {\em Strongly atomic\/} semantics, where non-transactional accesses are treated as implicit single-operation transactions, remain difficult to provide without specialized hardware support and/or significant performance overhead. As an alternative, many in the community have informally proposed that a {\em single global lock semantics\/} [16, 9], where transaction semantics are mapped to those of regions protected by a single global lock, provide an intuitive and efficiently implementable model for programmers.\par In this paper, we explore the implementation and performance implications of single global lock semantics in a weakly atomic STM from the perspective of Java, and we discuss why even recent STM implementations fall short of these semantics. We describe a new weakly atomic Java STM implementation that provides single global lock semantics while permitting concurrent execution, but we show that this comes at a significant performance cost. We also propose and implement various alternative semantics that loosen single lock requirements while still providing strong guarantees. We compare our new implementations to previous ones, including a strongly atomic STM. [22]", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Miller:2008:BRP, author = "J. Miller", title = "Book Review: {Practical API Design: Confessions of a Java Framework Architect (1st edition), Jaroslav Tulach, Apress, 2008, \$74.99, ISBN: 978-1-4302-0973-7}", journal = j-QUEUE, volume = "6", number = "6", pages = "54--54", month = oct, year = "2008", CODEN = "AQCUAE", DOI = "https://doi.org/10.1145/1466443.1466457", ISSN = "1542-7730 (print), 1542-7749 (electronic)", ISSN-L = "1542-7730", bibdate = "Mon Dec 8 14:10:44 MST 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM Queue: Tomorrow's Computing Today", } @Article{Moller:2008:IFM, author = "Michael M{\"o}ller and Ernst-R{\"u}diger Olderog and Holger Rasch and Heike Wehrheim", title = "Integrating a formal method into a software engineering process with {UML} and {Java}", journal = j-FORM-ASP-COMPUT, volume = "20", number = "2", pages = "161--204", month = mar, year = "2008", CODEN = "FACME5", DOI = "https://doi.org/10.1007/s00165-007-0042-7", ISSN = "0934-5043 (print), 1433-299X (electronic)", ISSN-L = "0934-5043", bibdate = "Tue Mar 17 20:58:26 MDT 2015", bibsource = "https://www.math.utah.edu/pub/tex/bib/formaspcomput.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1007/s00165-007-0042-7", acknowledgement = ack-nhfb, fjournal = "Formal Aspects of Computing", journal-URL = "http://link.springer.com/journal/165", } @Article{Moors:2008:GHK, author = "Adriaan Moors and Frank Piessens and Martin Odersky", title = "Generics of a higher kind", journal = j-SIGPLAN, volume = "43", number = "10", pages = "423--438", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449798", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "With Java 5 and C\# 2.0, first-order parametric polymorphism was introduced in mainstream object-oriented programming languages under the name of generics. Although the first-order variant of generics is very useful, it also imposes some restrictions: it is possible to abstract over a type, but the resulting type constructor cannot be abstracted over. This can lead to code duplication. We removed this restriction in Scala, by allowing type constructors as type parameters and abstract type members. This paper presents the design and implementation of the resulting type constructor polymorphism. Furthermore, we study how this feature interacts with existing object-oriented constructs, and show how it makes the language more expressive.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "higher-kinded types; higher-order genericity; Scala; type constructor polymorphism", } @Book{Morrison:2008:ACK, author = "Michael Morrison", title = "{Ajax} construction kit: building plug-and-play {Ajax} applications", publisher = pub-PH, address = pub-PH:adr, pages = "xvii + 291", year = "2008", ISBN = "0-13-235008-4 (paperback)", ISBN-13 = "978-0-13-235008-2 (paperback)", LCCN = "TK5105.8885.A52 M67 2008", bibdate = "Sun Jan 24 17:06:14 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "Negus live Linux series", acknowledgement = ack-nhfb, subject = "Ajax (Web site development technology); Web site development; JavaScript (Computer program language); Asynchronous transfer mode", } @Book{Morrison:2008:HFJ, author = "Michael Morrison", title = "Head first {JavaScript}", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxxiv + 615", year = "2008", ISBN = "0-596-52774-8", ISBN-13 = "978-0-596-52774-7", LCCN = "QA76.73.J39eb; QA76.73.J39", bibdate = "Tue Aug 5 18:08:01 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = "Head first series", URL = "http://www.oreilly.com/catalog/9780596527747", acknowledgement = ack-nhfb, remark = "A brain-friendly guide, p.1. Safari ``free online ed. with purchase of this book.", subject = "JavaScript (Computer program language); Web sites; Design; Internet programming", tableofcontents = "The interactive web \\ Storing data \\ Exploring the client: browser spelunking \\ Decision making \\ Looping \\ Functions: reduce, reuse, recycle \\ Forms and validation \\ Wrangling the page: slicing and dicing HTML with the DOM \\ Bringing data to life \\ Creating custom objects \\ Kill bugs dead: good scripts gone wrong \\ Dynamic data: touchy-feely web applications", xxnote = "Check year: 2007 or 2008??", } @Article{Murphy:2008:BTD, author = "Christian Murphy and Eunhee Kim and Gail Kaiser and Adam Cannon", title = "Backstop: a tool for debugging runtime errors", journal = j-SIGCSE, volume = "40", number = "1", pages = "173--177", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352193", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "The errors that Java programmers are likely to encounter can roughly be categorized into three groups: compile-time (semantic and syntactic), logical, and runtime (exceptions). While much work has focused on the first two, there are very few tools that exist for interpreting the sometimes cryptic messages that result from runtime errors. Novice programmers in particular have difficulty dealing with uncaught exceptions in their code and the resulting stack traces, which are by no means easy to understand. We present Backstop, a tool for debugging runtime errors in Java applications. This tool provides more user-friendly error messages when an uncaught exception occurs, and also provides debugging support by allowing users to watch the execution of the program and the changes to the values of variables. We also present the results of two preliminary studies conducted on introductory-level programmers using the two different features of the tool.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Murphy:2008:DGB, author = "Laurie Murphy and Gary Lewandowski and Ren{\'e}e McCauley and Beth Simon and Lynda Thomas and Carol Zander", title = "Debugging: the good, the bad, and the quirky --- a qualitative analysis of novices' strategies", journal = j-SIGCSE, volume = "40", number = "1", pages = "163--167", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352191", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "A qualitative analysis of debugging strategies of novice Java programmers is presented. The study involved 21 CS2 students from seven universities in the U.S. and U.K. Subjects ``warmed up'' by coding a solution to a typical introductory problem. This was followed by an exercise debugging a syntactically correct version with logic errors. Many novices found and fixed bugs using strategies such as tracing, commenting out code, diagnostic print statements and methodical testing. Some competently used online resources and debuggers. Students also used pattern matching to detect errors in code that ``just didn't look right''. However, some used few strategies, applied them ineffectively, or engaged in other unproductive behaviors. This led to poor performance, frustration for some, and occasionally the introduction of new bugs. Pedagogical implications and suggestions for future research are discussed.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Muschevici:2008:MDP, author = "Radu Muschevici and Alex Potanin and Ewan Tempero and James Noble", title = "Multiple dispatch in practice", journal = j-SIGPLAN, volume = "43", number = "10", pages = "563--582", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449808", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Multiple dispatch uses the run time types of more than one argument to a method call to determine which method body to run. While several languages over the last 20 years have provided multiple dispatch, most object-oriented languages still support only single dispatch forcing programmers to implement multiple dispatch manually when required. This paper presents an empirical study of the use of multiple dispatch in practice, considering six languages that support multiple dispatch, and also investigating the potential for multiple dispatch in Java programs. We hope that this study will help programmers understand the uses and abuses of multiple dispatch; virtual machine implementors optimise multiple dispatch; and language designers to evaluate the choice of providing multiple dispatch in new programming languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "double dispatch; empirical software engineering; instanceof; multimethods; multiple dispatch", } @Article{Nami:2008:COO, author = "Mohammad Reza Nami", title = "A comparison of object-oriented languages in software engineering", journal = j-SIGSOFT, volume = "33", number = "4", pages = "6:1--6:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384145", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-oriented programming is still a relatively new technology in the world of web development. Object-oriented programming languages directly support the object notions of classes, inheritance, information hiding, and dynamic binding. In Object-Oriented Programming, a program is seen as comprising a collection of individual modules, or objects, that act on each other. Each of these objects could be seen as an independent program in itself, with a distinct role or responsibility. Object-Oriented Programming provides greater flexibility and easier maintenance across large systems and can sometimes make understanding and analyzing complex procedures a lot easier. This paper presents a comparison of object-oriented programming in software engineering including properties of Java, C++, Eiffel, and Smalltalk languages.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nicoara:2008:CSE, author = "Angela Nicoara and Gustavo Alonso and Timothy Roscoe", title = "Controlled, systematic, and efficient code replacement for running {Java} programs", journal = j-OPER-SYS-REV, volume = "42", number = "4", pages = "233--246", month = may, year = "2008", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1352592.1352617", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:21:34 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In this paper we present PROSE, a system that performs reversible and systematic changes to running Java applications without requiring them to be shut down. PROSE is motivated by scenarios such as hotfixes, online program instrumentation and debugging, and evolution of critical legacy applications. In PROSE, changes to running applications are performed by replacing method bodies. To select which code to replace, PROSE supports matching based on both type information and regular expressions. New code can invoke the method it replaces, facilitating code evolution. Changes are composable, and may be reordered or selectively withdrawn at any time. Furthermore, the dynamic changes are expressed as Java classes rather than through an additional programming language. We describe the architecture of PROSE, the challenges of using aggressive inlining to achieve performance, and use standard benchmarks to demonstrate code performance comparable with, or better than, compile-time systems from the Aspect-Oriented Programming community.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "dynamic bytecode instrumentation; inlining; PROSE; run-time method code replacement; run-time modification", } @Article{Oi:2008:LVA, author = "Hitoshi Oi", title = "Local variable access behavior of a hardware-translation based {Java} virtual machine", journal = j-J-SYST-SOFTW, volume = "81", number = "11", pages = "2059--2068", month = nov, year = "2008", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Sep 7 07:27:04 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Oliva:2008:ALF, author = "E. Oliva and A. Natali and A. Ricci and M. Viroli", title = "An Adaptation Logic Framework for {Java}-based Component Systems", journal = j-J-UCS, volume = "14", number = "13", pages = "2158--??", month = "????", year = "2008", CODEN = "????", ISSN = "0948-6968", ISSN-L = "0948-6968", bibdate = "Wed Aug 25 22:38:57 MDT 2010", bibsource = "http://www.jucs.org/jucs; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jucs.org/jucs_14_13/an_adaptation_logic_framework", acknowledgement = ack-nhfb, fjournal = "J.UCS: Journal of Universal Computer Science", journal-URL = "http://www.jucs.org/jucs", } @Article{Parkinson:2008:SLA, author = "Matthew J. Parkinson and Gavin M. Bierman", title = "Separation logic, abstraction and inheritance", journal = j-SIGPLAN, volume = "43", number = "1", pages = "75--86", month = jan, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1328897.1328451", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:02:13 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Inheritance is a fundamental concept in object-oriented programming, allowing new classes to be defined in terms of old classes. When used with care, inheritance is an essential tool for object-oriented programmers. Thus, for those interested in developing formal verification techniques, the treatment of inheritance is of paramount importance. Unfortunately, inheritance comes in a number of guises, all requiring subtle techniques.\par To address these subtleties, most existing verification methodologies typically adopt one of two restrictions to handle inheritance: either (1) they prevent a derived class from restricting the behaviour of its base class (typically by syntactic means) to trivialize the proof obligations; or (2) they allow a derived class to restrict the behaviour of its base class, but require that every inherited method must be reverified. Unfortunately, this means that typical inheritance-rich code either cannot be verified or results in an unreasonable number of proof obligations.\par In this paper, we develop a separation logic for a core object-oriented language. It allows derived classes which override the behaviour of their base class, yet supports the inheritance of methods without reverification where this is safe. For each method, we require two specifications: a static specification that is used to verify the implementation and direct method calls (in Java this would be with a super call); and a dynamic specification that is used for calls that are dynamically dispatched; along with a simple relationship between the two specifications. Only the dynamic specification is involved with behavioural subtyping. This simple separation of concerns leads to a powerful system that supports all forms of inheritance with low proof-obligation overheads. We both formalize our methodology and demonstrate its power with a series of inheritance examples.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "classes; modularity; separation logic", } @Article{Pausch:2008:ADM, author = "Randy Pausch", title = "{Alice}: a dying man's passion", journal = j-SIGCSE, volume = "40", number = "1", pages = "1--1", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352137", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "I have spent the last fifteen years of my life leading an incredible team. Our quest (which we did not even realize in the beginning) was to revolutionize the way computer programming is taught. Current versions of the Alice system (Alice v2.0, and Caitlin Kelleher's ``Storytelling Alice'') have been very effective in the college classroom and in tests with middle school girls. The use of drag-and-drop authoring to create $3$D movies has proved to be a powerful motivator for students of all ages and both genders. In 2008, we will release Alice v3.0, which provides ``real Java'' programming and the characters from EA's ``The Sims,'' the most popular PC video game in history. Damn shame I won't be there to see it. As you probably know, I'm dying of pancreatic cancer, as became widely known in my ``Last Lecture.'' Like Moses, I get to see the promised land, but not set foot in it. But the vision is clear. Long before I became ill, Dennis Cosgrove took over the responsibility for the design of Alice v3.0, and he's doing a whale of a job. Steve Cooper (of St. Joseph's University), Wanda Dann, and Don Slater are handling the pedagogic materials for college and high school, and Caitlin Kelleher (now junior faculty at Washington University in St. Louis) is heading the efforts regarding middle school girls. This talk will address the history, philosophy, and future of the Alice project, and will include a behind-the-scenes look at a pre-release version of Alice v3.0. I will give this address in person if I am still alive and able, or by a combination of pre-taped video and help from the Alice team. I cannot imagine a better professional legacy than what the Alice team is currently building.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Potter:2008:CJC, author = "Bruce Potter", title = "Controlling {JavaScript} with {Caja}", journal = j-NETWORK-SECURITY, volume = "2008", number = "1", pages = "7--8", month = jan, year = "2008", CODEN = "NTSCF5", DOI = "https://doi.org/10.1016/S1353-4858(08)70006-0", ISSN = "1353-4858 (print), 1872-9371 (electronic)", ISSN-L = "1353-4858", bibdate = "Mon Dec 4 16:59:47 MST 2017", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/network-security.bib", URL = "http://www.sciencedirect.com/science/article/pii/S1353485808700060", acknowledgement = ack-nhfb, fjournal = "Network Security", journal-URL = "https://www.sciencedirect.com/journal/network-security", } @Article{Pratter:2008:SGJ, author = "Frederick M. Pratter", title = "{SAS} Graphics for {Java}: Examples Using {SAS AppDev Studio} and the {Output Delivery System}", journal = j-AMER-STAT, volume = "62", number = "4", pages = "359--359", month = nov, year = "2008", CODEN = "ASTAAJ", DOI = "https://doi.org/10.1198/tas.2008.s267", ISSN = "0003-1305 (print), 1537-2731 (electronic)", ISSN-L = "0003-1305", bibdate = "Thu Aug 26 21:48:27 MDT 2010", bibsource = "http://www.amstat.org/publications/tas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "The American Statistician", journal-URL = "http://www.tandfonline.com/loi/utas20", } @Article{Prokopski:2008:APC, author = "Gregory B. Prokopski and Clark Verbrugge", title = "Analyzing the performance of code-copying virtual machines", journal = j-SIGPLAN, volume = "43", number = "10", pages = "403--422", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449796", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many popular programming languages use interpreter-based execution for portability, supporting dynamic or reflective properties, and ease of implementation. {\em Code-copying\/} is an optimization technique for interpreters that reduces the performance gap between interpretation and {\em JIT\/} compilation, offering significant speedups over direct-threading interpretation. Due to varying language features and virtual machine design, however, not all languages benefit from codecopying to the same extent. We consider here properties of interpreted languages, and in particular bytecode and virtual machine construction that enhance or reduce the impact of code-copying. We implemented code-copying and compared performance with the original direct-threading virtual machines for three languages, Java (SableVM), OCaml, and Ruby (Yarv), examining performance on three different architectures, ia32 (Pentium 4), x86\_64 (AMD64) and PowerPC (G5). Best speedups are achieved on ia32 by OCaml (maximum 4.88 times, 2.81 times on average), where a small and simple bytecode design facilitates improvements to branch prediction brought by code-copying. Yarv only slightly improves over direct-threading; large working sizes of bytecodes, and a relatively small fraction of time spent in the actual interpreter loop both limit the application of codecopying and its overall net effect. We are able to show that simple ahead of time analysis of VM and execution properties can help determine the suitability of code-copying for a particular VM before an implementation of code-copying is even attempted.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "branch prediction; code-copying; compiler optimization; dynamic analysis; performance; virtual machines", } @Article{Pullen:2008:DAL, author = "J. Mark Pullen and Jim X. Chen", title = "Distributed application launching for high quality graphics in synchronous distance education", journal = j-SIGCSE, volume = "40", number = "3", pages = "204--208", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384326", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "Previous ITiCSE papers have reported on Network EducationWare (NEW), an open source software system that supports synchronous and asynchronous distance education easily and inexpensively via the Internet. This paper reports on an innovative capability recently added to NEW that enables simultaneous execution of applications on all participating computers in both Windows and Linux systems, and explains how we have used this capability to teach a course in Computer Graphics online. Teaching graphics in this way previously was impossible because transmitting the visual output of graphics programs in real time with good quality is too demanding for normal Internet connections. This problem was solved by using the NEW application launcher to invoke Java classes, provided by the instructor, on all student computers simultaneously. The capability works with modest Internet capacity and also is captured in recorded sessions for asynchronous use. We explain how the NEW capability works and describe its use in online teaching of Computer Graphics.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Radenski:2008:JGC, author = "Atanas Radenski and Jeff Furlong and Vladimir Zanev", title = "The {Java} 5 generics compromise orthogonality to keep compatibility", journal = j-J-SYST-SOFTW, volume = "81", number = "11", pages = "2069--2078", month = nov, year = "2008", CODEN = "JSSODM", ISSN = "0164-1212 (print), 1873-1228 (electronic)", ISSN-L = "0164-1212", bibdate = "Tue Sep 7 07:27:04 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01641212", acknowledgement = ack-nhfb, fjournal = "The Journal of systems and software", journal-URL = "http://www.sciencedirect.com/science/journal/01641212", } @Article{Reyes:2008:GDJ, author = "Miguel Reyes and {\'A}gueda Mata", title = "Games developed in {Java} for teaching ``Combinatorial Game Theory''", journal = j-SIGCSE, volume = "40", number = "3", pages = "359--359", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384401", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "In this poster we develop some games in java, and we give the mathematical theory necessary to obtain an optimal strategy to play. This games are ``Scoring Cards'', ``Wythoff'', and ``Twins''; they frame within the course about ``Combinatorial Game Theory'', in which we applied a new method of learning, motivating to the student to make a work on the one hand cooperative, and by another competitive one. They will have to develop different strategies in games and they will try to win to each other.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Roberson:2008:ESM, author = "Michael Roberson and Melanie Harries and Paul T. Darga and Chandrasekhar Boyapati", title = "Efficient software model checking of soundness of type systems", journal = j-SIGPLAN, volume = "43", number = "10", pages = "493--504", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449803", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper presents novel techniques for checking the soundness of a type system automatically using a software model checker. Our idea is to systematically generate every type correct intermediate program state (within some finite bounds), execute the program one step forward if possible using its small step operational semantics, and then check that the resulting intermediate program state is also type correct--but do so efficiently by detecting similarities in this search space and pruning away large portions of the search space. Thus, given only a specification of type correctness and the small step operational semantics for a language, our system automatically checks type soundness by checking that the progress and preservation theorems hold for the language (albeit for program states of at most some finite size). Our preliminary experimental results on several languages--including a language of integer and boolean expressions, a simple imperative programming language, an object-oriented language which is a subset of Java, and a language with ownership types--indicate that our approach is feasible and that our search space pruning techniques do indeed significantly reduce what is otherwise an extremely large search space. Our paper thus makes contributions both in the area of checking soundness of type systems, and in the area of reducing the state space of a software model checker.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "software model checking; type soundness", } @Article{Rolfe:2008:PFO, author = "Timothy J. Rolfe", title = "Perverse and foolish oft {I} strayed", journal = j-SIGCSE, volume = "40", number = "2", pages = "52--55", month = jun, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1383602.1383634", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:13 MST 2012", bibsource = "DBLP; http://dblp.uni-trier.de/db/journals/sigcse/sigcse40.html#Rolfe08; http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pvm.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", URL = "ftp://ftp.math.utah.edu/pub/mirrors/ftp.ira.uka.de/bibliography/Misc/DBLP/2008.bib", abstract = "This uses a massively wrong-headed algorithm for sorting to exemplify the use of the backtracking strategy and the branch-and-bound strategy. In addition, brief notes are included on parallel processing approaches: Java threads on multi-core computers and distributed processing through such message passing systems as PVM and MPI.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Rolfe:2008:SMA, author = "Timothy J. Rolfe", title = "A specimen {MPI} application: {$N$}-Queens in parallel", journal = j-SIGCSE, volume = "40", number = "4", pages = "42--45", month = dec, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1473195.1473217", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:17 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pvm.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "The generalized problem of placing n queens on an n -by- n board provides an ``embarrassingly parallel'' problem for parallel solution. This paper expands on the discussion presented in the May 2005 issue of Dr. Dobb's Journal [1], specifically taking the parallel execution through Java threads and bringing it into an application in C taking advantage of MPI.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Schafer:2008:SER, author = "Max Sch{\"a}fer and Torbj{\"o}rn Ekman and Oege de Moor", title = "Sound and extensible renaming for {Java}", journal = j-SIGPLAN, volume = "43", number = "10", pages = "277--294", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449787", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Descriptive names are crucial to understand code. However, good names are notoriously hard to choose and manually changing a globally visible name can be a maintenance nightmare. Hence, tool support for automated renaming is an essential aid for developers and widely supported by popular development environments.\par This work improves on two limitations in current refactoring tools: too weak preconditions that lead to unsoundness where names do not bind to the correct declarations after renaming, and too strong preconditions that prevent renaming of certain programs. We identify two main reasons for unsoundness: complex name lookup rules make it hard to define sufficient preconditions, and new language features require additional preconditions. We alleviate both problems by presenting a novel extensible technique for creating symbolic names that are guaranteed to bind to a desired entity in a particular context by inverting lookup functions. The inverted lookup functions can then be tailored to create qualified names where otherwise a conflict would occur, allowing the refactoring to proceed and improve on the problem with too strong preconditions.\par We have implemented renaming for Java as an extension to the JastAdd Extensible Java Compiler and integrated it in Eclipse. We show examples for which other refactoring engines have too weak preconditions, as well as examples where our approach succeeds in renaming entities by inserting qualifications. To validate the extensibility of the approach we have implemented renaming support for Java 5 and AspectJ like inter-type declarations as modular extensions to the initial Java 1.4 refactoring engine. The renaming engine is only a few thousand lines of code including extensions and performance is on par with industrial strength refactoring tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "extensible compilers; name analysis; refactoring; renaming", } @Article{Schneider:2008:DOE, author = "Florian T. Schneider and Vijay Menon and Tatiana Shpeisman and Ali-Reza Adl-Tabatabai", title = "Dynamic optimization for efficient strong atomicity", journal = j-SIGPLAN, volume = "43", number = "10", pages = "181--194", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449779", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Transactional memory (TM) is a promising concurrency control alternative to locks. Recent work has highlighted important memory model issues regarding TM semantics and exposed problems in existing TM implementations. For safe, managed languages such as Java, there is a growing consensus towards strong atomicity semantics as a sound, scalable solution. Strong atomicity has presented a challenge to implement efficiently because it requires instrumentation of non-transactional memory accesses, incurring significant overhead even when a program makes minimal or no use of transactions. To minimize overhead, existing solutions require either a sophisticated type system, specialized hardware, or static whole-program analysis. These techniques do not translate easily into a production setting on existing hardware. In this paper, we present novel dynamic optimizations that significantly reduce strong atomicity overheads and make strong atomicity practical for dynamic language environments. We introduce analyses that optimistically track which non-transactional memory accesses can avoid strong atomicity instrumentation, and we describe a lightweight speculation and recovery mechanism that applies these analyses to generate speculatively-optimized but safe code for strong atomicity in a dynamically-loaded environment. We show how to implement these mechanisms efficiently by leveraging existing dynamic optimization infrastructure in a Java system. Measurements on a set of transactional and non-transactional Java workloads demonstrate that our techniques substantially reduce the overhead of strong atomicity from a factor of 5x down to 10\% or less over an efficient weak atomicity baseline.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "code generation; compiler optimizations; dynamic optimizations; strong atomicity; transactional memory; virtual machines", } @Article{Schonberg:2008:PAS, author = "E. Schonberg and R. Dewar", title = "A Principled Approach to Software Engineering Education, or {Java} Considered Harmful", journal = j-ADA-USER-J, volume = "29", number = "3", pages = "200--??", month = sep, year = "2008", CODEN = "AUJOET", ISSN = "1381-6551", bibdate = "Wed Sep 1 09:00:38 MDT 2010", bibsource = "http://www.ada-europe.org/AUJ/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Ada User Journal", journal-URL = "http://www.ada-europe.org/auj/archive", } @Article{Sen:2008:RDR, author = "Koushik Sen", title = "Race directed random testing of concurrent programs", journal = j-SIGPLAN, volume = "43", number = "6", pages = "11--21", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379022.1375584", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Bugs in multi-threaded programs often arise due to data races. Numerous static and dynamic program analysis techniques have been proposed to detect data races. We propose a novel randomized dynamic analysis technique that utilizes potential data race information obtained from an existing analysis tool to separate real races from false races without any need for manual inspection. Specifically, we use potential data race information obtained from an existing dynamic analysis technique to control a random scheduler of threads so that real race conditions get created with very high probability and those races get resolved randomly at runtime. Our approach has several advantages over existing dynamic analysis tools. First, we can create a real race condition and resolve the race randomly to see if an error can occur due to the race. Second, we can replay a race revealing execution efficiently by simply using the same seed for random number generation--we do not need to record the execution. Third, our approach has very low overhead compared to other precise dynamic race detection techniques because we only track all synchronization operations and a single pair of memory access statements that are reported to be in a potential race by an existing analysis. We have implemented the technique in a prototype tool for Java and have experimented on a number of large multi-threaded Java programs. We report a number of previously known and unknown bugs and real races in these Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "concurrency; dynamic analysis; race detection; random testing", } @Article{Serfass:2008:SSP, author = "Doug Serfass and Kalyan S. Thiparthi and Coskun Bayrak", title = "Search, sort, pagination, association and (other) {CRUD}: a comparison of {ActiveScaffold} and {MyFaces} tomahawk", journal = j-SIGSOFT, volume = "33", number = "4", pages = "1:1--1:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384140", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web applications have many more model objects exposed on the backend, or admin side, than they do on the front, or public side. Coding interfaces for all those models is redundant and a waste of resources when all that is needed is Search, Sort, Pagination, (support for) Association and CRUD. Implementing these interfaces can often require more programming time than the public side of an application. We will analyze an application that was developed using Ruby on Rails (or Rails) [1] and ActiveScaffold [2]. We will compare a subset of the ActiveScaffold portion of this application with an example created using Java and MyFaces Tomahawk [3]. ActiveScaffold and MyFaces Tomahawk are open source software (OSS). Our results will show that ActiveScaffold has a greater number of features and is more reusable than MyFaces Tomahawk. This information is useful to web developers responsible for creating the admin interfaces of web applications.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sestoft:2008:PLC, author = "Peter Sestoft", title = "Programming language concepts for software developers", journal = j-SIGPLAN, volume = "43", number = "11", pages = "119--123", month = nov, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1480828.1480854", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Dec 31 12:36:25 MST 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This note describes and motivates our current plans for an undergraduate course on programming language concepts for software development students. We describe the competences we expect students to acquire as well as the topics covered by the course. We plan to use C\# and Scheme as instruction languages, and will study the implementation of Java and C\# with their underlying platforms, the Java Virtual Machine and .NET Common Language Runtime. We emphasize implementation exercises and experiments. This comes at the expense of classical compiler course subjects such as register allocation and optimization of imperative loop-intensive code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "programming languages curriculum", } @Article{Shankar:2008:JLD, author = "Ajeet Shankar and Matthew Arnold and Rastislav Bodik", title = "{Jolt}: lightweight dynamic analysis and removal of object churn", journal = j-SIGPLAN, volume = "43", number = "10", pages = "127--142", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449775", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "It has been observed that component-based applications exhibit {\em object churn}, the excessive creation of short-lived objects, often caused by trading performance for modularity. Because churned objects are short-lived, they appear to be good candidates for stack allocation. Unfortunately, most churned objects escape their allocating function, making escape analysis ineffective.\par We reduce object churn with three contributions. First, we formalize two measures of churn, {\em capture\/} and {\em control\/} (15). Second, we develop lightweight dynamic analyses for measuring both {\em capture\/} and {\em control}. Third, we develop an algorithm that uses {\em capture\/} and {\em control\/} to inline portions of the call graph to make churned objects non-escaping, enabling churn optimization via escape analysis.\par JOLT is a lightweight dynamic churn optimizer that uses our algorithms. We embedded JOLT in the JIT compiler of the IBM J9 commercial JVM, and evaluated JOLT on large application frameworks, including Eclipse and JBoss. We found that JOLT eliminates over 4 times as many allocations as a state-of-the-art escape analysis alone.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "allocation optimization; churn; escape analysis; inlining; Java; selective optimization; virtual machine", } @Article{Sheard:2008:GSA, author = "Judy Sheard and Angela Carbone and Raymond Lister and Beth Simon and Errol Thompson and Jacqueline L. Whalley", title = "Going {SOLO} to assess novice programmers", journal = j-SIGCSE, volume = "40", number = "3", pages = "209--213", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384328", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "This paper explores the programming knowledge of novices using Biggs' SOLO taxonomy. It builds on previous work of Lister et al. (2006) and addresses some of the criticisms of that work. The research was conducted by studying the exam scripts for 120 introductory programming students, in which three specific questions were analyzed using the SOLO taxonomy. The study reports the following four findings: when the instruction to students used by Lister et al. --- ``In plain English, explain what the following segment of Java code does'' --- is replaced with a less ambiguous instruction, many students still provide multistructural responses; students are relatively consistent in the SOLO level of their answers; student responses on SOLO reading tasks correlate positively with performance on writing tasks; postgraduates students manifest a higher level of thinking than undergraduates.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Shi:2008:VMS, author = "Yunhe Shi and Kevin Casey and M. Anton Ertl and David Gregg", title = "Virtual machine showdown: {Stack} versus registers", journal = j-TACO, volume = "4", number = "4", pages = "2:1--2:??", month = jan, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1328195.1328197", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Mon Jun 16 11:41:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Virtual machines (VMs) enable the distribution of programs in an architecture-neutral format, which can easily be interpreted or compiled. A long-running question in the design of VMs is whether a stack architecture or register architecture can be implemented more efficiently with an interpreter. We extend existing work on comparing virtual stack and virtual register architectures in three ways. First, our translation from stack to register code and optimization are much more sophisticated. The result is that we eliminate an average of more than 46\% of executed VM instructions, with the bytecode size of the register machine being only 26\% larger than that of the corresponding stack one. Second, we present a fully functional virtual-register implementation of the Java virtual machine (JVM), which supports Intel, AMD64, PowerPC and Alpha processors. This register VM supports inline-threaded, direct-threaded, token-threaded, and switch dispatch. Third, we present experimental results on a range of additional optimizations such as register allocation and elimination of redundant heap loads. On the AMD64 architecture the register machine using switch dispatch achieves an average speedup of 1.48 over the corresponding stack machine. Even using the more efficient inline-threaded dispatch, the register VM achieves a speedup of 1.15 over the equivalent stack-based VM.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", keywords = "interpreter; register architecture; stack architecture; virtual machine", } @Article{Singer:2008:DAJ, author = "Jeremy Singer and Chris Kirkham", title = "Dynamic analysis of {Java} program concepts for visualization and profiling", journal = j-SCI-COMPUT-PROGRAM, volume = "70", number = "2--3", pages = "111--126", day = "1", month = feb, year = "2008", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:17 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Singh:2008:DRM, author = "Paramvir Singh and Hardeep Singh", title = "{DynaMetrics}: a runtime metric-based analysis tool for object-oriented software systems", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--6", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449614", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many Runtime/Dynamic metric suites for object-oriented software systems have been devised over the past decade. This paper introduces a new dynamic metric-based evaluation and analysis tool for Java and C++ software called DynaMetrics that is capable of evaluating and analyzing all the major dynamic metrics known till date. DynaMetrics also compares them with their static counterparts in order to find the usefulness of individual metric. The paper is part of our ongoing research on runtime/dynamic metrics for object-oriented software systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Book{Smart:2008:JPT, author = "John Ferguson Smart", title = "{Java} power tools", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "xxxv + 871", year = "2008", ISBN = "0-596-52793-4", ISBN-13 = "978-0-596-52793-8", LCCN = "QA76.73.J38 S63 2008", bibdate = "Sat Nov 13 10:14:57 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90; prodorbis.library.yale.edu:7090/voyager", abstract = "Focuses on open source tools that can increase productivity in each area of the development cycle, including: Ant, Maven 2, CVS, Subversion, CheckStyle, PMD, FindBugs, Jupiter, JUnit 4, TestNG, Cobertura, Bugzilla, Trac, Continuum, CruiseControl, LuntBuild, and Hudson.", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Open source software", } @Article{Smith:2008:JTI, author = "Daniel Smith and Robert Cartwright", title = "{Java} type inference is broken: can we fix it?", journal = j-SIGPLAN, volume = "43", number = "10", pages = "505--524", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449804", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java 5, the most recent major update to the Java Programming Language, introduced a number of sophisticated features, including a major extension to the type system. While the technical details of these new features are complex, much of this complexity is hidden from the typical Java developer by an ambitious type inference mechanism. Unfortunately, the extensions to the Java 5 type system were so novel that their technical details had not yet been thoroughly investigated in the research literature. As a result, the Java 5 compiler includes a pragmatic but flawed type inference algorithm that is, by design, neither sound nor locally complete. The language specification points out that neither of these failures is catastrophic: the correctness of potentially-unsound results must be verified during type checking; and incompleteness can usually be worked around by manually providing the method type parameter bindings for a given call site.\par This paper dissects the type inference algorithm of Java 5 and proposes a significant revision that is sound and able to calculate correct results where the Java 5 algorithm fails. The new algorithm is locally complete with the exception of a difficult corner case. Moreover, the new algorithm demonstrates that several arbitrary restrictions in the Java type system---most notably the ban on lower-bounded type parameter declarations and the limited expressibility of intersection types---are unnecessary. We hope that this work will spur the evolution of a more coherent, more comprehensive generic type system for Java.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bounded quantification; generics; intersection types; parameterized types; polymorphic methods; subtyping; type argument inference; type inference; union types; wildcards", } @Book{Steyer:2008:JDI, author = "Ralph Steyer", title = "{JavaFX: dynamische und interaktive Java-Applikationen mit JavaFX}", publisher = pub-AW, address = pub-AW:adr, pages = "363", year = "2008", ISBN = "3-8273-2615-X", ISBN-13 = "978-3-8273-2615-7", LCCN = "????", bibdate = "Tue Jan 27 14:50:16 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", series = "Programmer`s choice", URL = "http://www.gbv.de/dms/ilmenau/toc/55624642X.PDF", acknowledgement = ack-nhfb, remark = "Auf der CD-ROM: Alle Beispiele, Eclipse 3.3.1, NetBeans IDE 6.0 RC 2, Java 6 SDK.", subject = "JavaFX", } @Book{Steyer:2008:JHC, editor = "Ralph Steyer", title = "{JavaFX: Einstieg f{\"u}r Anspruchsvolle - 7 Stunden Video-Training; Lehr-Programm}", publisher = pub-AW, address = pub-AW:adr, year = "2008", ISBN = "3-8273-6144-3", ISBN-13 = "978-3-8273-6144-8", LCCN = "????", bibdate = "Tue Jan 27 14:50:16 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", note = "1 DVD (audio und rom)", price = "EUR 39.95, SFR 65.00", URL = "http://deposit.d-nb.de/cgi-bin/dokserv?id=3091158&prov=M&dok\_var=1&dok\_ext=htm", acknowledgement = ack-nhfb, } @Book{Stubblebine:2008:RAK, author = "Toni Stubblebine and Peter Klicman and Lars Schulten", title = "{Regul{\"a}re Ausdr{\"u}cke --- kurz and gut [f{\"u}r Perl, Ruby, PHP, C\#, Python, Java and .NET]}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "131", year = "2008", ISBN = "3-89721-535-7", ISBN-13 = "978-3-89721-535-1", LCCN = "????", bibdate = "Thu Jul 15 18:31:10 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", price = "EUR 9.90", series = "O'Reillys Taschenbibliothek", acknowledgement = ack-nhfb, } @Article{Su:2008:SOE, author = "Wei Su and Chuan Cai and Paul S. Wang and Lian Li", title = "A solution for online entering and editing mathematical formulas (abstract only)", journal = j-ACM-COMM-COMP-ALGEBRA, volume = "42", number = "1--2", pages = "87--88", month = mar # "/" # jun, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1394042.1394097", ISSN = "1932-2232 (print), 1932-2240 (electronic)", ISSN-L = "1932-2232", bibdate = "Tue Aug 12 17:30:40 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The ability for users online creating and editing mathematical expressions is very important for Science Computing Systems, Science Communication Systems, and Web-based Mathematics Education Systems. Lanzhou university/China and Kent University/USA are jointly developing a mathematical expression editor. The editor MathEdit, implemented in JavaScript and MathML, is a web-based visual interactive editor for mathematical expressions. Figure 1 shows the end-user view of the MathEdit architecture. In MathEdit the MathML Content code is the core code of being edited mathematical expression. User actions, inserting, deleting and editing sub-expressions by mouse clicks and keyboard input, are treated as commands. The commands will invoke JavaScript functions in the command processing module to modify the MathML content code by revising DOM tree of expression. The MathML Content will synchronously convert to MathML Presentation code and Math Infix code. The user will intuitively see the changed math expression displayed by MathML Presentation.", acknowledgement = ack-nhfb, fjournal = "ACM Communications in Computer Algebra", } @Book{Subramaniam:2008:PST, author = "Venkat Subramaniam", title = "Programming {Scala}: tackle multicore complexity on the {JVM}", publisher = "Pragmatic Bookshelf", address = "Raleigh, NC, USA", pages = "x + 221", year = "2008", ISBN = "1-934356-31-X (paperback)", ISBN-13 = "978-1-934356-31-9 (paperback)", LCCN = "QA76.73.J38 S83 2008", bibdate = "Thu Jan 21 14:00:30 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Scala (Computer program language); Java virtual machine; Java (Computer program language)", } @Article{Sun:2008:JBH, author = "J.-Z. Sun and J. Riekki and M. Jurmu and J. Sauvola", title = "{Java}-Based {HTTP} Input Channel for Heterogeneous Wireless Networks", journal = j-INT-J-COMPUT-APPL, volume = "30", number = "2", pages = "97--104", year = "2008", DOI = "https://doi.org/10.1080/1206212X.2008.11441887", ISSN = "1206-212X (print), 1925-7074 (electronic)", ISSN-L = "1206-212X", bibdate = "Sat Apr 21 17:24:55 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/ijca.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "https://www.tandfonline.com/doi/full/10.1080/1206212X.2008.11441887", acknowledgement = ack-nhfb, fjournal = "International Journal of Computers and Applications", journal-URL = "https://www.tandfonline.com/loi/tjca20", online-date = "11 Jul 2015", } @Article{Tansey:2008:ARI, author = "Wesley Tansey and Eli Tilevich", title = "Annotation refactoring: inferring upgrade transformations for legacy applications", journal = j-SIGPLAN, volume = "43", number = "10", pages = "295--312", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449788", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Since annotations were added to the Java language, many frameworks have moved to using annotated Plain Old Java Objects (POJOs) in their newest releases. Legacy applications are thus forced to undergo extensive restructuring in order to migrate from old framework versions to new versions based on annotations ({\em Version Lock-in\/}). Additionally, because annotations are embedded in the application code, changing between framework vendors may also entail largescale manual changes ({\em Vendor Lock-in\/}).\par This paper presents a novel refactoring approach that effectively solves these two problems. Our approach infers a concise set of semantics-preserving transformation rules from two versions of a single class. Unlike prior approaches that detect only simple structural refactorings, our algorithm can infer general composite refactorings and is more than 97\% accurate on average. We demonstrate the effectiveness of our approach by automatically upgrading more than 80K lines of the unit testing code of four open-source Java applications to use the latest version of the popular JUnit testing framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "annotations; eclipse; frameworks; Java; JUnit; metadata; refactoring; upgrading", } @Article{Tanter:2008:FMA, author = "{\'E}ric Tanter and Rodolfo Toledo and Guillaume Pothier and Jacques Noy{\'e}", title = "Flexible metaprogramming and {AOP} in {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "72", number = "1--2", pages = "22--30", day = "1", month = jun, year = "2008", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:20 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Tatlock:2008:DTR, author = "Zachary Tatlock and Chris Tucker and David Shuffelton and Ranjit Jhala and Sorin Lerner", title = "Deep typechecking and refactoring", journal = j-SIGPLAN, volume = "43", number = "10", pages = "37--52", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449768", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Large software systems are typically composed of multiple layers, written in different languages and loosely coupled using a string-based interface. For example, in modern web-applications, a server written in Java communicates with a database back-end by passing in query strings. This widely prevalent approach is unsafe as the analyses developed for the individual layers are oblivious to the semantics of the dynamically constructed strings, making it impossible to statically reason about the correctness of the interaction. Further, even simple refactoring in such systems is daunting and error prone as the changes must also be applied to isolated string fragments scattered across the code base.\par We present techniques for deep typechecking and refactoring for systems that combine Java code with a database back-end using the Java Persistence API [10]. Deep typechecking ensures that the queries that are constructed dynamically are type safe and that the values returned from the queries are used safely by the program. Deep refactoring builds upon typechecking to allow programmers to safely and automatically propagate code refactorings through the query string fragments.\par Our algorithms are implemented in a tool called QUAIL. We present experiments evaluating the effectiveness of QUAIL on several benchmarks ranging from 3,369 to 82,907 lines of code. We show that QUAIL is able to verify that 84\% of query strings in our benchmarks are type safe. Finally, we show that QUAIL reduces the number of places in the code that a programmer must look at in order to perform a refactoring by several orders of magnitude.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "cross language refactoring; cross language typechecking; JPA query analysis", } @Article{Tavares:2008:GIO, author = "Andre L. C. Tavares and Marco Tulio Valente", title = "A gentle introduction to {OSGi}", journal = j-SIGSOFT, volume = "33", number = "5", pages = "8:1--8:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Open Services Gateway Initiative (OSGi) is a framework that supports the implementation of component-based, service-oriented applications in Java. The framework manages the life-cycle of modules (called bundles in OSGi) and provides means to publish and search for services. Moreover, it supports the dynamic install and uninstall of bundles. Nowadays, OSGi is used in many application domains, including mobile phones, embedded devices, and application servers. In this paper, we provide a gentle introduction to the basic services provided by OSGi. The presentation is guided by a simple case study, involving the implementation of a Dictionary System.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Thomas:2008:DHF, author = "Ga{\"e}l Thomas and Nicolas Geoffray and Charles Cl{\'e}ment and Bertil Folliot", title = "Designing highly flexible virtual machines: the {JnJVM} experience", journal = j-SPE, volume = "38", number = "15", pages = "1643--1675", day = "??", month = dec, year = "2008", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.887", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 09:55:32 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Jun 6 2008 6:18AM", } @Article{Thornton:2008:SSW, author = "Matthew Thornton and Stephen H. Edwards and Roy P. Tan and Manuel A. P{\'e}rez-Qui{\~n}ones", title = "Supporting student-written tests of {GUI} programs", journal = j-SIGCSE, volume = "40", number = "1", pages = "537--541", month = mar, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1352322.1352316", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:10 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE 08.", abstract = "Tools like JUnit and its relatives are making software testing reachable even for introductory students. At the same time, however, many introductory computer sciences courses use graphical interfaces as an ``attention grabber'' for students and as a metaphor for teaching object-oriented programming. Unfortunately, developing software tests for programs that have significant graphical user interfaces is beyond the abilities of typical students (and, for that matter, many educators). This paper describes a framework for combining readily available tools to create an infrastructure for writing tests for Java programs that have graphical user interfaces. These tests are level-appropriate for introductory students and fit in with current approaches in computer science education that incorporate testing in programming assignments. An analysis of data collected during actual student use of the framework in a CS1 course is presented.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Trofin:2008:SVC, author = "Mircea Trofin and John Murphy", title = "Static verification of component composition in contextual composition frameworks", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "10", number = "3", pages = "247--261", month = jun, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1007/s10009-007-0061-y", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Wed Jul 9 18:12:31 MDT 2008", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1433-2779&volume=10&issue=3; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1433-2779&volume=10&issue=3&spage=247", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", keywords = "Contextual composition; Enterprise Java; Software components; Static analysis", } @Article{Tseng:2008:PPD, author = "I-Lun Tseng and Adam Postula", title = "Partitioning parameterized 45-degree polygons with constraint programming", journal = j-TODAES, volume = "13", number = "3", pages = "52:1--52:??", month = jul, year = "2008", CODEN = "ATASFO", DOI = "https://doi.org/10.1145/1367045.1367061", ISSN = "1084-4309 (print), 1557-7309 (electronic)", ISSN-L = "1084-4309", bibdate = "Tue Aug 5 18:41:27 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/todaes/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "An algorithm for partitioning parameterized 45-degree polygons into parameterized trapezoids is proposed in this article. The algorithm is based on the plane-sweep technique and can handle polygons with complicated constraints. The input to the algorithm consists of the contour of a parameterized polygon to be partitioned and a set of constraints for parameters of the contour. The algorithm uses horizontal cuts only and generates a number of nonoverlapping trapezoids whose union is the original parameterized polygon. Processing of constraints and coordinates that contain first-order multiple-variable polynomials has been made possible by incorporating the JaCoP constraint programming library. The proposed algorithm has been implemented in Java programming language and can be used as the basis to build the trapezoidal corner stitching data structure for parameterized VLSI layout masks.", acknowledgement = ack-nhfb, articleno = "52", fjournal = "ACM Transactions on Design Automation of Electronic Systems (TODAES)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J776", keywords = "analog and mixed-signal design; parameterized layouts; parameterized polygons; polygon decomposition; trapezoidal corner stitching", } @Book{Tulach:2008:PAD, author = "Jaroslav Tulach", title = "Practical {API} design: confessions of a {Java Framework} architect", publisher = pub-APRESS, address = pub-APRESS:adr, year = "2008", ISBN = "1-4302-0973-9", ISBN-13 = "978-1-4302-0973-7", LCCN = "????", bibdate = "Mon Dec 8 14:16:37 MST 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; library.mit.edu:9909/mit01", acknowledgement = ack-nhfb, } @Article{Unkel:2008:AIS, author = "Christopher Unkel and Monica S. Lam", title = "Automatic inference of stationary fields: a generalization of {Java}'s final fields", journal = j-SIGPLAN, volume = "43", number = "1", pages = "183--195", month = jan, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1328897.1328463", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:02:13 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Java programmers can document that the relationship between two objects is unchanging by declaring the field that encodes that relationship to be final. This information can be used in program understanding and detection of errors in new code additions. Unfortunately, few fields in programs are actually declared final. Programs often contain fields that could be final, but are not declared so. Moreover, the definition of final has restrictions on initialization that limit its applicability.\par We introduce stationary fields as a generalization of final. A field in a program is stationary if, for every object that contains it, all writes to the field occur before all the reads. Unlike the definition of final fields, there can be multiple writes during initialization, and initialization can span multiple methods.\par We have developed an efficient algorithm for inferring which fields are stationary in a program, based on the observation that many fields acquire their value very close to object creation. We presume that an object's initialization phase has concluded when its reference is saved in some heap object. We perform precise analysis only regarding recently created objects. Applying our algorithm to real-world Java programs demonstrates that stationary fields are more common than final fields: 44-59\% vs. 11-17\% respectively in our benchmarks.\par These surprising results have several significant implications. First, substantial portions of Java programs appear to be written in a functional style. Second, initialization of these fields occurs very close to object creation, when very good alias information is available. These results open the door for more accurate and efficient pointer alias analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "final; initialization; Java; stationary", } @Article{vanHeiningen:2008:BMD, author = "Willem van Heiningen and Steve MacDonald and Tim Brecht", title = "{Babylon}: middleware for distributed, parallel, and mobile {Java} applications", journal = j-CCPE, volume = "20", number = "10", pages = "1195--1224", month = jul, year = "2008", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1264", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:25 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "22 Jan 2008", } @Article{vanTonder:2008:JLD, author = "Martin van Tonder and Kevin Naude and Charmain Cilliers", title = "{Jenuity}: a lightweight development environment for intermediate level programming courses", journal = j-SIGCSE, volume = "40", number = "3", pages = "58--62", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384289", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "The complexity and resource requirements of professional IDEs mean that they are unsuitable for use in intermediate level programming courses. Jenuity is an efficient development environment for the Java programming language. Efficiency is essential as students often have outdated hardware unable to run mainstream development environments. This is of particular relevance in the context of a developing country. Jenuity provides advanced features usually associated with more resource intensive tools. It provides a simple and intuitive interface, which is well suited to intermediate level programming courses. Jenuity has been used successfully in the teaching of these courses at the authors' institution since 2004. The requirements, development and optimisation of this tool are discussed. Techniques used to optimise Jenuity for low specification student hardware, some of which are novel, are presented. Experiences using Jenuity in a university environment are also reported. The efficiency of Jenuity is also demonstrated by means of a comparison to mainstream development environments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Velazquez-Iturbide:2008:SAS, author = "J. {\'A}ngel Vel{\'a}zquez-Iturbide and Antonio P{\'e}rez-Carrasco and Jaime Urquiza-Fuentes", title = "{SRec}: an animation system of recursion for algorithm courses", journal = j-SIGCSE, volume = "40", number = "3", pages = "225--229", month = sep, year = "2008", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1597849.1384332", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:14 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '08.", abstract = "In this paper we describe SRec, a system to animate recursion in Java programs. It is intended to assist in algorithm courses to better understand and analyze algorithm behavior. We make several contributions. Firstly, SRec exhibits a comprehensive set of animation and educational features. It provides three complementary, coordinated views of recursion: traces, the execution stack and activation trees. SRec allows the user constructing and modifying animations without effort. The animation can be played flexibly, both forward and backwards. It also provides facilities to integrate animations into courses. Secondly, the paper describes the educational features of the system and its use in algorithm courses. Thirdly, the system has been fully evaluated with respect to usability (using formative and summative methods) and has been compared to other systems reported in the literature. The results of both evaluations are highly positive.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Villalon:2008:HDD, author = "Elena Villalon", title = "High-Dimensionality Data Reduction with {Java}", journal = j-COMPUT-SCI-ENG, volume = "10", number = "5", pages = "64--69", month = sep # "\slash " # oct, year = "2008", CODEN = "CSENFA", DOI = "https://doi.org/10.1109/MCSE.2008.134", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Thu May 13 11:08:14 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Book{Walls:2008:SA, author = "Craig Walls and Ryan Breidenbach", title = "{Spring} in action", publisher = pub-MANNING, address = pub-MANNING:adr, edition = "Second", pages = "xxxiv + 730", year = "2008", ISBN = "(paperback), 1-933988-13-4 (paperback)", ISBN-13 = "978-1-933988-13-9", LCCN = "QA76.73.J38 W342 2008", bibdate = "Tue Jan 27 16:11:49 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, remark = "Covers Spring 2.0.", subject = "Java (computer program language); application software; development", } @Article{Wang:2008:DSJ, author = "Tao Wang and Abhik Roychoudhury", title = "Dynamic slicing on {Java} bytecode traces", journal = j-TOPLAS, volume = "30", number = "2", pages = "10:1--10:49", month = mar, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1330017.1330021", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jun 11 19:22:42 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, articleno = "10", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Wegiel:2008:MCVa, author = "Michal Wegiel and Chandra Krintz", title = "The mapping collector: virtual memory support for generational, parallel, and concurrent compaction", journal = j-COMP-ARCH-NEWS, volume = "36", number = "1", pages = "91--102", month = mar, year = "2008", CODEN = "CANED2", DOI = "https://doi.org/10.1145/1353535.1346294", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Tue Jun 17 11:51:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Parallel and concurrent garbage collectors are increasingly employed by managed runtime environments (MREs) to maintain scalability, as multi-core architectures and multi-threaded applications become pervasive. Moreover, state-of-the-art MREs commonly implement compaction to eliminate heap fragmentation and enable fast linear object allocation.\par Our empirical analysis of object demographics reveals that unreachable objects in the heap tend to form clusters large enough to be effectively managed at the granularity of virtual memory pages. Even though processes can manipulate the mapping of the virtual address space through the standard operating system (OS) interface on most platforms, extant parallel/concurrent compactors do not do so to exploit this clustering behavior and instead achieve compaction by performing, relatively expensive, object moving and pointer adjustment.\par We introduce the Mapping Collector (MC), which leverages virtual memory operations to reclaim and consolidate free space without moving objects and updating pointers. MC is a nearly-single-phase compactor that is simpler and more efficient than previously reported compactors that comprise two to four phases. Through effective MRE-OS coordination, MC maintains the simplicity of a non-moving collector while providing efficient parallel and concurrent compaction.\par We implement both stop-the-world and concurrent MC in a generational garbage collection framework within the open-source HotSpot Java Virtual Machine. Our experimental evaluation using a multiprocessor indicates that MC significantly increases throughput and scalability as well as reduces pause times, relative to state-of-the-art, parallel and concurrent compactors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", keywords = "compaction; concurrent; parallel; virtual memory", } @Article{Wegiel:2008:MCVb, author = "Michal Wegiel and Chandra Krintz", title = "The {Mapping Collector}: virtual memory support for generational, parallel, and concurrent compaction", journal = j-OPER-SYS-REV, volume = "42", number = "2", pages = "91--102", month = mar, year = "2008", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1353535.1346294", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Fri Jun 20 17:20:12 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Parallel and concurrent garbage collectors are increasingly employed by managed runtime environments (MREs) to maintain scalability, as multi-core architectures and multi-threaded applications become pervasive. Moreover, state-of-the-art MREs commonly implement compaction to eliminate heap fragmentation and enable fast linear object allocation.\par Our empirical analysis of object demographics reveals that unreachable objects in the heap tend to form clusters large enough to be effectively managed at the granularity of virtual memory pages. Even though processes can manipulate the mapping of the virtual address space through the standard operating system (OS) interface on most platforms, extant parallel/concurrent compactors do not do so to exploit this clustering behavior and instead achieve compaction by performing, relatively expensive, object moving and pointer adjustment.\par We introduce the Mapping Collector (MC), which leverages virtual memory operations to reclaim and consolidate free space without moving objects and updating pointers. MC is a nearly-single-phase compactor that is simpler and more efficient than previously reported compactors that comprise two to four phases. Through effective MRE-OS coordination, MC maintains the simplicity of a non-moving collector while providing efficient parallel and concurrent compaction.\par We implement both stop-the-world and concurrent MC in a generational garbage collection framework within the open-source HotSpot Java Virtual Machine. Our experimental evaluation using a multiprocessor indicates that MC significantly increases throughput and scalability as well as reduces pause times, relative to state-of-the-art, parallel and concurrent compactors.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "compaction; concurrent; parallel; virtual memory", } @Article{Wegiel:2008:MCVc, author = "Michal Wegiel and Chandra Krintz", title = "The mapping collector: virtual memory support for generational, parallel, and concurrent compaction", journal = j-SIGPLAN, volume = "43", number = "3", pages = "91--102", month = mar, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1353535.1346294", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:03:40 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Parallel and concurrent garbage collectors are increasingly employed by managed runtime environments (MREs) to maintain scalability, as multi-core architectures and multi-threaded applications become pervasive. Moreover, state-of-the-art MREs commonly implement compaction to eliminate heap fragmentation and enable fast linear object allocation.\par Our empirical analysis of object demographics reveals that unreachable objects in the heap tend to form clusters large enough to be effectively managed at the granularity of virtual memory pages. Even though processes can manipulate the mapping of the virtual address space through the standard operating system (OS) interface on most platforms, extant parallel/concurrent compactors do not do so to exploit this clustering behavior and instead achieve compaction by performing, relatively expensive, object moving and pointer adjustment.\par We introduce the Mapping Collector (MC), which leverages virtual memory operations to reclaim and consolidate free space without moving objects and updating pointers. MC is a nearly-single-phase compactor that is simpler and more efficient than previously reported compactors that comprise two to four phases. Through effective MRE-OS coordination, MC maintains the simplicity of a non-moving collector while providing efficient parallel and concurrent compaction.\par We implement both stop-the-world and concurrent MC in a generational garbage collection framework within the open-source HotSpot Java Virtual Machine. Our experimental evaluation using a multiprocessor indicates that MC significantly increases throughput and scalability as well as reduces pause times, relative to state-of-the-art, parallel and concurrent compactors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "compaction; concurrent; parallel; virtual memory", } @Article{Wegiel:2008:XTS, author = "Michal Wegiel and Chandra Krintz", title = "{XMem}: type-safe, transparent, shared memory for cross-runtime communication and coordination", journal = j-SIGPLAN, volume = "43", number = "6", pages = "327--338", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1375581.1375621", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Developers commonly build contemporary enterprise applications using type-safe, component-based platforms, such as J2EE, and architect them to comprise multiple tiers, such as a web container, application server, and database engine. Administrators increasingly execute each tier in its own managed runtime environment (MRE) to improve reliability and to manage system complexity through the fault containment and modularity offered by isolated MRE instances. Such isolation, however, necessitates expensive cross-tier communication based on protocols such as object serialization and remote procedure calls. Administrators commonly co-locate communicating MREs on a single host to reduce communication overhead and to better exploit increasing numbers of available processing cores. However, state-of-the-art MREs offer no support for more efficient communication between co-located MREs, while fast inter-process communication mechanisms, such as shared memory, are widely available as a standard operating system service on most modern platforms.\par To address this growing need, we present the design and implementation of XMem ? type-safe, transparent, shared memory support for co-located MREs. XMem guarantees type-safety through coordinated, parallel, multi-process class loading and garbage collection. To avoid introducing any level of indirection, XMem manipulates virtual memory mapping. In addition, object sharing in XMem is fully transparent: shared objects are identical to local objects in terms of field access, synchronization, garbage collection, and method invocation, with the only difference being that shared-to-private pointers are disallowed. XMem facilitates easy integration and use by existing communication technologies and software systems, such as RMI, JNDI, JDBC, serialization/XML, and network sockets.\par We have implemented XMem in the open-source, production-quality HotSpot Java Virtual Machine. Our experimental evaluation, based on core communication technologies underlying J2EE, as well as using open-source server applications, indicates that XMem significantly improves throughput and response time by avoiding the overheads imposed by object serialization and network communication.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "class loading; garbage collection; interprocess communication; managed runtimes; parallel; shared memory; synchronization; transparent; type-safe", } @Article{Wei:2008:JDP, author = "Wen Hsiang Wei and Guan Jhih Chen", title = "{JavaStatSoft}: design patterns and features", journal = j-COMP-STAT, volume = "23", number = "2", pages = "235--251", month = apr, year = "2008", CODEN = "CSTAEB", DOI = "https://doi.org/10.1007/s00180-007-0092-6", ISSN = "0943-4062 (print), 1613-9658 (electronic)", ISSN-L = "0943-4062", bibdate = "Thu Jun 18 16:19:36 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/compstat.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://link.springer.com/article/10.1007/s00180-007-0092-6", acknowledgement = ack-nhfb, ajournal = "Comp. Stat.", fjournal = "Computational Statistics", journal-URL = "http://link.springer.com/journal/180", } @Article{Weimer:2008:ESP, author = "Westley Weimer and George C. Necula", title = "Exceptional situations and program reliability", journal = j-TOPLAS, volume = "30", number = "2", pages = "8:1--8:51", month = mar, year = "2008", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1330017.1330019", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Wed Jun 11 19:22:42 MDT 2008", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "It is difficult to write programs that behave correctly in the presence of run-time errors. Proper behavior in the face of exceptional situations is important to the reliability of long-running programs. Existing programming language features often provide poor support for executing clean-up code and for restoring invariants.\par We present a data-flow analysis for finding a certain class of exception-handling defects: those related to a failure to release resources or to clean up properly along all paths. Many real-world programs violate such resource usage rules because of incorrect exception handling. Our flow-sensitive analysis keeps track of outstanding obligations along program paths and does a precise modeling of control flow in the presence of exceptions. Using it, we have found over 1,300 exception handling defects in over 5 million lines of Java code.\par Based on those defects we propose a programming language feature, the compensation stack, that keeps track of obligations at run time and ensures that they are discharged. We present a type system for compensation stacks that tracks collections of obligations. Finally, we present case studies to demonstrate that this feature is natural, efficient, and can improve reliability.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", } @Article{Wiedermann:2008:IQE, author = "Ben Wiedermann and Ali Ibrahim and William R. Cook", title = "Interprocedural query extraction for transparent persistence", journal = j-SIGPLAN, volume = "43", number = "10", pages = "19--36", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449767", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Transparent persistence promises to integrate programming languages and databases by allowing programs to access persistent data with the same ease as non-persistent data. In this work we demonstrate the feasibility of optimizing transparently persistent programs by extracting queries to efficiently prefetch required data. A static analysis derives query structure and conditions across methods that access persistent data. Using the static analysis, our system transforms the program to execute explicit queries. The transformed program composes queries across methods to handle method calls that return persistent data. We extend an existing Java compiler to implement the static analysis and program transformation, handling recursion and parameterized queries. We evaluate the effectiveness of query extraction on the OO7 and TORPEDO benchmarks. This work is focused on programs written in the current version of Java, without languages changes. However, the techniques developed here may also be of value in conjunction with object-oriented languages extended with high-level query syntax.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "attribute grammars; databases; object-relational mapping; programming languages; static analysis", } @Article{Willis:2008:CIJ, author = "Darren Willis and David J. Pearce and James Noble", title = "Caching and incrementalisation in the {Java Query Language}", journal = j-SIGPLAN, volume = "43", number = "10", pages = "1--18", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449764.1449766", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many contemporary object-oriented programming languages support first-class queries or comprehensions. These language extensions make it easier for programmers to write queries, but are generally implemented no more efficiently than the code using collections, iterators, and loops that they replace. Crucially, whenever a query is re-executed, it is recomputed from scratch. We describe a general approach to optimising queries over mutable objects: query results are cached, and those caches are incrementally maintained whenever the collections and objects underlying those queries are updated. We hope that the performance benefits of our optimisations may encourage more general adoption of first-class queries by object-oriented programmers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "incrementalization; Java; querying", } @Article{Xian:2008:CAS, author = "Feng Xian and Witawas Srisa-an and Hong Jiang", title = "Contention-aware scheduler: unlocking execution parallelism in multithreaded {Java} programs", journal = j-SIGPLAN, volume = "43", number = "10", pages = "163--180", month = sep, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1449955.1449778", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Oct 22 09:57:37 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In multithreaded programming, locks are frequently used as a mechanism for synchronization. Because today's operating systems do not consider lock usage as a scheduling criterion, scheduling decisions can be unfavorable to multithreaded applications, leading to performance issues such as convoying and heavy lock contention in systems with multiple processors. Previous efforts to address these issues (e.g., transactional memory, lock-free data structure) often treat scheduling decisions as 'a fact of life,' and therefore these solutions try to cope with the consequences of undesirable scheduling instead of dealing with the problem directly.\par In this paper, we introduce {\em Contention-Aware Scheduler (CA-Scheduler)}, which is designed to support efficient execution of large multithreaded Java applications in multiprocessor systems. Our proposed scheduler employs a scheduling policy that reduces lock contention. As will be shown in this paper, our prototype implementation of the CA-Scheduler in Linux and Sun HotSpot virtual machine only incurs 3.5\% runtime overhead, while the overall performance differences, when compared with a system with no contention awareness, range from a degradation of 3\% in a small multithreaded benchmark to an improvement of 15\% in a large Java application server benchmark.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "Java; operating systems; scheduling", } @Article{Xian:2008:GCJ, author = "Feng Xian and Witawas Srisa-an and Hong Jiang", title = "Garbage collection: {Java} application servers' {Achilles} heel", journal = j-SCI-COMPUT-PROGRAM, volume = "70", number = "2--3", pages = "89--110", day = "1", month = feb, year = "2008", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:17 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Yu:2008:OCL, author = "Zoe C. H. Yu and Francis C. M. Lau and Cho-Li Wang", title = "Object co-location and memory reuse for {Java} programs", journal = j-TACO, volume = "4", number = "4", pages = "4:1--4:??", month = jan, year = "2008", CODEN = "????", DOI = "https://doi.org/10.1145/1328195.1328199", ISSN = "1544-3566 (print), 1544-3973 (electronic)", ISSN-L = "1544-3566", bibdate = "Mon Jun 16 11:41:35 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We introduce a new memory management system, STEMA, which can improve the execution time of Java programs. STEMA detects prolific types on-the-fly and co-locates their objects in a special memory space which supports reuse of memory. We argue and show that memory reuse and co-location of prolific objects can result in improved cache locality, reduced memory fragmentation, reduced GC time, and faster object allocation. We evaluate STEMA using 16 benchmarks. Experimental results show that STEMA performs 2.7\%, 4.0\%, and 8.2\% on average better than MarkSweep, CopyMS, and SemiSpace.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM Transactions on Architecture and Code Optimization (TACO)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J924", keywords = "garbage collector; Java; memory allocator; memory reuse; mutator; object co-location", } @Article{Zbrzezny:2008:TVJ, author = "Andrzej Zbrzezny and Bo{\.z}ena Wo{\'z}na", title = "Towards Verification of {Java} Programs in {perICS}", journal = j-FUND-INFO, volume = "85", number = "1--4", pages = "533--548", month = sep, year = "2008", CODEN = "FUMAAJ", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:07:07 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Zee:2008:FFV, author = "Karen Zee and Viktor Kuncak and Martin Rinard", title = "Full functional verification of linked data structures", journal = j-SIGPLAN, volume = "43", number = "6", pages = "349--361", month = jun, year = "2008", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1379022.1375624", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Wed Jun 18 11:04:53 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present the first verification of full functional correctness for a range of linked data structure implementations, including mutable lists, trees, graphs, and hash tables. Specifically, we present the use of the Jahob verification system to verify formal specifications, written in classical higher-order logic, that completely capture the desired behavior of the Java data structure implementations (with the exception of properties involving execution time and/or memory consumption). Given that the desired correctness properties include intractable constructs such as quantifiers, transitive closure, and lambda abstraction, it is a challenge to successfully prove the generated verification conditions.\par Our Jahob verification system uses integrated reasoning to split each verification condition into a conjunction of simpler subformulas, then apply a diverse collection of specialized decision procedures, first-order theorem provers, and, in the worst case, interactive theorem provers to prove each subformula. Techniques such as replacing complex subformulas with stronger but simpler alternatives, exploiting structure inherently present in the verification conditions, and, when necessary, inserting verified lemmas and proof hints into the imperative source code make it possible to seamlessly integrate all of the specialized decision procedures and theorem provers into a single powerful integrated reasoning system. By appropriately applying multiple proof techniques to discharge different subformulas, this reasoning system can effectively prove the complex and challenging verification conditions that arise in this context.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "data structure; decision procedure; Java; theorem prover; verification", } @Article{Zhang:2008:VTB, author = "Hua Zhang and Joohan Lee and Ratan Guha", title = "{VCluster}: a thread-based {Java} middleware for {SMP} and heterogeneous clusters with thread migration support", journal = j-SPE, volume = "38", number = "10", pages = "1049--1071", day = "??", month = aug, year = "2008", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.862", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 09:55:30 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Nov 21 2007 5:15AM", } @Article{Ahmed:2009:SDR, author = "Amal Ahmed and Derek Dreyer and Andreas Rossberg", title = "State-dependent representation independence", journal = j-SIGPLAN, volume = "44", number = "1", pages = "340--353", month = jan, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1594834.1480925", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:38 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Mitchell's notion of representation independence is a particularly useful application of Reynolds' relational parametricity -- two different implementations of an abstract data type can be shown contextually equivalent so long as there exists a relation between their type representations that is preserved by their operations. There have been a number of methods proposed for proving representation independence in various pure extensions of System F (where data abstraction is achieved through existential typing), as well as in Algol- or Java-like languages (where data abstraction is achieved through the use of local mutable state). However, none of these approaches addresses the interaction of existential type abstraction and local state. In particular, none allows one to prove representation independence results for generative ADTs -- i.e. ADTs that both maintain some local state and define abstract types whose internal representations are dependent on that local state.\par In this paper, we present a syntactic, logical-relations-based method for proving representation independence of generative ADTs in a language supporting polymorphic types, existential types, general recursive types, and unrestricted ML-style mutable references. We demonstrate the effectiveness of our method by using it to prove several interesting contextual equivalences that involve a close interaction between existential typing and local state, as well as some well-known equivalences from the literature (such as Pitts and Stark's 'awkward' example) that have caused trouble for previous logical-relations-based methods.\par The success of our method relies on two key technical innovations. First, in order to handle generative ADTs, we develop a possible-worlds model in which relational interpretations of types are allowed to grow over time in a manner that is tightly coupled with changes to some local state. Second, we employ a step-indexed stratification of possible worlds, which facilitates a simplified account of mutable references of higher type.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "abstract data types; existential types; local state; representation independence; step-indexed logical relations", } @Article{Astrachan:2009:APC, author = "Owen Astrachan and Henry Walker and Chris Stephenson and Lien Diaz and Jan Cuny", title = "Advanced placement computer science: the future of tracking the first year of instruction", journal = j-SIGCSE, volume = "41", number = "1", pages = "397--398", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1509005", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "The Advanced Placement (AP) Computer Science program is intended to reflect enough of a common core of a first semester or year of university-level computer science so that placement or credit can be awarded for work done before college. The SIGCSE symposia have a long history of providing forums for discussing the evolution of the AP program from its inception [1] to the transition from Pascal to C++ [3] to the transition from C++ to Java [2,5,7,8,9]. Panels related to how credit and placement are awarded have also been part of the SIGCSE conferences [4,6]. This special session is a report of the ongoing process of developing new and possible wide-ranging changes to the AP program.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Auerbach:2009:LLT, author = "Joshua Auerbach and David F. Bacon and Daniel Iercan and Christoph M. Kirsch and V. T. Rajan and Harald R{\"o}ck and Rainer Trummer", title = "Low-latency time-portable real-time programming with {Exotasks}", journal = j-TECS, volume = "8", number = "2", pages = "15:1--15:??", month = jan, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1145/1457255.1457262", ISSN = "1539-9087 (print), 1558-3465 (electronic)", ISSN-L = "1539-9087", bibdate = "Thu Feb 5 19:15:05 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "{\em Exotasks\/} are a novel Java programming construct that achieve three important goals. They achieve low latency while allowing the fullest use of Java language features, compared to previous attempts to restrict the Java language for use in the submillisecond domain. They support pluggable schedulers, allowing easy implementation of new scheduling paradigms in a real-time Java system. They can achieve deterministic timing, even in the presence of other Java threads, and across changes of hardware and software platform. To achieve these goals, the program is divided into tasks with private heaps. Tasks may be strongly isolated, communicating only with each other and guaranteeing determinism, or weakly isolated, allowing some communication with the rest of the Java application. Scheduling of the tasks' execution, garbage collection, and value passing is accomplished by the pluggable scheduler. Schedulers that we have written employ logical execution time (LET) in association with strong isolation to achieve time portability. We have also built a quad-rotor model helicopter, the JAviator, which we use to evaluate our implementation of Exotasks in an experimental embedded version of IBM's J9 real-time virtual machine. Our experiments show that we are able to maintain very low scheduling jitter and deterministic behavior in the face of variations in both software load and hardware platform. We also show that Exotasks perform nearly as well as Eventrons on a benchmark audio application.", acknowledgement = ack-nhfb, articleno = "15", fjournal = "ACM Transactions on Embedded Computing Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?&idx=J840", keywords = "Real-time scheduling; time portability; UAVs; virtual machine", } @Article{Axelsen:2009:GPT, author = "Eyvind W. Axelsen and Stein Krogdahl", title = "{Groovy} package templates: supporting reuse and runtime adaption of class hierarchies", journal = j-SIGPLAN, volume = "44", number = "12", pages = "15--26", month = dec, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640134.1640139", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Aug 31 22:04:07 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We show how package templates, a modularization mechanism originally developed for statically typed languages like Java and C\#, can be applied to and implemented in a dynamic language like Groovy, by using the language's capabilities for meta-programming. We then consider a set of examples and discuss dynamic PT from the viewpoints of code modularization and reuse, and dynamic adaption of classes at runtime.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dynamic languages; modularization; OOP; templates", } @Article{Bardram:2009:ABC, author = "Jakob E. Bardram", title = "Activity-based computing for medical work in hospitals", journal = j-TOCHI, volume = "16", number = "2", pages = "10:1--10:??", month = jun, year = "2009", CODEN = "ATCIF4", DOI = "https://doi.org/10.1145/1534903.1534907", ISSN = "1073-0516 (print), 1557-7325 (electronic)", ISSN-L = "1073-0516", bibdate = "Fri Jun 12 10:37:53 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tochi/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Studies have revealed that people organize and think of their work in terms of activities that are carried out in pursuit of some overall objective, often in collaboration with others. Nevertheless, modern computer systems are typically single-user oriented, that is, designed to support individual tasks such as word processing while sitting at a desk. This article presents the concept of Activity-Based Computing (ABC), which seeks to create computational support for human activities. The ABC approach has been designed to address activity-based computing support for clinical work in hospitals. In a hospital, the challenges arising from the management of parallel activities and interruptions are amplified because multitasking is now combined with a high degree of mobility, collaboration, and urgency. The article presents the empirical and theoretical background for activity-based computing, its principles, the Java-based implementation of the ABC Framework, and an experimental evaluation together with a group of hospital clinicians. The article contributes to the growing research on support for human activities, mobility, collaboration, and context-aware computing. The ABC Framework presents a unifying perspective on activity-based support for human-computer interaction.", acknowledgement = ack-nhfb, articleno = "10", fjournal = "ACM Transactions on Computer-Human Interaction", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J756", keywords = "activity-awareness; activity-based computing; architecture; cooperation; electronic patient record; Framework; ubiquitous computing", } @Article{Bauer:2009:CER, author = "Lujo Bauer and Jay Ligatti and David Walker", title = "Composing expressive runtime security policies", journal = j-TOSEM, volume = "18", number = "3", pages = "9:1--9:??", month = may, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1525880.1525882", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Wed Jun 3 16:34:58 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Program monitors enforce security policies by interposing themselves into the control flow of untrusted software whenever that software attempts to execute security-relevant actions. At the point of interposition, a monitor has authority to permit or deny (perhaps conditionally) the untrusted software's attempted action. Program monitors are common security enforcement mechanisms and integral parts of operating systems, virtual machines, firewalls, network auditors, and antivirus and antispyware tools.\par Unfortunately, the runtime policies we require program monitors to enforce grow more complex, both as the monitored software is given new capabilities and as policies are refined in response to attacks and user feedback. We propose dealing with policy complexity by organizing policies in such a way as to make them composable, so that complex policies can be specified more simply as compositions of smaller subpolicy modules. We present a fully implemented language and system called Polymer that allows security engineers to specify and enforce composable policies on Java applications. We formalize the central workings of Polymer by defining an unambiguous semantics for our language. Using this formalization, we state and prove an uncircumventability theorem which guarantees that monitors will intercept all security-relevant actions of untrusted software.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "Policy composition; policy enforcement; policy-specification language", } @Article{Bellia:2009:JSI, author = "Marco Bellia and M. Eugenia Occhiuto", title = "{Java$ \Omega $}: The Structures and the Implementation of a Preprocessor for {Java} with $m$ and $ m c$ parameters", journal = j-FUND-INFO, volume = "93", number = "1--3", pages = "45--64", month = jan, year = "2009", CODEN = "FUMAAJ", DOI = "https://doi.org/10.3233/FI-2009-0087", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:08:45 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Article{Bertels:2009:EMM, author = "Peter Bertels and Wim Heirman and Erik D'Hollander and Dirk Stroobandt", title = "Efficient memory management for hardware accelerated {Java Virtual Machines}", journal = j-TODAES, volume = "14", number = "4", pages = "48:1--48:??", month = aug, year = "2009", CODEN = "ATASFO", DOI = "https://doi.org/10.1145/1562514.1562516", ISSN = "1084-4309 (print), 1557-7309 (electronic)", ISSN-L = "1084-4309", bibdate = "Thu Aug 27 14:38:55 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/todaes/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Application-specific hardware accelerators can significantly improve a system's performance. In a Java-based system, we then have to consider a hybrid architecture that consists of a Java Virtual Machine running on a general-purpose processor connected to the hardware accelerator. In such a hybrid architecture, data communication between the accelerator and the general-purpose processor can incur a significant cost, which may even annihilate the original performance improvement of adding the accelerator. A careful layout of the data in the memory structure is therefore of major importance to maintain the acceleration performance benefits.\par This article addresses the reduction of the communication cost in a distributed shared memory consisting of the main memory of the processor and the accelerator's local memory, which are unified in the Java heap. Since memory access times are highly nonuniform, a suitable allocation of objects in either main memory or the accelerator's local memory can significantly reduce the communication cost. We propose several techniques for finding the optimal location for each Java object's data, either statically through profiling or dynamically at runtime. We show how we can reduce communication cost by up to 86\% for the SPECjvm and DaCapo benchmarks. We also show that the best strategy is application dependent and also depends on the relative cost of remote versus local accesses. For a relative cost higher than 10, a self-learning dynamic approach often results in the best performance.", acknowledgement = ack-nhfb, articleno = "48", fjournal = "ACM Transactions on Design Automation of Electronic Systems (TODAES)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J776", keywords = "Dynamic memory management; hardware acceleration; Java Virtual Machine", } @Article{Bertoli:2009:JPE, author = "Marco Bertoli and Giuliano Casale and Giuseppe Serazzi", title = "{JMT}: performance engineering tools for system modeling", journal = j-SIGMETRICS, volume = "36", number = "4", pages = "10--15", month = mar, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1145/1530873.1530877", ISSN = "0163-5999 (print), 1557-9484 (electronic)", ISSN-L = "0163-5999", bibdate = "Wed Aug 25 07:32:42 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present the Java Modelling Tools (JMT) suite, an integrated framework of Java tools for performance evaluation of computer systems using queueing models. The suite offers a rich user interface that simplifies the definition of performance models by means of wizard dialogs and of a graphical design workspace.\par The performance evaluation features of JMT span a wide range of state-of-the-art methodologies including discrete-event simulation, mean value analysis of product-form networks, analytical identification of bottleneck resources in multiclass environments, and workload characterization with fuzzy clustering. The discrete-event simulator supports several advanced modeling features such as finite capacity regions, load-dependent service times, bursty processes, fork-and-join nodes, and implements spectral estimation for analysis of simulative results. The suite is open-source, released under the GNU general public license (GPL), and it is available for free download at: http://jmt.sourceforge.net.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMETRICS Performance Evaluation Review", journal-URL = "http://portal.acm.org/toc.cfm?id=J618", } @Article{Bettini:2009:FJD, author = "Lorenzo Bettini and Sara Capecchi and Betti Venneri", title = "Featherweight {Java} with dynamic and static overloading", journal = j-SCI-COMPUT-PROGRAM, volume = "74", number = "5--6", pages = "261--278", day = "1", month = mar, year = "2009", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:26 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Binder:2009:CPJ, author = "Walter Binder and Martin Schoeberl and Philippe Moret and Alex Villaz{\'o}n", title = "Cross-profiling for {Java} processors", journal = j-SPE, volume = "39", number = "18", pages = "1439--1465", day = "25", month = dec, year = "2009", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.940", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 10:02:44 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Oct 30 2009 5:41AM", } @Article{Bloom:2009:TRC, author = "Bard Bloom and John Field and Nathaniel Nystrom and Johan {\"O}stlund and Gregor Richards and Rok Strni{\v{s}}a and Jan Vitek and Tobias Wrigstad", title = "Thorn: robust, concurrent, extensible scripting on the {JVM}", journal = j-SIGPLAN, volume = "44", number = "10", pages = "117--136", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640098", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Scripting languages enjoy great popularity due to their support for rapid and exploratory development. They typically have lightweight syntax, weak data privacy, dynamic typing, powerful aggregate data types, and allow execution of the completed parts of incomplete programs. The price of these features comes later in the software life cycle. Scripts are hard to evolve and compose, and often slow. An additional weakness of most scripting languages is lack of support for concurrency - though concurrency is required for scalability and interacting with remote services. This paper reports on the design and implementation of Thorn, a novel programming language targeting the JVM. Our principal contributions are a careful selection of features that support the evolution of scripts into industrial grade programs - {\em e.g.}, an expressive module system, an optional type annotation facility for declarations, and support for concurrency based on message passing between lightweight, isolated processes. On the implementation side, Thorn has been designed to accommodate the evolution of the language itself through a compiler plugin mechanism and target the Java virtual machine.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "actors; pattern matching; scripting", } @Article{Bocchino:2009:TES, author = "Robert L. {Bocchino, Jr.} and Vikram S. Adve and Danny Dig and Sarita V. Adve and Stephen Heumann and Rakesh Komuravelli and Jeffrey Overbey and Patrick Simmons and Hyojin Sung and Mohsen Vakilian", title = "A type and effect system for deterministic parallel {Java}", journal = j-SIGPLAN, volume = "44", number = "10", pages = "97--116", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640097", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Today's shared-memory parallel programming models are complex and error-prone. While many parallel programs are intended to be deterministic, unanticipated thread interleavings can lead to subtle bugs and nondeterministic semantics. In this paper, we demonstrate that a practical {\em type and effect system\/} can simplify parallel programming by {\em guaranteeing deterministic semantics\/} with modular, compile-time type checking even in a rich, concurrent object-oriented language such as Java. We describe an object-oriented type and effect system that provides several new capabilities over previous systems for expressing deterministic parallel algorithms. We also describe a language called Deterministic Parallel Java (DPJ) that incorporates the new type system features, and we show that a core subset of DPJ is sound. We describe an experimental validation showing that DPJ can express a wide range of realistic parallel programs; that the new type system features are useful for such programs; and that the parallel programs exhibit good performance gains (coming close to or beating equivalent, nondeterministic multithreaded programs where those are available).", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "commutativity; determinism; deterministic parallelism; effect systems; effects", } @Article{Bond:2009:LP, author = "Michael D. Bond and Kathryn S. McKinley", title = "Leak pruning", journal = j-SIGPLAN, volume = "44", number = "3", pages = "277--288", month = mar, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1508244.1508277", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:39:26 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Managed languages improve programmer productivity with type safety and garbage collection, which eliminate memory errors such as dangling pointers, double frees, and buffer overflows. However, because garbage collection uses reachability to over-approximate live objects, programs may still leak memory if programmers forget to eliminate the last reference to an object that will not be used again. Leaks slow programs by increasing collector workload and frequency. Growing leaks eventually crash programs.\par This paper introduces leak pruning, which keeps programs running by predicting and reclaiming leaked objects at run time. It predicts dead objects and reclaims them based on observing data structure usage patterns. Leak pruning preserves semantics because it waits for heap exhaustion before reclaiming objects and poisons references to objects it reclaims. If the program later tries to access a poisoned reference, the virtual machine (VM) throws an error. We show leak pruning has low overhead in a Java VM and evaluate it on 10 leaking programs. Leak pruning does not help two programs, executes five substantial programs 1.6-81X longer, and executes three programs, including a leak in Eclipse, for at least 24 hours. In the worst case, leak pruning defers fatal errors. In the best case, it keeps leaky programs running with preserved semantics and consistent throughput.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "garbage collection; leak tolerance; managed languages; memory leaks", } @Article{Bradel:2009:SPP, author = "Borys J. Bradel and Tarek S. Abdelrahman", title = "A study of potential parallelism among traces in {Java} programs", journal = j-SCI-COMPUT-PROGRAM, volume = "74", number = "5--6", pages = "296--313", day = "1", month = mar, year = "2009", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:26 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Bravenboer:2009:SDS, author = "Martin Bravenboer and Yannis Smaragdakis", title = "Strictly declarative specification of sophisticated points-to analyses", journal = j-SIGPLAN, volume = "44", number = "10", pages = "243--262", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640108", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present the DOOP framework for points-to analysis of Java programs. DOOP builds on the idea of specifying pointer analysis algorithms declaratively, using Datalog: a logic-based language for defining (recursive) relations. We carry the declarative approach further than past work by describing the full end-to-end analysis in Datalog and optimizing aggressively using a novel technique specifically targeting highly recursive Datalog programs.\par As a result, DOOP achieves several benefits, including full order-of-magnitude improvements in runtime. We compare DOOP with Lhotak and Hendren's PADDLE, which defines the state of the art for context-sensitive analyses. For the exact same logical points-to definitions (and, consequently, identical precision) DOOP is more than 15x faster than PADDLE for a 1-call-site sensitive analysis of the DaCapo benchmarks, with lower but still substantial speedups for other important analyses. Additionally, DOOP scales to very precise analyses that are impossible with PADDLE and Whaley et al.'s bddbddb, directly addressing open problems in past literature. Finally, our implementation is modular and can be easily configured to analyses with a wide range of characteristics, largely due to its declarativeness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bdds; datalog; declarative; DOOP; points-to analysis", } @Article{Bronson:2009:FDB, author = "Nathan G. Bronson and Christos Kozyrakis and Kunle Olukotun", title = "Feedback-directed barrier optimization in a strongly isolated {STM}", journal = j-SIGPLAN, volume = "44", number = "1", pages = "213--225", month = jan, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1504176.1504200", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:38 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Researchers in transactional memory (TM) have proposed open nesting as a methodology for increasing the concurrency of transactional programs. The idea is to ignore ``low-level'' memory operations of an open-nested transaction when detecting conflicts for its parent transaction, and instead perform abstract concurrency control for the ``high-level'' operation that the nested transaction represents. To support this methodology, TM systems use an open-nested commit mechanism that commits all changes performed by an open-nested transaction directly to memory, thereby avoiding low-level conflicts. Unfortunately, because the TM runtime is unaware of the different levels of memory, unconstrained use of open-nested commits can lead to anomalous program behavior.\par We describe the framework of {\em ownership-aware transactional memory\/} which incorporates the notion of modules into the TM system and requires that transactions and data be associated with specific {\em transactional modules\/} or Xmodules. We propose a new {\em ownership-aware commit mechanism\/}, a hybrid between an open-nested and closed-nested commit which commits a piece of data differently depending on which Xmodule owns the data. Moreover, we provide a set of precise constraints on interactions and sharing of data among the Xmodules based on familiar notions of abstraction. The ownership-aware commit mechanism and these restrictions on Xmodules allow us to prove that ownership-aware TM has clean memory-level semantics. In particular, it guarantees {\em serializability by modules\/}, an adaptation of the definition of multilevel serializability from database systems. In addition, we describe how a programmer can specify Xmodules and ownership in a Java-like language. Our type system can enforce most of the constraints required by ownership-aware TM statically, and can enforce the remaining constraints dynamically. Finally, we prove that if transactions in the process of aborting obey restrictions on their memory footprint, then ownership-aware TM is free from {\em semantic deadlock\/}.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "abstract serializability; open-nested transactions; ownership types; ownership-aware transactions; safe nesting; semantic deadlock; semantics; serializability by modules; transactional memory; transactional memory semantics; xmodules", } @Article{Brosgol:2009:ICL, author = "Ben Brosgol", title = "An introduction to the {C\#} language and {.NET} infrastructure", journal = j-SIGADA-LETTERS, volume = "29", number = "3", pages = "3--4", month = dec, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1647420.1647423", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:37 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Prerequisites: Familiarity with Object Oriented Programming principles in a language such as Ada, Java, or C++. No previous experience with C\# or .NET is assumed. This tutorial will describe the main elements of the C\# programming language and the Common Language Infrastructure (whose implementation by Microsoft is knows as .NET). It will focus on C\#'s more novel language features, using examples and comparisons with other languages (in particular, Ada and Java) to describe the semantics. Specific C\# language topics to be covered include the compilation model, namespaces, types, generics, exception handling, and threading. Common Language Infrastructure / .NET topics include summaries of the Base Class Library, Common Intermediate Language, Common Language System, Common Type System and Virtual Execution System. In short, this tutorial may be considered as the presenter's response to the following question: 'C\# is sometimes described as Microsoft's answer to Java. Is this an accurate assessment, and in any event how do C\# and .NET relate to Ada?'", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Ada; infrastructure; interfacing; languages; object-oriented; programming; real-time; software; systems", } @Article{Chandra:2009:SPA, author = "Satish Chandra and Stephen J. Fink and Manu Sridharan", title = "{Snugglebug}: a powerful approach to weakest preconditions", journal = j-SIGPLAN, volume = "44", number = "6", pages = "363--374", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543135.1542517", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Symbolic analysis shows promise as a foundation for bug-finding, specification inference, verification, and test generation. This paper addresses demand-driven symbolic analysis for object-oriented programs and frameworks. Many such codes comprise large, partial programs with highly dynamic behaviors--polymorphism, reflection, and so on--posing significant scalability challenges for any static analysis.\par We present an approach based on interprocedural backwards propagation of weakest preconditions. We present several novel techniques to improve the efficiency of such analysis. First, we present {\em directed call graph construction}, where call graph construction and symbolic analysis are interleaved. With this technique, call graph construction is guided by constraints discovered during symbolic analysis, obviating the need for exhaustively exploring a large, conservative call graph. Second, we describe {\em generalization}, a technique that greatly increases the reusability of procedure summaries computed during interprocedural analysis. Instead of tabulating how a procedure transforms a symbolic state in its entirety, our technique tabulates how the procedure transforms only the pertinent portion of the symbolic state. Additionally, we show how integrating an inexpensive, custom logic simplifier with weakest precondition computation dramatically improves performance.\par We have implemented the analysis in a tool called Snugglebug and evaluated it as a bug-report feasibility checker. Our results show that the algorithmic techniques were critical for successfully analyzing large Java applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "interprocedural analysis; symbolic analysis; weakest preconditions", } @Article{Chen:2009:UAD, author = "Mingsong Chen and Xiaokang Qiu and Wei Xu and Linzhang Wang and Jianhua Zhao and Xuandong Li", title = "{UML} Activity Diagram-Based Automatic Test Case Generation for {Java} Programs", journal = j-COMP-J, volume = "52", number = "5", pages = "545--556", month = aug, year = "2009", CODEN = "CMPJA6", DOI = "https://doi.org/10.1093/comjnl/bxm057", ISSN = "0010-4620 (print), 1460-2067 (electronic)", ISSN-L = "0010-4620", bibdate = "Wed Apr 28 14:33:35 MDT 2010", bibsource = "http://comjnl.oxfordjournals.org/content/vol52/issue5/index.dtl; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://comjnl.oxfordjournals.org/cgi/content/abstract/52/5/545; http://comjnl.oxfordjournals.org/cgi/reprint/52/5/545", acknowledgement = ack-nhfb, fjournal = "The Computer Journal", journal-URL = "http://comjnl.oxfordjournals.org/", } @Article{Chong:2009:BSW, author = "Stephen Chong and Jed Liu and Andrew C. Myers and Xin Qi and K. Vikram and Lantian Zheng and Xin Zheng", title = "Building secure {Web} applications with automatic partitioning", journal = j-CACM, volume = "52", number = "2", pages = "79--87", month = feb, year = "2009", CODEN = "CACMA2", DOI = "https://doi.org/10.1145/1461928.1461949", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Thu Jan 22 17:19:30 MST 2009", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Swift is a new, principled approach to building Web applications that are {\em secure by construction.\/} Modern Web applications typically implement some functionality as client-side JavaScript code, for improved interactivity. Moving code and data to the client can create security vulnerabilities, but currently there are no good methods for deciding when it is secure to do so.\par Swift automatically partitions application code while providing assurance that the resulting placement is secure and efficient. Application code is written as Java-like code annotated with information flow policies that specify the confidentiality and integrity of Web application information. The compiler uses these policies to automatically partition the program into JavaScript code running in the client browser and Java code running on the server. To improve interactive performance, code and data are placed on the client. However, security-critical code and data are always placed on the server. The compiler may also automatically replicate code across the client and server, to obtain both security and performance.", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Chugh:2009:SIF, author = "Ravi Chugh and Jeffrey A. Meister and Ranjit Jhala and Sorin Lerner", title = "Staged information flow for {JavaScript}", journal = j-SIGPLAN, volume = "44", number = "6", pages = "50--62", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543135.1542483", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Modern websites are powered by JavaScript, a flexible dynamic scripting language that executes in client browsers. A common paradigm in such websites is to include third-party JavaScript code in the form of libraries or advertisements. If this code were malicious, it could read sensitive information from the page or write to the location bar, thus redirecting the user to a malicious page, from which the entire machine could be compromised. We present an information-flow based approach for inferring the effects that a piece of JavaScript has on the website in order to ensure that key security properties are not violated. To handle dynamically loaded and generated JavaScript, we propose a framework for staging information flow properties. Our framework propagates information flow through the currently known code in order to compute a minimal set of syntactic residual checks that are performed on the remaining code when it is dynamically loaded. We have implemented a prototype framework for staging information flow. We describe our techniques for handling some difficult features of JavaScript and evaluate our system's performance on a variety of large real-world websites. Our experiments show that static information flow is feasible and efficient for JavaScript, and that our technique allows the enforcement of information-flow policies with almost no run-time overhead.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "confidentiality; flow analysis; integrity; set constraints; web applications", } @Book{Clarke:2009:JDR, author = "Jim Clarke and Jim Connors and Eric Bruno", title = "{JavaFX}: Developing Rich {Internet} Applications", publisher = pub-PHPTR, address = pub-PHPTR:adr, pages = "xxiii + 359", year = "2009", ISBN = "0-13-701287-X", ISBN-13 = "978-0-13-701287-9", LCCN = "QA76.73.J38", bibdate = "Tue Jan 27 15:54:54 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Cole:2009:MPC, author = "Marilyn C. Cole and Evan Korth and Adam Meyers and Sam Pluta", title = "{Musicomputation}: a pilot course exploring a pre-college computer science curriculum", journal = j-SIGCSE, volume = "41", number = "3", pages = "381--381", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1563023", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "Computer Science and Computational Approaches to Music for Middle School and High School Students, also known as Musicomputation (http://musicomputation.com/) was a highly successful course sponsored by the National Science Foundation (IIS-0834034) and first held in June 2008 at New York University. Two NYU professors and two doctoral candidates developed curriculum, gave lectures, and supervised labs introducing computer science and computer music to students aged 12-17. Our hypothesis was that it is easier to learn computer science when the data you are modeling and the problems you are solving belong to a domain that you know well and love. During the project, students progressed far beyond the instructors' expectations, quickly absorbing computer science concepts that even college students often find difficult. For the pilot study, we recruited 11 students with at least five years of background in music from the Juilliard School's Precollege Division, Stuyvesant High School, the NYC-area home-schooling community, and the previous participant lists of cSplash (a yearly event at the Courant Institute at NYU where graduate students and professors teach one- to three-hour classes in computer science and mathematics to students in grades 6-12). About half of the students in Musicomputation had some programming experience, with three of them finishing their year of AP Computer Science at the time of the course. All 11 students were highly motivated and had high levels of expertise in both mathematics and music. Thus, the success of our class was in part due to the fact that we had recruited very good students. Musicomputation covered computer science basics such as the logical design of computers, formal language theory, sorting algorithms, variables, control structures and a sampling of how the same concepts can be represented in different computer languages. Algorithms and patterns used in certain pieces of contemporary music (Morton Feldman's Triadic memories and Steve Reich's Clapping Music) were also covered in the class, as were the basics of representing sound electronically. Students were taught the programming language Processing (http://www.processing.org/), an open source project based on Java that easily enables immediate visual feedback. We also used Processing for simple music composition, as well as discussing other languages used for music, such as SuperCollider and ChucK. The students produced many programs, both graphical and audible, culminating in final projects which produce music and are downloadable from the Musicomputation website. The interdisciplinary nature of the class helped show the students why computer science is both important and basic to their future development, whether they choose to go into a mathematical or scientific field or continue to develop their musical and artistic talents. To share the exciting developments from the course, the poster displays some of the more visual work that the students created through the use of Processing, such as a fractal assignment to implement recursion and a randomized algorithm that explores the properties of the equation for a circle. It also includes some evidence (in the form of code snippets and discussion) of the revelations in basic programming concepts that students made over the course of their time learning about computer science, including both the simplification and potential expansion of music composition code that can come about with the discovery of iteration and recursion.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Dann:2009:EAC, author = "Wanda Dann and Stephen Cooper", title = "{Education Alice 3}: concrete to abstract", journal = j-CACM, volume = "52", number = "8", pages = "27--29", month = aug, year = "2009", CODEN = "CACMA2", DOI = "https://doi.org/10.1145/1536616.1536628", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Wed Sep 2 16:54:35 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The innovative Alice 3 programming environment, currently in beta testing, teaches students to program with Alice and Java software.", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Desai:2009:AIC, author = "Aniruddha Desai and Jugdutt Singh", title = "Architecture Independent Characterization of Embedded {Java} Workloads", journal = j-IEEE-COMPUT-ARCHIT-LETT, volume = "8", number = "1", pages = "29--32", month = jan # "\slash " # jun, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1109/L-CA.2009.7", ISSN = "1556-6056 (print), 1556-6064 (electronic)", ISSN-L = "1556-6056", bibdate = "Thu Jun 20 17:18:18 2019", bibsource = "https://www.math.utah.edu/pub/tex/bib/ieeecomputarchitlett.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper presents architecture independent characterization of embedded Java workloads based on the industry standard GrinderBench benchmark which includes different classes of real world embedded Java applications. This work is based on a custom built embedded Java Virtual Machine (JVM) simulator specifically designed for embedded JVM modeling and embodies domain specific details such as thread scheduling, algorithms used for native CLDC APIs and runtime data structures optimized for use in embedded systems. The results presented include dynamic execution characteristics, dynamic bytecode instruction mix, application and API workload distribution, Object allocation statistics, instruction-set coverage, memory usage statistics and method code and stack frame characteristics.", acknowledgement = ack-nhfb, affiliation = "Desai, A (Reprint Author), La Trobe Univ, Bundoora, Vic 3086, Australia. Desai, Aniruddha; Singh, Jugdutt, La Trobe Univ, Bundoora, Vic 3086, Australia.", author-email = "desai@ieee.org", da = "2019-06-20", doc-delivery-number = "V17GC", fjournal = "IEEE Computer Architecture Letters", journal-iso = "IEEE Comput. Archit. Lett.", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=10208", keywords = "Embedded Systems; Java; Java bytecode; Workload Characterization", number-of-cited-references = "8", research-areas = "Computer Science", times-cited = "0", unique-id = "Desai:2009:AIC", web-of-science-categories = "Computer Science, Hardware \& Architecture", } @Article{Djordjevic:2009:PAC, author = "Mirela Djordjevi{\'c}", title = "Progressive assignment in {CS1}", journal = j-SIGCSE, volume = "41", number = "3", pages = "346--346", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562987", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "This paper proposes a simple graphics programming project, Java Target project that follows the Spiral Model of teaching three different components of the introductory programming course: fundamentals, object-oriented, and event-driven programming. Especially important in this project is the progressive nature that introduces one concept and reviews others. The project consists of following progressive tasks: draw a circle (target); user defines radius, and center of a circle; report number of shots; randomize shots; select color, select shape, resize target; define user class Circle (Target); define number of circles in target; keep scores and find the best score.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Ducournau:2009:EAO, author = "Roland Ducournau and Flor{\'e}al Morandat and Jean Privat", title = "Empirical assessment of object-oriented implementations with multiple inheritance and static typing", journal = j-SIGPLAN, volume = "44", number = "10", pages = "41--60", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640093", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Object-oriented languages involve a threefold tradeoff between runtime efficiency, expressiveness (multiple inheritance), and modularity, i.e. open-world assumption (OWA). Runtime efficiency is conditioned by both the {\em implementation technique\/} and {\em compilation scheme}. The former specifies the data structures that support method invocation, attribute access and subtype testing. The latter consists of the production line of an executable from the source code. Many implementation techniques have been proposed and several compilation schemes can be considered from fully global compilation under the closed-world assumption (CWA) to separate compilation with dynamic loading under the OWA, with midway solutions. This article reviews a significant subset of possible combinations and presents a systematic, empirical comparison of their respective efficiencies with {\em all other things being equal}. The testbed consists of the Prm compiler that has been designed for this purpose. The considered techniques include C++ subobjects, coloring, perfect hashing, binary tree dispatch and caching. A variety of processors were considered. Qualitatively, these first results confirm the intuitive or theoretical abstract assessments of the tested approaches. As expected, efficiency increases as CWA strengthens. From a quantitative standpoint, the results are the first to precisely compare the efficiency of techniques that are closely associated with specific languages like C++ and Eiffel. They also confirm that perfect hashing should be considered for implementing Java and .Net interfaces.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "binary tree dispatch; closed-world assumption; coloring; downcast; dynamic loading; interfaces; late binding; method tables; multiple inheritance; multiple subtyping; open-world assumption; perfect hashing; single inheritance; subtype test; type analysis; virtual function table", } @Book{Edelson:2009:JC, author = "Justin Edelson and Henry Liu", title = "{JRuby} cookbook", publisher = pub-ORA-MEDIA, address = pub-ORA-MEDIA:adr, pages = "250 (est.)", year = "2009", ISBN = "0-596-15506-9", ISBN-13 = "978-0-596-15506-3", LCCN = "QA76.73.R83 E33 2008", bibdate = "Sat Nov 13 10:19:57 MST 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90; prodorbis.library.yale.edu:7090/voyager", acknowledgement = ack-nhfb, subject = "Ruby on rails (Electronic resource); Application software; Development; Java (Computer program language); Ruby (Computer program language); Web site development", } @Article{Edmondson:2009:PFY, author = "Carol Edmondson", title = "Proglets for first-year programming in {Java}", journal = j-SIGCSE, volume = "41", number = "2", pages = "108--112", month = jun, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595453.1595486", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "Applets are little applications. Proglets are little programs. The author advocates the use of proglets in first-year programming courses to encourage students to investigate aspects of the language being taught, to test (parts of) algorithms, and to have fun. The writing of proglets allows beginning students to concentrate on their current concerns without being overwhelmed by the requirement to write assignment quality programs worthy of a fully-trained software engineer. The author has used proglets during three semesters to help students in repeat offerings of first-year programming courses which used Java as the teaching language.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{English:2009:ESP, author = "John English and Tammy Rosenthal", title = "Evaluating students' programs using automated assessment: a case study", journal = j-SIGCSE, volume = "41", number = "3", pages = "371--371", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1563013", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "This poster presents our experience of using automated assessment in a programming course given by the Department of Computer Science at Holon Institute of Technology (HIT). The course was given as a first year course as part of an engineering degree which introduces students to programming in C and which teaches them the basics of the imperative programming paradigm. About 200 students took the course in Autumn 2009. They were required to submit 3 programming assignments each of which contained 4 programming tasks. Most of the assignments were evaluated manually. Our poster presents our experience with 15 students who used an automated assessment system to submit one of their assignments. The system used was Checkpoint [1], an integrated automated assessment system developed by the first author, which generates automated feedback and evaluation for students' work. The system manages both homework assignments and formal examinations based on a range of different question types, including questions requiring free-text answers. It also allows automatically-generated marks to be manually moderated and adjusted, with feedback comments from the human moderator. Checkpoint has been in use since October 2005 at the University of Brighton in the UK for assessing two first year Java programming modules which comprise a total of about 150 students annually. Students at Brighton are required to use Checkpoint to submit assignments from the very beginning of their course, and the two end-of-semester formal examinations are also administered using Checkpoint. The entire assessment structure is based around the ability to assess students on a 'little and often' basis, with assessment deadlines at fortnightly intervals throughout the year. However, students at Holon have no prior experience of automated assessment and it has not been used so far on any other courses within the institution. The assessment structure is therefore more traditional and involves fewer but larger assignments. The experiment reported here was carried out in order to evaluate the benefits of automated assessment following earlier work by the second author [2] and involved automating one of these assignments. The assignment was offered in two ways: a conventional manual submission and an automated submission via Checkpoint. The students were given the choice of submitting their work via either method. Checkpoint was modified for this experiment to display the questions in Hebrew and to support feedback comments in Hebrew given by the human evaluator as part of the moderation process. Checkpoint was also modified to support C in addition to Java since this was the language the students were required to write their programs. All the participants, both students and instructors, gave very positive feedback. The students had all been manually evaluated in previous assignments and their comments with regard to the differences were very positive. They said that the system was impartial and because it allowed them to submit many attempts before the deadline it enabled them to improve their programming skills. It also allowed the instructors to monitor student progress during the course of the assignment and to act to correct misconceptions.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Fitzgerald:2009:ARN, author = "Sue Fitzgerald", title = "All {I} really need to know {I} learned in {CS1}", journal = j-SIGCSE, volume = "41", number = "1", pages = "1--1", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1508867", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "Over the last 45 years as a student and faculty member in Computer Science, I have been involved in learning, teaching, and writing for the CS1 course. I have authored or co-authored textbooks for CS1 in nine different programming languages from Fortran to Java. Each new language was used because of a particular set of features it provided to solve the critical problem in programming or software development of the day. This talk will take a look back at these languages and the extent to which they succeeded. I will also take a look ahead to see what direction CS1 might be taking in the future.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Flanagan:2009:FEP, author = "Cormac Flanagan and Stephen N. Freund", title = "{FastTrack}: efficient and precise dynamic race detection", journal = j-SIGPLAN, volume = "44", number = "6", pages = "121--133", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542490", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Multithreaded programs are notoriously prone to race conditions. Prior work on dynamic race detectors includes fast but imprecise race detectors that report false alarms, as well as slow but precise race detectors that never report false alarms. The latter typically use expensive vector clock operations that require time linear in the number of program threads.\par This paper exploits the insight that the full generality of vector clocks is unnecessary in most cases. That is, we can replace heavyweight vector clocks with an adaptive lightweight representation that, for almost all operations of the target program, requires only constant space and supports constant-time operations. This representation change significantly improves time and space performance, with no loss in precision.\par Experimental results on Java benchmarks including the Eclipse development environment show that our FastTrack race detector is an order of magnitude faster than a traditional vector-clock race detector, and roughly twice as fast as the high-performance DJIT+ algorithm. FastTrack is even comparable in speed to Eraser on our Java benchmarks, while never reporting false alarms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "concurrency; dynamic analysis; race conditions", } @Article{Gal-Ezer:2009:PSC, author = "Judith Gal-Ezer and Tamar Vilner and Ela Zur", title = "Has the paradigm shift in {CS1} a harmful effect on data structures courses: a case study", journal = j-SIGCSE, volume = "41", number = "1", pages = "126--130", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1508909", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "The ongoing debate among Computer Science educators about the advantages and disadvantages of the shift from the procedural to the Object-Oriented paradigm usually relates to the introductory course. Indeed, we were also concerned when in our institute we decided to implement this shift in our introductory course and started to teach Java, instead of a procedural paradigm. In our previous study we saw that the effect of the shift did not lower the achievements of students taking the CS1 course. Furthermore, we wanted to be equally sure that this was the case when students take Data Structures courses. This is the focus of the study presented in this paper. The results show that there is no significant difference in the achievements of students who came from different paradigm backgrounds. This encouraging result probably relates to the fact that our CS1 course focuses on the fundamentals of introductory Computer Science and does not only emphasize the language aspects.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gal-Ezer:2009:PYP, author = "Judith Gal-Ezer and Tamar Vilner and Ela Zur", title = "The professor on your {PC}: a virtual {CS1} course", journal = j-SIGCSE, volume = "41", number = "3", pages = "191--195", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562938", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "The Open University of Israel, a distance education institution with open admissions, offers a study system that was primarily based on written material. When we designed the new CS1 course in 2005, shifting from C++ to Java, we also switched from a course based on written material, to one based on videotaped lectures, which the students watch on PCs. Shifting to Java is an enormous challenge, however, we were also concerned about the new study method. Therefore, we conducted a study to determine how the students respond to the new and different environment, in terms of both learning and technical operation. The findings show that this method of study is at least as efficient as the previous one. The students' attitude to the new study method was positive and supportive of the new approach.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gal:2009:TBJ, author = "Andreas Gal and Brendan Eich and Mike Shaver and David Anderson and David Mandelin and Mohammad R. Haghighat and Blake Kaplan and Graydon Hoare and Boris Zbarsky and Jason Orendorff and Jesse Ruderman and Edwin W. Smith and Rick Reitmaier and Michael Bebenita and Mason Chang and Michael Franz", title = "Trace-based just-in-time type specialization for dynamic languages", journal = j-SIGPLAN, volume = "44", number = "6", pages = "465--478", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542528", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Dynamic languages such as JavaScript are more difficult to compile than statically typed ones. Since no concrete type information is available, traditional compilers need to emit generic code that can handle all possible type combinations at runtime. We present an alternative compilation technique for dynamically-typed languages that identifies frequently executed loop traces at run-time and then generates machine code on the fly that is specialized for the actual dynamic types occurring on each path through the loop. Our method provides cheap inter-procedural type specialization, and an elegant and efficient way of incrementally compiling lazily discovered alternative paths through nested loops. We have implemented a dynamic compiler for JavaScript based on our technique and we have measured speedups of 10x and more for certain benchmark programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dynamically typed languages; trace-based compilation", } @Book{Gardner:2009:DGP, author = "James Gardner", title = "The definitive guide to {Pylons}: [{Pylons} is a lightweight web framework emphasizing flexibility and rapid development using standard tools from the {Python} community ; includes {SQLAlchemy}, {JavaScript}, and {WSG}!]", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xxv + 536", year = "2009", ISBN = "1-59059-934-9 (paperback)", ISBN-13 = "978-1-59059-934-1 (paperback)", LCCN = "????", bibdate = "Thu Apr 16 12:30:45 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.gbv.de:20011/gvk", price = "US\$46,99", series = "The expert's voice in web development; Books for professionals by professionals", acknowledgement = ack-nhfb, } @Article{Gibson:2009:SRP, author = "J. Paul Gibson", title = "Software reuse and plagiarism: a code of practice", journal = j-SIGCSE, volume = "41", number = "3", pages = "55--59", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562900", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "In general, university guidelines or policies on plagiarism are not sufficiently detailed to cope with the technical complexity of software. Software plagiarism can have a significant impact on a student's degree result, particularly in courses were there is a significant emphasis on large-scale projects. We argue that a policy for software reuse is the most explicit, and fair, way of overcoming this problem. In our policy, we specify the notion of software to cover all the documents that are generally built during the engineering of a software system --- analysis, requirements, validation, design, verification, implementation and tests. Examples are used to show acceptable and unacceptable forms of reuse, mostly at the design, testing and implementation stages. These examples are represented in Java, although they should be easily understood by anyone with software engineering experience. We conclude with a simple code of practice for reuse of software based on a file-level policy, combined with emphasis on re-using only what is rigorously verified.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Gregersen:2009:DUJ, author = "Allan Raundahl Gregersen and Bo N{\o}rregaard J{\o}rgensen", title = "Dynamic update of {Java} applications --- balancing change flexibility vs programming transparency", journal = j-J-SOFTW-MAINT-EVOL, volume = "21", number = "2", pages = "81--112", month = mar, year = "2009", CODEN = "JSMECT", DOI = "https://doi.org/10.1002/smr.406", ISSN = "1532-060X (print), 1532-0618 (electronic)", ISSN-L = "1532-060X", bibdate = "Wed Jan 31 10:00:25 MST 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/jsoftwmaintevol.bib", acknowledgement = ack-nhfb, fjournal = "Journal of Software Maintenance and Evolution: Research and Practice", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481", } @Article{Groth:2009:MPD, author = "Paul Groth and Simon Miles and Luc Moreau", title = "A model of process documentation to determine provenance in mash-ups", journal = j-TOIT, volume = "9", number = "1", pages = "3:1--3:??", month = feb, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1145/1462159.1462162", ISSN = "1533-5399 (print), 1557-6051 (electronic)", ISSN-L = "1533-5399", bibdate = "Thu Feb 19 14:20:34 MST 2009", bibsource = "http://www.acm.org/pubs/contents/journals/toit/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Through technologies such as RSS (Really Simple Syndication), Web Services, and AJAX (Asynchronous JavaScript and XML), the Internet has facilitated the emergence of applications that are composed from a variety of services and data sources. Through tools such as Yahoo Pipes, these ``mash-ups'' can be composed in a dynamic, just-in-time manner from components provided by multiple institutions (i.e., Google, Amazon, your neighbor). However, when using these applications, it is not apparent where data comes from or how it is processed. Thus, to inspire trust and confidence in mash-ups, it is critical to be able to analyze their processes after the fact. These {\em trailing analyses}, in particular the determination of the provenance of a result (i.e., the process that led to it), are enabled by {\em process documentation}, which is documentation of an application's past process created by the components of that application at execution time. In this article, we define a generic conceptual data model that supports the autonomous creation of attributable, factual process documentation for dynamic multi-institutional applications. The data model is instantiated using two Internet formats, OWL and XML, and is evaluated with respect to questions about the provenance of results generated by a complex bioinformatics mash-up.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM Transactions on Internet Technology (TOIT)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J780", keywords = "concept maps; data model; mash-ups; Process; process documentation; provenance", } @Book{Halloway:2009:PC, author = "Stuart Dabbs Halloway", title = "Programming {Clojure}", publisher = pub-PRAGMATIC-BOOKSHELF, address = pub-PRAGMATIC-BOOKSHELF:adr, pages = "xxi + 280", year = "2009", ISBN = "1-934356-33-6 (paperback)", ISBN-13 = "978-1-934356-33-3 (paperback)", LCCN = "QA76.62 .H35 2009", bibdate = "Fri Nov 23 10:33:38 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/common-lisp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = "The pragmatic programmer", abstract = "Provides information on the features and functions of Clojure and describes how to create powerful programs.", acknowledgement = ack-nhfb, subject = "Java virtual machine; Java (Computer program language); Functional programming (Computer science); Clojure (Computer program language); Java Virtual Machine", } @Article{Hanks:2009:SUP, author = "Brian Hanks and Matt Brandt", title = "Successful and unsuccessful problem solving approaches of novice programmers", journal = j-SIGCSE, volume = "41", number = "1", pages = "24--28", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1508876", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "Learning to program continues to be challenging for many students. This paper reports on problem-solving approaches undertaken by pair programming students. We examine reasons why some approaches lead to success while others lead to failure. We also identify some aspects of the Java language that appear to lead to student misconceptions. Finally, we provide suggestions for educators interested in helping students learn successful approaches and avoid unsuccessful ones.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Harner:2009:JJR, author = "E. James Harner and Dajie Luo and Jun Tan", title = "{JavaStat}: a {Java\slash R}-based statistical computing environment", journal = j-COMP-STAT, volume = "24", number = "2", pages = "295--302", month = may, year = "2009", CODEN = "CSTAEB", DOI = "https://doi.org/10.1007/s00180-008-0131-y", ISSN = "0943-4062 (print), 1613-9658 (electronic)", ISSN-L = "0943-4062", bibdate = "Thu Jun 18 16:19:37 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/compstat.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/s-plus.bib", URL = "http://link.springer.com/article/10.1007/s00180-008-0131-y", acknowledgement = ack-nhfb, ajournal = "Comp. Stat.", fjournal = "Computational Statistics", journal-URL = "http://link.springer.com/journal/180", } @Article{Hoffman:2009:SAT, author = "Kevin J. Hoffman and Patrick Eugster and Suresh Jagannathan", title = "Semantics-aware trace analysis", journal = j-SIGPLAN, volume = "44", number = "6", pages = "453--464", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542527", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "As computer systems continue to become more powerful and complex, so do programs. High-level abstractions introduced to deal with complexity in large programs, while simplifying human reasoning, can often obfuscate salient program properties gleaned from automated source-level analysis through subtle (often non-local) interactions. Consequently, understanding the effects of program changes and whether these changes violate intended protocols become difficult to infer. Refactorings, and feature additions, modifications, or removals can introduce hard-to-catch bugs that often go undetected until many revisions later.\par To address these issues, this paper presents a novel dynamic program analysis that builds a {\em semantic view\/} of program executions. These views reflect program abstractions and aspects; however, views are not simply projections of execution traces, but are linked to each other to capture semantic interactions among abstractions at different levels of granularity in a scalable manner.\par We describe our approach in the context of Java and demonstrate its utility to improve {\em regression analysis}. We first formalize a subset of Java and a grammar for traces generated at program execution. We then introduce several types of views used to analyze regression bugs along with a novel, scalable technique for semantic differencing of traces from different versions of the same program. Benchmark results on large open-source Java programs demonstrate that semantic-aware trace differencing can identify precise and useful details about the underlying cause for a regression, even in programs that use reflection, multithreading, or dynamic code generation, features that typically confound other analysis techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "automated debugging; debugging aids; semantic tracing; testing tools; trace views; tracing", } @Article{Holmes:2009:IJS, author = "Susan Holmes and Adam Kapelner and Peter P. Lee", title = "An Interactive {Java} Statistical Image Segmentation System: {{\tt GemIdent}}", journal = j-J-STAT-SOFT, volume = "30", number = "10", pages = "??--??", month = jun, year = "2009", CODEN = "JSSOBK", ISSN = "1548-7660", bibdate = "Wed Aug 25 09:57:41 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.jstatsoft.org/v30/i10", acknowledgement = ack-nhfb, fjournal = "Journal of Statistical Software", journal-URL = "http://www.jstatsoft.org/", pubdates = "Submitted 2008-08-09; Accepted 2009-01-15", } @Article{Hong:2009:CAT, author = "Sunghyun Hong and Jin-Chul Kim and Soo-Mook Moon and Jin Woo Shin and Jaemok Lee and Hyeong-Seok Oh and Hyung-Kyu Choi", title = "Client ahead-of-time compiler for embedded {Java} platforms", journal = j-SPE, volume = "39", number = "3", pages = "259--278", day = "10", month = mar, year = "2009", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.897", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 10:02:38 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Aug 5 2008 9:10AM", } @Article{Hsiao:2009:EPP, author = "I-Han Hsiao and Sergey Sosnovsky and Peter Brusilovsky", title = "Extending parameterized problem-tracing questions for {Java} with personalized guidance", journal = j-SIGCSE, volume = "41", number = "3", pages = "392--392", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1563034", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "Problem-tracing questions are popular among teachers of various programming languages. In an assessment mode these questions allows to evaluate student knowledge of language semantics. In a self-assessment mode, they provide an excellent learning tool. A 2004 ITiCSE working group report [4] stressed the importance of this type of questions to build foundation of higher-level knowledge. Yet the use of problem-tracing questions is still limited due to a large authoring overhead. To resolve this bottleneck, we explored the idea of parameterized question generation [2]. We developed QuizPACK [1], a system which can generate parameterized problem-tracing questions for C programming language. We also developed QuizGuide [1], a personalized guidance system for QuizPACK, which models student knowledge and guides students individually to most appropriate questions to try. The results of our studies demonstrated that QuizPACK strongly benefits student knowledge and that QuizGuide personalized guidance technology increased student ability to answer questions correctly and encouraged them to use the system more extensively (which, in turn, positively impacted their knowledge) [1]. However, parameterized questions in area of C programming were not as diverse from the complexity point of view as parameterized questions explored in other areas such as physics [2]. As a result, it was left unclear whether personalized guidance technology can successfully guide students to a broader range of questions from relatively simple to very difficult. The work reported in this poster expands our work on parameterized questions to a more sophisticated domain of object-oriented Java programming, which allowed us to introduce questions of much broader. Capitalizing on our experience with QuizPACK, we developed QuizJET (Java Evaluation Toolkit), which supports authoring, delivery, and evaluation of parameterized questions for Java [3]. We also implemented JavaGuide system (Figure 1), which provides personalized guidance for QuizJET questions. We assessed the impact of adaptive navigation support to student work with questions of different complexity as well as the impact of this technology on weaker and stronger students. The results of two classroom studies indicate that personalized guidance encouraged students to use parameterized questions more extensively and also helped them to access right questions at the right time. Students were 2.5 times more likely to answer a quiz correctly with personalized guidance than without such it. In addition, we found that personalized guidance especially benefited weak students to achieve scores comparable with the scores of strong students on each complexity level of questions.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Inghelbrecht:2009:OOD, author = "Yanic Inghelbrecht", title = "Object-oriented design with trace modeler and {Trace4J}", journal = j-SIGCSE, volume = "41", number = "3", pages = "375--375", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1563017", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "We present two tools that make students more productive during various object-oriented design activities. The first one, Trace Modeler, is a smart UML sequence diagram editor that helps students understand and apply responsibility-driven design. The second tool, Trace4J, is used to record and process the execution of a java program. Both tools are complementary. Students use Trace4J to produce focused sequence diagrams for (part of) a program's execution. Trace Modeler's support for huge diagrams lets them navigate and understand the large results in the initial stages of their processing experiments.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Inoue:2009:HJV, author = "Hiroshi Inoue and Toshio Nakatani", title = "How a {Java VM} can get more from a hardware performance monitor", journal = j-SIGPLAN, volume = "44", number = "10", pages = "137--154", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640100", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper describes our sampling-based profiler that exploits a processor's HPM (Hardware Performance Monitor) to collect information on running Java applications for use by the Java VM. Our profiler provides two novel features: Java-level event profiling and lightweight context-sensitive event profiling. For Java events, we propose new techniques to leverage the sampling facility of the HPM to generate object creation profiles and lock activity profiles. The HPM sampling is the key to achieve a smaller overhead compared to profilers that do not rely on hardware helps. To sample the object creations with the HPM, which can only sample hardware events such as executed instructions or cache misses, we correlate the object creations with the store instructions for Java object headers. For the lock activity profile, we introduce an instrumentation-based technique, called ProbeNOP, which uses a special NOP instruction whose executions are counted by the HPM. For the context-sensitive event profiling, we propose a new technique called {\em CallerChaining}, which detects the calling context of HPM events based on the call stack depth (the value of the stack frame pointer). We show that it can detect the calling contexts in many programs including a large commercial application. Our proposed techniques enable both programmers and runtime systems to get more valuable information from the HPM to understand and optimize the programs without adding significant runtime overhead.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "calling context; hardware performance monitor; profiling", } @Article{Joao:2009:FRC, author = "Jos{\'e} A. Joao and Onur Mutlu and Yale N. Patt", title = "Flexible reference-counting-based hardware acceleration for garbage collection", journal = j-COMP-ARCH-NEWS, volume = "37", number = "3", pages = "418--428", month = jun, year = "2009", CODEN = "CANED2", DOI = "https://doi.org/10.1145/1555754.1555806", ISSN = "0163-5964 (print), 1943-5851 (electronic)", ISSN-L = "0163-5964", bibdate = "Tue Aug 11 18:12:55 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Languages featuring automatic memory management (garbage collection) are increasingly used to write all kinds of applications because they provide clear software engineering and security advantages. Unfortunately, garbage collection imposes a toll on performance and introduces pause times, making such languages less attractive for high-performance or real-time applications. Much progress has been made over the last five decades to reduce the overhead of garbage collection, but it remains significant.\par We propose a cooperative hardware-software technique to reduce the performance overhead of garbage collection. The key idea is to reduce the frequency of garbage collection by efficiently detecting and reusing dead memory space in hardware via hardware-implemented reference counting. Thus, even though software garbage collections are still eventually needed, they become much less frequent and have less impact on overall performance. Our technique is compatible with a variety of software garbage collection algorithms, does not break compatibility with existing software, and reduces garbage collection time by 31\% on average on the Java DaCapo benchmarks running on the production build of the Jikes RVM, which uses a state-of-the-art generational garbage collector.", acknowledgement = ack-nhfb, fjournal = "ACM SIGARCH Computer Architecture News", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J89", keywords = "garbage collection; reference counting", } @Article{Joshi:2009:RDP, author = "Pallavi Joshi and Chang-Seo Park and Koushik Sen and Mayur Naik", title = "A randomized dynamic program analysis technique for detecting real deadlocks", journal = j-SIGPLAN, volume = "44", number = "6", pages = "110--120", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543135.1542489", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present a novel dynamic analysis technique that finds real deadlocks in multi-threaded programs. Our technique runs in two stages. In the first stage, we use an imprecise dynamic analysis technique to find potential deadlocks in a multi-threaded program by observing an execution of the program. In the second stage, we control a random thread scheduler to create the potential deadlocks with high probability. Unlike other dynamic analysis techniques, our approach has the advantage that it does not give any false warnings. We have implemented the technique in a prototype tool for Java, and have experimented on a number of large multi-threaded Java programs. We report a number of previously known and unknown real deadlocks that were found in these benchmarks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "active testing; concurrency; deadlock detection; dynamic program analysis", } @Article{Kagawa:2009:WWB, author = "Koji Kagawa", title = "{WAPPEN}: a {Web}-based application framework for programming and its {\tt bison\slash flex} plug-in", journal = j-SIGCSE, volume = "41", number = "3", pages = "383--383", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1563025", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib; https://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", note = "Proceedings of ITiCSE '09.", abstract = "This poster presents an Eclipse RCP-based application framework named Wappen for learning programming, and especially, its plugin for Bison and Flex. In courses such as compiler construction and programming languages, learners have to use multiple languages. Time and effort spent by learners on installation and configuration of programming environments are not negligible. Wappen provides an infrastructure on which teachers can arrange simple Web-based programming environments for various programming languages by writing plug-ins. Wappen for Oolong has been successfully used in our compiler construction lab, where Oolong is an assembly language for the Java Virtual Machine. This poster introduces Wappen for Bison/Flex that tries to help learners avoid pitfalls of Bison/Flex in some respects. It is planned to be put into practical use in our compiler construction lab this year.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Kalibera:2009:CBV, author = "Tomas Kalibera and Pavel Parizek and Ghaith Haddad and Gary T. Leavens and Jan Vitek", title = "Challenge benchmarks for verification of real-time programs: (abstract only)", journal = j-SIGPLAN, volume = "44", number = "11", pages = "7--8", month = nov, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1816027.1816037", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:03:29 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Real-time systems, and in particular safety-critical systems, are a rich source of challenges for the program verification community as software errors can have catastrophic consequences. Unfortunately, it is nearly impossible to find representative safety-critical programs in the public domain. This has been significant impediment to research in the field, as it is very difficult to validate new ideas or techniques experimentally. This paper presents open challenges for verification of real-time systems in the context of the Real-time Specification for Java. But, our main contribution is a family of programs, called CDx, which we present as an open source benchmark for the verification community.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", } @Article{Kats:2009:PRF, author = "Lennart C. L. Kats and Maartje de Jonge and Emma Nilsson-Nyman and Eelco Visser", title = "Providing rapid feedback in generated modular language environments: adding error recovery to scannerless generalized-{LR} parsing", journal = j-SIGPLAN, volume = "44", number = "10", pages = "445--464", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640122", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Integrated development environments (IDEs) increase programmer productivity, providing rapid, interactive feedback based on the syntax and semantics of a language. A heavy burden lies on developers of new languages to provide adequate IDE support. Code generation techniques provide a viable, efficient approach to semi-automatically produce IDE plugins. Key components for the realization of plugins are the language's grammar and parser. For embedded languages and language extensions, constituent IDE plugin modules and their grammars can be combined. Unlike conventional parsing algorithms, scannerless generalized-LR parsing supports the full set of context-free grammars, which is closed under composition, and hence can parse language embeddings and extensions composed from separate grammar modules. To apply this algorithm in an interactive environment, this paper introduces a novel error recovery mechanism, which allows it to be used with files with syntax errors -- common in interactive editing. Error recovery is vital for providing rapid feedback in case of syntax errors, as most IDE services depend on the parser from syntax highlighting to semantic analysis and cross-referencing. We base our approach on the principles of island grammars, and derive permissive grammars with error recovery productions from normal SDF grammars. To cope with the added complexity of these grammars, we adapt the parser to support backtracking. We evaluate the recovery quality and performance of our approach using a set of composed languages, based on Java and Stratego.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "composable languages; embedded languages; error recovery; language extensions; permissive grammars; SDF; SGLR", } @Article{Kaur:2009:VMC, author = "Parminder Kaur and Hardeep Singh", title = "Version management and composition of software components in different phases of software development life cycle", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--9", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543416", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The key factor of component-based software development is the composition of pre-fabricated components. Although research efforts have focused on this issue, yet the optimal performance of component-based systems has not been achieved. If the concept of version management is introduced along with composition technology then it will help in locating the component mismatch in the earlier stages of software development life cycle. This paper analyses the significance of version management and composition of software components in different phases like analysis phase, design phase and deployment phase of software development life cycle. A comparative analysis of different available component models like COM, {.NET}, Enterprise JavaBeans (EJB), CORBA, SOFA, UML 2.0 and Web Services with respect to these two issues is also discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khoo:2009:DJA, author = "Yit Phang Khoo and Michael Hicks and Jeffrey S. Foster and Vibha Sazawal", title = "Directing {JavaScript} with arrows", journal = j-SIGPLAN, volume = "44", number = "12", pages = "49--58", month = dec, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1837513.1640143", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Aug 31 22:04:07 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "JavaScript programmers make extensive use of event-driven programming to help build responsive web applications. However, standard approaches to sequencing events are messy, and often lead to code that is difficult to understand and maintain. We have found that {\em arrows}, a generalization of {\em monads}, are an elegant solution to this problem. Arrows allow us to easily write asynchronous programs in small, modular units of code, and flexibly compose them in many different ways, while nicely abstracting the details of asynchronous program composition. In this paper, we present Arrowlets, a new JavaScript library that offers arrows to the everyday JavaScript programmer. We show how to use Arrowlets to construct a variety of state machines, including state machines that branch and loop. We also demonstrate how Arrowlets separate computation from composition with examples such as a drag-and-drop handler and a bubblesort animation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "arrowlets; arrows; events; JavaScript; Web programming", } @Article{Kumar:2009:GCM, author = "Avadhesh Kumar and Rajesh Kumar and P. S. Grover", title = "Generalized coupling measure for aspect-oriented systems", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--6", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Coupling is an internal software attribute that can be used to indicate the degree of interdependence among the components of a software system. Coupling in software has been linked to predict external software quality attributes such as fault-proneness, ripple effects, changeability, impact analysis etc. Despite an interesting body of work for measuring coupling in Aspect-Oriented (AO) Systems, there is no complete generic coupling framework for AO systems. In this paper, we have proposed a generic coupling measurement framework that takes into account three, the most well known families of Aspect-Oriented Programming (AOP) languages, AspectJ, CaesarJ and Hyper/J. This paper contributes to an enhanced understanding of coupling in AO systems, which in turn helps to (i) define new coupling metrics which permit the analysis and comparison of Java, AspectJ, CaesarJ and Hyper/J implementations, and (ii) integrate different existing measures and examine same concepts from different perspectives.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Labouseur:2009:BBO, author = "Alan G. Labouseur", title = "A browser-based operating systems project: {JavaScript} adventures in dinosaur slaying", journal = j-SIGCSE, volume = "41", number = "4", pages = "71--75", month = dec, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1709424.1709449", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:27 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "This paper presents one educator's experience with a browser-based project for an upper-level/graduate Operating Systems course. The author explains the project goals, why the browser in general and JavaScript in particular are so well suited for this task, challenges and their solutions, the incremental assignments that ultimately result in a fairly complex OS simulation by the end of the semester, the response to the project, and some ideas about where to go next.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Leather:2009:RPE, author = "Hugh Leather and Michael O'Boyle and Bruce Worton", title = "Raced profiles: efficient selection of competing compiler optimizations", journal = j-SIGPLAN, volume = "44", number = "7", pages = "50--59", month = jul, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542452.1542460", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Jun 26 12:07:39 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many problems in embedded compilation require one set of optimizations to be selected over another based on run time performance. Self-tuned libraries, iterative compilation and machine learning techniques all compare multiple compiled program versions. In each, program versions are timed to determine which has the best performance.\par The program needs to be run multiple times for each version because there is noise inherent in most performance measurements. The number of runs must be enough to compare different versions, despite the noise, but executing more than this will waste time and energy. The compiler writer must either risk taking too few runs, potentially getting incorrect results, or taking too many runs increasing the time for their experiments or reducing the number of program versions evaluated. Prior works choose constant size sampling plans where each compiled version is executed a fixed number of times without regard to the level of noise.\par In this paper we develop a sequential sampling plan which can automatically adapt to the experiment so that the compiler writer can have both confidence in the results and also be sure that no more runs were taken than were needed. We show that our system is able to correctly determine the best optimization settings with between 76\% and 87\% fewer runs than needed by a brute force, constant sampling size approach. We also compare our approach to JavaSTATS(10); we needed 77\% to 89\% fewer runs than it needed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "iterative compilation; statistics", } @Article{Lee:2009:DAY, author = "Byeongcheol Lee and Martin Hirzel and Robert Grimm and Kathryn S. McKinley", title = "Debug all your code: portable mixed-environment debugging", journal = j-SIGPLAN, volume = "44", number = "10", pages = "207--226", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640105", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Programmers build large-scale systems with multiple languages to reuse legacy code and leverage languages best suited to their problems. For instance, the same program may use Java for ease-of-programming and C to interface with the operating system. These programs pose significant debugging challenges, because programmers need to understand and control code across languages, which may execute in different environments. Unfortunately, traditional multilingual debuggers require a {\em single\/} execution environment.\par This paper presents a novel {\em composition\/} approach to building portable mixed-environment debuggers, in which an intermediate agent interposes on language transitions, controlling and reusing single-environment debuggers. We implement debugger composition in {\em Blink}, a debugger for Java, C, and the Jeannie programming language. We show that Blink is (1) relatively simple: it requires modest amounts of new code; (2) portable: it supports multiple Java Virtual Machines, C compilers, operating systems, and component debuggers; and (3) powerful: composition eases debugging, while supporting new mixed-language expression evaluation and Java Native Interface (JNI) bug diagnostics. In real-world case studies, we show that language-interface errors require single-environment debuggers to restart execution multiple times, whereas Blink directly diagnoses them with one execution. We also describe extensions for other mixed-environments to show debugger composition will generalize.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "composition; foreign function interface; JNI", } @Article{Lemos:2009:ITO, author = "Ot{\'a}vio Augusto Lazzarini Lemos and Ivan Gustavo Franchin and Paulo Cesar Masiero", title = "Integration testing of {Object-Oriented} and {Aspect-Oriented} programs: a structural pairwise approach for {Java}", journal = j-SCI-COMPUT-PROGRAM, volume = "74", number = "10", pages = "861--878", day = "15", month = aug, year = "2009", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:29 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Lublinerman:2009:PPO, author = "Roberto Lublinerman and Swarat Chaudhuri and Pavol Cerny", title = "Parallel programming with object assemblies", journal = j-SIGPLAN, volume = "44", number = "10", pages = "61--80", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640095", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present {\em Chorus}, a high-level parallel programming model suitable for irregular, heap-manipulating applications like mesh refinement and epidemic simulations, and {\em JChorus}, an implementation of the model on top of Java. One goal of Chorus is to express the {\em dynamic\/} and instance-dependent patterns of memory access that are common in typical irregular applications. Its other focus is {\em locality of effects\/}: the property that in many of the same applications, typical imperative commands only affect small, local regions in the shared heap.\par Chorus addresses dynamism and locality through the unifying abstraction of an {\em object assembly\/}: a local region in a shared data structure equipped with a short-lived, speculative thread of control. The thread of control in an assembly can only access objects within the assembly. While objects can migrate from assembly to assembly, such migration is {\em local\/} --i.e., objects only move from one assembly to a neighboring one--and does not lead to aliasing. Programming primitives include a {\em merge\/} operation, by which an assembly merges with an adjacent assembly, and a {\em split\/} operation, which splits an assembly into smaller ones. Our abstractions are race and deadlock-free, and inherently data-centric.\par We demonstrate that Chorus and JChorus allow natural programming of several important applications exhibiting irregular data-parallelism. We also present an implementation of JChorus based on a many-to-one mapping of assemblies to lower-level threads, and report on preliminary performance numbers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "data parallelism; irregular parallelism; ownership; parallel programming; programming abstractions", } @Article{Luxton-Reilly:2009:SFI, author = "Andrew Luxton-Reilly and Paul Denny", title = "A simple framework for interactive games in {CS1}", journal = j-SIGCSE, volume = "41", number = "1", pages = "216--220", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1508947", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "Computer games are widely used in programming assignments to motivate students. Traditionally, these have been text-based games such as hangman, but as Java has become widespread, the use of graphics and graphical games has increased correspondingly. We report on a framework used as scaffolding to help students understand how to design and implement a variety of interactive games. We share our experiences using this framework for assignments over a number of years.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Makela:2009:CBC, author = "Sami M{\"a}kel{\"a} and Ville Lepp{\"a}nen", title = "Client-based cohesion metrics for {Java} programs", journal = j-SCI-COMPUT-PROGRAM, volume = "74", number = "5--6", pages = "355--378", day = "1", month = mar, year = "2009", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:26 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Malik:2009:SCU, author = "Avinash Malik and Zoran Salcic and Partha S. Roop", title = "{SystemJ} compilation using the {Tandem Virtual Machine} approach", journal = j-TODAES, volume = "14", number = "3", pages = "34:1--34:??", month = may, year = "2009", CODEN = "ATASFO", DOI = "https://doi.org/10.1145/1529255.1529256", ISSN = "1084-4309 (print), 1557-7309 (electronic)", ISSN-L = "1084-4309", bibdate = "Wed Jun 3 16:12:53 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/todaes/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "SystemJ is a language based on the Globally Asynchronous Locally Synchronous (GALS) paradigm. A SystemJ program is a collection of GALS nodes, also called clock domains, and each clock domain is a synchronous program that extends the Java language. Initial compilation of SystemJ has been to standard Java executing on a Java Virtual Machine (JVM), which is both inefficient and bulky for small embedded systems. This article proposes a new approach for compiling and executing SystemJ using a new type of virtual machine, called a Tandem Virtual Machine (TVM). The TVM approach provides an efficient implementation of SystemJ on both standard processors and resource-constrained embedded processors. The new approach is based on separating the control-driven and data-driven operations for execution on two virtual machines. While the JVM executes the data-driven operations, a Control Virtual Machine (CVM) is introduced to execute the control-driven parts of a SystemJ program. The TVM approach is capable of handling all data-driven and control-driven operations required by the GALS model. The benchmark results show that the TVM has code size improvements of over 60\% on average and also a substantial improvement in execution speed over standard Java-based compilation.", acknowledgement = ack-nhfb, articleno = "34", fjournal = "ACM Transactions on Design Automation of Electronic Systems (TODAES)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J776", keywords = "compilation; esterel; System-level design; SystemJ; virtual machines", } @Article{Marchetto:2009:OST, author = "Alessandro Marchetto and Filippo Ricca", title = "From objects to services: toward a stepwise migration approach for {Java} applications", journal = j-INT-J-SOFTW-TOOLS-TECHNOL-TRANSFER, volume = "11", number = "6", pages = "427--440", month = dec, year = "2009", CODEN = "????", ISSN = "1433-2779 (print), 1433-2787 (electronic)", ISSN-L = "1433-2779", bibdate = "Sat Sep 11 07:13:37 MDT 2010", bibsource = "http://springerlink.metapress.com/openurl.asp?genre=issue&issn=1433-2779&volume=11&issue=6; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.springerlink.com/openurl.asp?genre=article&issn=1433-2779&volume=11&issue=6&spage=427", acknowledgement = ack-nhfb, fjournal = "International Journal on Software Tools for Technology Transfer: STTT", } @Article{Matthews:2009:OSM, author = "Jacob Matthews and Robert Bruce Findler", title = "Operational semantics for multi-language programs", journal = j-TOPLAS, volume = "31", number = "3", pages = "12:1--12:44", month = apr, year = "2009", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1498926.1498930", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Apr 16 14:08:54 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Interoperability is big business, a fact to which .NET, the JVM, and COM can attest. Language designers are well aware of this, and they are designing programming languages that reflect it --- for instance, SML.NET, F\#, Mondrian, and Scala all treat interoperability as a central design feature. Still, current multi-language research tends not to focus on the semantics of these features, but only on how to implement them efficiently. In this article, we attempt to rectify that by giving a technique for specifying the operational semantics of a multi-language system as a composition of the models of its constituent languages. Our technique abstracts away the low-level details of interoperability like garbage collection and representation coherence, and lets us focus on semantic properties like type-safety, equivalence, and termination behavior. In doing so it allows us to adapt standard theoretical techniques such as subject-reduction, logical relations, and operational equivalence for use on multi-language systems. Generally speaking, our proofs of properties in a multi-language context are mutually referential versions of their single language counterparts.\par We demonstrate our technique with a series of strategies for embedding a Scheme-like language into an ML-like language. We start by connecting very simple languages with a very simple strategy, and work our way up to languages that interact in sophisticated ways and have sophisticated features such as polymorphism and effects. Along the way, we prove relevant results such as type-soundness and termination for each system we present using adaptations of standard techniques.\par Beyond giving simple expressive models, our studies have uncovered several interesting facts about interoperability. For example, higher-order function contracts naturally emerge as the glue to ensure that interoperating languages respect each other's type systems. Our models also predict that the embedding strategy where foreign values are opaque is as expressive as the embedding strategy where foreign values are translated to corresponding values in the other language, and we were able to experimentally verify this behavior using PLT Scheme's foreign function interface.", acknowledgement = ack-nhfb, articleno = "12", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "interoperability; Operational semantics", } @Article{McCown:2009:WWS, author = "Frank McCown and Catherine C. Marshall and Michael L. Nelson", title = "Why {Web} sites are lost (and how they're sometimes found)", journal = j-CACM, volume = "52", number = "11", pages = "141--145", month = nov, year = "2009", CODEN = "CACMA2", DOI = "https://doi.org/10.1145/1592761.1592794", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Fri Oct 23 15:03:46 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Introduction\par The web is in constant flux---new pages and Web sites appear daily, and old pages and sites disappear almost as quickly. One study estimates that about two percent of the Web disappears from its current location every week.$^2$ Although Web users have become accustomed to seeing the infamous '404 Not Found' page, they are more taken aback when they own, are responsible for, or have come to rely on the missing material.\par Web archivists like those at the Internet Archive have responded to the Web's transience by archiving as much of it as possible, hoping to preserve snapshots of the Web for future generations.$^3$ Search engines have also responded by offering pages that have been cached as a result of the indexing process. These straightforward archiving and caching efforts have been used by the public in unintended ways: individuals and organizations have used them to restore their own lost Web sites.$^5$ \par To automate recovering lost Web sites, we created a Web-repository crawler named Warrick that restores lost resources from the holdings of four Web repositories: Internet Archive, Google, Live Search (now Bing), and Yahoo;$^6$ we refer to these Web repositories collectively as the {\em Web Infrastructure\/} (WI). We call this after-loss recovery {\em Lazy Preservation\/} (see the sidebar for more information). Warrick can only recover what is accessible to the WI, namely the crawlable Web. There are numerous resources that cannot be found in the WI: password protected content, pages without incoming links or protected by the robots exclusion protocol, and content hidden behind Flash or JavaScript interfaces. Most importantly, WI crawlers do not have access to the server-side components (for example, scripts, configuration files, databases, among others) of a Web site.\par Nevertheless, upon Warrick's public release in 2005, we received many inquiries about its usage and collected a handful of anecdotes about the Web sites individuals and organizations had lost and wanted to recover. Were these Web sites representative? What types of Web resources were people losing? Given the inherent limitations of the WI, were Warrick users recovering enough material to reconstruct the site? Were these losses changing their behavior, or was the availability of cached material reinforcing a 'lazy' approach to preservation?\par We constructed an online survey to explore these questions and conducted a set of in-depth interviews with survey respondents to clarify the results. Potential participants were solicited by us or the Internet Archive, or they found a link to the survey from the Warrick Web site. A total of 52 participants completed the survey regarding 55 lost Web sites, and seven of the participants allowed us to follow-up with telephone or instant messaging interviews. Participants were divided into two groups:\par 1. {\em Personal loss:\/} Those who had lost (and tried to recover) a Web site that they had personally created, maintained or owned (34 participants who lost 37 Web sites).\par 2. {\em Third party:\/} Those who had recovered someone else's lost Web site (18 participants who recovered 18 Web sites).", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Meyerovich:2009:FPL, author = "Leo A. Meyerovich and Arjun Guha and Jacob Baskin and Gregory H. Cooper and Michael Greenberg and Aleks Bromfield and Shriram Krishnamurthi", title = "{Flapjax}: a programming language for {Ajax} applications", journal = j-SIGPLAN, volume = "44", number = "10", pages = "1--20", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640091", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper presents Flapjax, a language designed for contemporary Web applications. These applications communicate with servers and have rich, interactive interfaces. Flapjax provides two key features that simplify writing these applications. First, it provides {\em event streams}, a uniform abstraction for communication within a program as well as with external Web services. Second, the language itself is reactive: it automatically tracks data dependencies and propagates updates along those dataflows. This allows developers to write reactive interfaces in a declarative and compositional style.\par Flapjax is built on top of JavaScript. It runs on unmodified browsers and readily interoperates with existing JavaScript code. It is usable as either a programming language (that is compiled to JavaScript) or as a JavaScript library, and is designed for both uses. This paper presents the language, its design decisions, and illustrative examples drawn from several working Flapjax applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "functional reactive programming; JavaScript; web programming", } @Article{Millstein:2009:EMP, author = "Todd Millstein and Christopher Frost and Jason Ryder and Alessandro Warth", title = "Expressive and modular predicate dispatch for {Java}", journal = j-TOPLAS, volume = "31", number = "2", pages = "7:1--7:54", month = feb, year = "2009", CODEN = "ATPSDT", DOI = "https://doi.org/10.1145/1462166.1462168", ISSN = "0164-0925 (print), 1558-4593 (electronic)", ISSN-L = "0164-0925", bibdate = "Thu Feb 19 14:20:38 MST 2009", bibsource = "http://www.acm.org/pubs/contents/journals/toplas/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "{\em Predicate dispatch\/} is an object-oriented (OO) language mechanism for determining the method implementation to be invoked upon a message send. With predicate dispatch, each method implementation includes a predicate guard specifying the conditions under which the method should be invoked, and logical implication of predicates determines the method overriding relation. Predicate dispatch naturally unifies and generalizes several common forms of dynamic dispatch, including traditional OO dispatch, multimethod dispatch, and functional-style pattern matching. Unfortunately, prior languages supporting predicate dispatch have had several deficiencies that limit the practical utility of this language feature.\par We describe JPred, a backward-compatible extension to Java supporting predicate dispatch. While prior languages with predicate dispatch have been extensions to toy or nonmainstream languages, we show how predicate dispatch can be naturally added to a traditional OO language. While prior languages with predicate dispatch have required the whole program to be available for typechecking and compilation, JPred retains Java's modular typechecking and compilation strategies. While prior languages with predicate dispatch have included special-purpose algorithms for reasoning about predicates, JPred employs general-purpose, off-the-shelf decision procedures. As a result, JPred's type system is more flexible, allowing several useful programming idioms that are spuriously rejected by those other languages. After describing the JPred language informally, we present an extension to Featherweight Java that formalizes the language and its modular type system, which we have proven sound. Finally, we discuss two case studies that illustrate the practical utility of JPred, including its use in the detection of several errors.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM Transactions on Programming Languages and Systems", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J783", keywords = "dynamic dispatch; modular typechecking; Predicate dispatch", } @Article{Milner:2009:BMJ, author = "Walter W. Milner", title = "A broken metaphor in {Java}", journal = j-SIGCSE, volume = "41", number = "4", pages = "76--77", month = dec, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1709424.1709450", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:27 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", abstract = "In this paper, the matrix of metaphors in which Java is located is outlined, and the way that students understand event-handling through the EventListener metaphor is described, supported by interview extracts. This clashes both with the typical syntax of natural language imperatives, and with the actual mechanism of Java event handling. It is therefore a source of some confusion in students.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Miura:2009:AGI, author = "Motoki Miura and Taro Sugihara and Susumu Kunifuji", title = "{Anchor Garden}: an interactive workbench for basic data concept learning in object oriented programming languages", journal = j-SIGCSE, volume = "41", number = "3", pages = "141--145", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562925", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "http://portal.acm.org/; https://www.math.utah.edu/pub/tex/bib/csharp.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "We propose Anchor Garden (AG), an interactive workbench software for learning fundamentals of data structures with the concepts of type, variable, object, and their relations in a strongly typed object-oriented programming language (OOPL) such as Java or C\#. Learners can approach the basic data-handling concepts of OOPLs by direct manipulation of graphical models in AG. In addition, the learner can correlate his/her manipulation and notation of source code because AG automatically generates appropriate source-code corresponding to this manipulation. Experimental results showed a tendency of a learning effect with AG and high correlations between concept understanding and programming ability. Thus, AG has the potential to enhance the programming ability of novice programmers.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Muir:2009:IGE, author = "James A. Muir and Paul C. {Van Oorschot}", title = "{Internet} geolocation: {Evasion} and counterevasion", journal = j-COMP-SURV, volume = "42", number = "1", pages = "4:1--4:23", month = dec, year = "2009", CODEN = "CMSVAN", DOI = "https://doi.org/10.1145/1592451.1592455", ISSN = "0360-0300 (print), 1557-7341 (electronic)", ISSN-L = "0360-0300", bibdate = "Mon Mar 15 11:55:39 MDT 2010", bibsource = "http://www.acm.org/pubs/contents/journals/surveys/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Internet geolocation technology aims to determine the physical (geographic) location of Internet users and devices. It is currently proposed or in use for a wide variety of purposes, including targeted marketing, restricting digital content sales to authorized jurisdictions, and security applications such as reducing credit card fraud. This raises questions about the veracity of claims of accurate and reliable geolocation. We provide a survey of Internet geolocation technologies with an emphasis on adversarial contexts; that is, we consider how this technology performs against a knowledgeable adversary whose goal is to evade geolocation. We do so by examining first the limitations of existing techniques, and then, from this base, determining how best to evade existing geolocation techniques. We also consider two further geolocation techniques which may be of use even against adversarial targets: (1) the extraction of client IP addresses using functionality introduced in the 1.5 Java API, and (2) the collection of round-trip times using HTTP refreshes. These techniques illustrate that the seemingly straightforward technique of evading geolocation by relaying traffic through a proxy server (or network of proxy servers) is not as straightforward as many end-users might expect. We give a demonstration of this for users of the popular Tor anonymizing network.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM Computing Surveys", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J204", keywords = "adversarial environment; anonymizing network; evasion; Internet geolocation; Tor", } @Article{Murtagh:2009:HAO, author = "Jeanne Murtagh and Drew Hamilton", title = "How {Ada} object orientation works", journal = j-SIGADA-LETTERS, volume = "29", number = "3", pages = "5--6", month = dec, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1647420.1647424", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:37 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Recommended Prerequisites: Familiarity with Object Oriented Programming principles in a language such as Ada, Java, or C++ is recommended. Previous experience with C or Ada 83 is strongly recommended. This tutorial will briefly describe the Object-Oriented (OO) features provided by Ada 95, and then discuss in detail how some of these features are implemented 'under the hood.' The bulk of the tutorial will show, via code examples and discussion, how dynamic dispatching is implemented in Ada 95, issues associated with the class tag, and the effort required to add a sibling class and a child class to an existing class hierarchy. We will briefly discuss several Ada 2005 features, and the value these features add over an Ada 95 implementation of a program. We will conclude with a brief discussion of the 'overloaded vocabulary' issues encountered by Java and C++ programmers as they transition to an Ada 95 or Ada 2005 project 'on the fly.'", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Ada; interfacing; languages; object-oriented; programming; real-time; software; systems", } @Article{Mytkowicz:2009:ICP, author = "Todd Mytkowicz and Devin Coughlin and Amer Diwan", title = "Inferred call path profiling", journal = j-SIGPLAN, volume = "44", number = "10", pages = "175--190", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640102", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Prior work has found call path profiles to be useful for optimizers and programmer-productivity tools. Unfortunately, previous approaches for collecting path profiles are expensive: they need to either execute additional instructions (to track calls and returns) or they need to walk the stack. The state-of-the-art techniques for call path profiling slow down the program by 7\% (for C programs) and 20\% (for Java programs). This paper describes an innovative technique that collects minimal information from the running program and later (offline) infers the full call paths from this information.\par The key insight behind our approach is that readily available information during program execution - the height of the call stack and the identity of the current executing function - are good indicators of calling context. We call this pair a {\em context identifier}. Because more than one call path may have the same context identifier, we show how to disambiguate context identifiers by changing the sizes of function activation records. This disambiguation has no overhead in terms of executed instructions.\par We evaluate our approach on the SPEC CPU 2006 C++ and C benchmarks. We show that collecting context identifiers slows down programs by 0.17\% (geometric mean). We can map these context identifiers to the correct unique call path 80\% of the time for C++ programs and 95\% of the time for C programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "call path; calling context; calling context tree; profiling; stack", } @Article{Ochem:2009:GAJa, author = "Quentin Ochem", title = "Gem \#57: {Ada} \slash {Java} cross dispatching", journal = j-SIGADA-LETTERS, volume = "29", number = "2", pages = "50--52", month = aug, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1620593.1620604", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:08 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In the preceding Ada/Java interfacing Gem, we saw how to create calls from Ada to Java using ada2java and callbacks. We're now going to go one step further, and discuss a cross-language dispatching mechanism that supports extension of an Ada tagged type in Java, allowing the possibility of making dispatching calls equally well from either side.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Ochem:2009:GAJb, author = "Quentin Ochem", title = "Gem \#58: {Ada} \slash {Java} exception handling", journal = j-SIGADA-LETTERS, volume = "29", number = "2", pages = "53--55", month = aug, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1620593.1620605", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:08 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Ada and Java are two languages that rely heavily on exceptions. A large part of the Ada data model is based on the fact that data is checked at run time, and will raise various kinds of exceptions such as Constraint\_Error when constraints are violated. Similarly, there are many cases where Java performs checks that can raise exceptions, among the most common being checks on casts and null dereferences. It is therefore extremely important to support exceptions that are properly propagated from one language to the other and even potentially caught/handled, without having to worry about the language of origin.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Ochem:2009:GCA, author = "Quentin Ochem", title = "Gem \#56: creating {Ada} to {Java} calls using {GNAT-AJIS}", journal = j-SIGADA-LETTERS, volume = "29", number = "2", pages = "46--49", month = aug, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1620593.1620603", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:08 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In a previous Gem we introduced ada2java, which maps an Ada specification to a Java specification, to support calls from Java to Ada. Even though ada2java doesn't support creating Ada bindings of Java specs, it's still possible to use it to support calls from Ada to Java. In this Gem we'll look at a first possibility of doing this, using callbacks (in Ada terms, access-to-subprogram calls).", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Ochem:2009:GIA, author = "Quentin Ochem", title = "Gem \#55: introduction to {Ada} \slash {Java} interfacing", journal = j-SIGADA-LETTERS, volume = "29", number = "2", pages = "43--45", month = aug, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1620593.1620602", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:08 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Interfacing Ada and Java is a very tricky problem. As opposed to C, C++, or Fortran, the two languages execute on two different environments, Java on the JVM and Ada directly on the underlying OS. For this reason, it is not possible to directly bind Java functions to natively compiled Ada through a pragma Import. Two solutions are offered to the developer: either compiling the code directly to Java bytecode, using GNAT for the JVM, or using the Java Native Interface (JNI), allowing communication between the native and JVM environments. In this Gem we will take a look at the latter. Using this JNI layer manually is very error-prone and tedious. Fortunately, AdaCore provides a set of tools for automating the interface generation, through GNAT-AJIS. This Gem is the first of a series showing how this toolset can be used to create a mixed Ada /Java application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", } @Article{Ochem:2009:MLP, author = "Quentin Ochem", title = "Multi-language programming with {Ada}", journal = j-SIGADA-LETTERS, volume = "29", number = "3", pages = "19--20", month = dec, year = "2009", CODEN = "AALEE5", DOI = "https://doi.org/10.1145/1647420.1647431", ISSN = "1094-3641 (print), 1557-9476 (electronic)", ISSN-L = "1094-3641", bibdate = "Mon Jun 21 14:04:37 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Building complex applications often requires putting together pieces of software or requirements that have not been made to work together in the first place. Thinking of a project with a high integrity kernel written in Ada, using a set of low level libraries and drivers written in C or C++, with a graphical interface done in Java and unit tests driven by python is not thinking of science fiction anymore. It's actual concrete and day-to-day work. Unfortunately, having all of these technologies talking to each other is not straightforward, and often requires a deep knowledge of both sides of the technology and extensive manual work.\par In this tutorial, we'll first study how to interface directly Ada with native languages, such as C or C++. We'll then have a deep look at communications with languages running on virtual machines, such as Java, Python and the .NET framework. Finally, we'll see how Ada can be interfaced with an arbitrary language using a middleware solution, such as SOAP or CORBA We?ll see how the communication can be manually done using low level features and APIs, and how a substantial part of this process can be automated using high level binding generators.", acknowledgement = ack-nhfb, fjournal = "ACM SIGADA Ada Letters", keywords = "Ada; APIs; communication; interfacing; languages; middleware; programming; software; systems", } @Article{Ogasawara:2009:NAM, author = "Takeshi Ogasawara", title = "{NUMA}-aware memory manager with dominant-thread-based copying {GC}", journal = j-SIGPLAN, volume = "44", number = "10", pages = "377--390", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640117", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We propose a novel online method of identifying the preferred NUMA nodes for objects with negligible overhead during the garbage collection time as well as object allocation time. Since the number of CPUs (or NUMA nodes) is increasing recently, it is critical for the memory manager of the runtime environment of an object-oriented language to exploit the low latency of local memory for high performance. To locate the CPU of a thread that frequently accesses an object, prior research uses the runtime information about memory accesses as sampled by the hardware. However, the overhead of this approach is high for a garbage collector.\par Our approach uses the information about which thread can exclusively access an object, or the {\em Dominant Thread\/} (DoT). The dominant thread of an object is the thread that often most accesses an object so that we do not require memory access samples. Our NUMA-aware GC performs DoT based object copying, which copies each live object to the CPU where the dominant thread was last dispatched before GC. The dominant thread information is known from the thread stack and from objects that are locked or reserved by threads and is propagated in the object reference graph.\par We demonstrate that our approach can improve the performance of benchmark programs such as SPECpower ssj2008, SPECjbb2005, and SPECjvm2008. We prototyped a NUMA-aware memory manager on a modified version of IBM Java VM and tested it on a cc-NUMA POWER6 machine with eight NUMA nodes. Our NUMA-aware GC achieved performance improvements up to 14.3\% and 2.0\% on average over a JVM that only used the NUMA-aware allocator. The total improvement using both the NUMA-aware allocator and GC is up to 53.1\% and 10.8\% on average.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "cc-NUMA; java", } @Article{Oiwa:2009:IMS, author = "Yutaka Oiwa", title = "Implementation of the memory-safe full {ANSI-C} compiler", journal = j-SIGPLAN, volume = "44", number = "6", pages = "259--269", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542505", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper describes a completely memory-safe compiler for C language programs that is fully compatible with the ANSI C specification.\par Programs written in C often suffer from nasty errors due to dangling pointers and buffer overflow. Such errors in Internet server programs are often exploited by malicious attackers to crack an entire system. The origin of these errors is usually corruption of in-memory data structures caused by out-of-bound array accesses. Usual C compilers do not provide any protection against such out-of-bound access, although many other languages such as Java and ML do provide such protection. There have been several proposals for preventing such memory corruption from various aspects: runtime buffer overrun detectors, designs for new C-like languages, and compilers for (subsets of) the C language. However, as far as we know, none of them have achieved full memory protection and full compatibility with the C language specification at the same time.\par We propose the most powerful solution to this problem ever presented. We have developed {\em Fail-Safe C}, a memory-safe implementation of the full ANSI C language. It detects and disallows all unsafe operations, yet conforms to the full ANSI C standard (including casts and unions). This paper introduces several techniques--both compile-time and runtime--to reduce the overhead of runtime checks, while still maintaining 100\% memory safety. This compiler lets programmers easily make their programs safe without heavy rewriting or porting of their code. It also supports many of the 'dirty tricks' commonly used in many existing C programs, which do not strictly conform to the standard specification. In this paper, we demonstrate several real-world server programs that can be processed by our compiler and present technical details and benchmark results for it.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "C language; memory safety", } @Article{Overbey:2009:RLR, author = "Jeffrey L. Overbey and Ralph E. Johnson", title = "Regrowing a language: refactoring tools allow programming languages to evolve", journal = j-SIGPLAN, volume = "44", number = "10", pages = "493--502", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640127", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Successful programming languages change as they age. They tend to become more complex, and eventually some features become outdated or are rarely used. Programming tools for these languages become more complex as well, since they have to support archaic features. Old programs are hard to maintain, since these archaic features are unfamiliar to modern programmers. These problems can be solved by refactoring tools that can transform programs to use the modern form. We show that refactoring tools can ease the cost of program evolution by examining the evolution of two languages, Fortran and Java, and showing that each change corresponds to an automatable refactoring.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "fortran; java; language design; language evolution; refactoring; restructuring", } @Article{Pandey:2009:EWR, author = "R. K. Pandey", title = "Exploiting web resources for teaching\slash learning best software design tips", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--7", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640169", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Teaching software design principles using conventional class room methodologies has its own limitations and as such is less effective. Software design being the most crucial phase of the Software Development Life Cycle (SDLC) requires considerable practical experience on the part of the teacher. The approach presented in this paper may help the computer science/software engineering students learn the advanced level software design tips through Internet based resources. Such type of approaches to teaching/learning software engineering principles through Free/Open Source (F/OSS) resources have been quite successfully used and reported in the literature. The approach presented in this paper is somewhat similar and may be of great help to the persons having background in JAVA and {.NET} technologies and involved in the design/development of JAVA/.NET based components/applications. The approach has a number of advantages over the approaches used by others and is quite effective.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Papadimitriou:2009:JIS, author = "Stergios Papadimitriou and Konstantinos Terzidis", title = "{jLab}: Integrating a scripting interpreter with {Java} technology for flexible and efficient scientific computation", journal = j-COMP-LANGS-SYS-STRUCT, volume = "35", number = "3", pages = "217--240", month = oct, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1016/j.cl.2008.02.001", ISSN = "1477-8424 (print), 1873-6866 (electronic)", ISSN-L = "1477-8424", bibdate = "Thu Mar 8 08:39:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/complngs.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/14778424", URL = "http://www.sciencedirect.com/science/article/pii/S147784240800002X", acknowledgement = ack-nhfb, fjournal = "Computer Languages, Systems \& Structures", journal-URL = "http://www.sciencedirect.com/science/journal/14778424", } @Article{Papadimitriou:2009:SSJ, author = "Stergios Papadimitriou and Konstantinos Terzidis and Seferina Mavroudi and Spiridon Likothanassis", title = "Scientific Scripting for the {Java} Platform with {jLab}", journal = j-COMPUT-SCI-ENG, volume = "11", number = "4", pages = "50--60", month = jul # "\slash " # aug, year = "2009", CODEN = "CSENFA", DOI = "https://doi.org/10.1109/MCSE.2009.126", ISSN = "1521-9615 (print), 1558-366X (electronic)", ISSN-L = "1521-9615", bibdate = "Thu May 13 11:08:14 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Computing in Science and Engineering", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5992", } @Article{Proulx:2009:UTJ, author = "Viera K. Proulx and Weston Jossey", title = "Unit testing in {Java}", journal = j-SIGCSE, volume = "41", number = "3", pages = "349--349", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562990", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "The design of unit tests is a fundamental part of learning to design programs. We present a Java library that supports the design of tests for a novice programmer, together with the test evaluation, and the reporting of test results in an informative manner. The tester library has been used at a number of universities with a great success.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Pucella:2009:HST, author = "Riccardo Pucella and Jesse A. Tov", title = "{Haskell} session types with (almost) no class", journal = j-SIGPLAN, volume = "44", number = "2", pages = "25--36", month = feb, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1411286.1411290", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:38:26 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We describe an implementation of session types in Haskell. Session types statically enforce that client-server communication proceeds according to protocols. They have been added to several concurrent calculi, but few implementations of session types are available.\par Our embedding takes advantage of Haskell where appropriate, but we rely on no exotic features. Thus our approach translates with minimal modification to other polymorphic, typed languages such as ML and Java. Our implementation works with existing Haskell concurrency mechanisms, handles multiple communication channels and recursive session types, and infers protocols automatically.\par While our implementation uses unsafe operations in Haskell, it does not violate Haskell's safety guarantees. We formalize this claim in a concurrent calculus with unsafe communication primitives over which we layer our implementation of session types, and we prove that the session types layer is safe. In particular, it enforces that channel-based communication follows consistent protocols.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "concurrency; embedded type systems; functional programming; haskell; phantom types; session types; type classes", } @Article{Qi:2009:MTS, author = "Xin Qi and Andrew C. Myers", title = "Masked types for sound object initialization", journal = j-SIGPLAN, volume = "44", number = "1", pages = "53--65", month = jan, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1594834.1480890", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:38 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "This paper presents a type-based solution to the long-standing problem of object initialization. Constructors, the conventional mechanism for object initialization, have semantics that are surprising to programmers and that lead to bugs. They also contribute to the problem of null-pointer exceptions, which make software less reliable. Masked types are a new type-state mechanism that explicitly tracks the initialization state of objects and prevents reading from uninitialized fields. In the resulting language, constructors are ordinary methods that operate on uninitialized objects, and no special default value (null) is needed in the language. Initialization of cyclic data structures is achieved with the use of conditionally masked types. Masked types are modular and compatible with data abstraction. The type system is presented in a simplified object calculus and is proved to soundly prevent reading from uninitialized fields. Masked types have been implemented as an extension to Java, in which compilation simply erases extra type information. Experience using the extended language suggests that masked types work well on real code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "conditional masks; cyclic data structures; data abstraction; invariants; null pointer exceptions", } @Article{Qi:2009:SCB, author = "Xin Qi and Andrew C. Myers", title = "Sharing classes between families", journal = j-SIGPLAN, volume = "44", number = "6", pages = "281--292", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542508", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Class sharing is a new language mechanism for building extensible software systems. Recent work has separately explored two different kinds of extensibility: first, family inheritance, in which an entire family of related classes can be inherited, and second, adaptation, in which existing objects are extended in place with new behavior and state. Class sharing integrates these two kinds of extensibility mechanisms. With little programmer effort, objects of one family can be used as members of another, while preserving relationships among objects. Therefore, a family of classes can be adapted in place with new functionality spanning multiple classes. Object graphs can evolve from one family to another, adding or removing functionality even at run time.\par Several new mechanisms support this flexibility while ensuring type safety. Class sharing has been implemented as an extension to Java, and its utility for evolving and extending software is demonstrated with realistic systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "family inheritance; masked types; views", } @Article{Rataj:2009:TJP, author = "Artur Rataj and Bo{\.z}ena Wo{\'z}na and Andrzej Zbrzezny", title = "A Translator of {Java} Programs to {TADDs}", journal = j-FUND-INFO, volume = "93", number = "1--3", pages = "305--324", month = jan, year = "2009", CODEN = "FUMAAJ", DOI = "https://doi.org/10.3233/FI-2009-0104", ISSN = "0169-2968 (print), 1875-8681 (electronic)", ISSN-L = "0169-2968", bibdate = "Sat Mar 5 17:08:45 MST 2016", bibsource = "https://www.math.utah.edu/pub/tex/bib/fundinfo2000.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Fundamenta Informaticae", journal-URL = "http://content.iospress.com/journals/fundamenta-informaticae", } @Book{Richards:2009:JMS, author = "Mark Richards and Richard Monson-Haefel and David Chappell", title = "{Java Message Service}", publisher = pub-ORA, address = pub-ORA:adr, edition = "Second", pages = "xx + 305", year = "2009", ISBN = "0-596-52204-5", ISBN-13 = "978-0-596-52204-9", LCCN = "????", bibdate = "Fri May 29 12:38:47 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.99", acknowledgement = ack-nhfb, } @Article{Roy:2009:LPF, author = "Indrajit Roy and Donald E. Porter and Michael D. Bond and Kathryn S. McKinley and Emmett Witchel", title = "{Laminar}: practical fine-grained decentralized information flow control", journal = j-SIGPLAN, volume = "44", number = "6", pages = "63--74", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543135.1542484", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Decentralized information flow control (DIFC) is a promising model for writing programs with powerful, end-to-end security guarantees. Current DIFC systems that run on commodity hardware can be broadly categorized into two types: language-level and operating system-level DIFC. Language level solutions provide no guarantees against security violations on system resources, like files and sockets. Operating system solutions can mediate accesses to system resources, but are inefficient at monitoring the flow of information through fine-grained program data structures.\par This paper describes Laminar, the first system to implement decentralized information flow control using a single set of abstractions for OS resources and heap-allocated objects. Programmers express security policies by labeling data with secrecy and integrity labels, and then access the labeled data in lexically scoped security regions. Laminar enforces the security policies specified by the labels at runtime. Laminar is implemented using a modified Java virtual machine and a new Linux security module. This paper shows that security regions ease incremental deployment and limit dynamic security checks, allowing us to retrofit DIFC policies on four application case studies. Replacing the applications' ad-hoc security policies changes less than 10\% of the code, and incurs performance overheads from 1\% to 56\%. Whereas prior DIFC systems only support limited types of multithreaded programs, Laminar supports a more general class of multithreaded DIFC programs that can access heterogeneously labeled data.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "information flow control; java virtual machine; operating systems; security region", } @Article{Saito:2009:STC, author = "Chieri Saito and Atsushi Igarashi", title = "Self type constructors", journal = j-SIGPLAN, volume = "44", number = "10", pages = "263--282", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1639949.1640109", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Bruce and Foster proposed the language LOOJ, an extension of Java with the notion of {\em MyType}, which represents the type of a self reference and changes its meaning along with inheritance. {\em MyType\/} is useful to write extensible yet type-safe classes for objects with recursive interfaces, that is, ones with methods that take or return objects of the same type as the receiver.\par Although LOOJ has also generics, {\em MyType\/} has been introduced as a feature rather orthogonal to generics. As a result, LOOJ cannot express an interface that refers to the same generic class recursively but with different type arguments. This is a significant limitation because such an interface naturally arises in practice, for example, in a generic collection class with method map(), which converts a collection to the same kind of collection of a different element type. Altherr and Cremet and Moors, Piessens, and Odersky gave solutions to this problem but they used a highly sophisticated combination of advanced mechanisms such as abstract type members, higher-order type constructors, and F-bounded polymorphism.\par In this paper, we give another solution by introducing {\em self type constructors}, which integrate {\em MyType\/} and generics so that {\em MyType\/} can take type arguments in a generic class. Self type constructors are tailored to writing recursive interfaces more concisely than previous solutions. We demonstrate the expressive power of self type constructors by means of examples, formalize a core language with self type constructors, and prove its type safety.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "binary methods; generics; MyType; type constructor polymorphism", } @Article{Scherer:2009:SSQ, author = "William N. {Scherer, III} and Doug Lea and Michael L. Scott", title = "Scalable synchronous queues", journal = j-CACM, volume = "52", number = "5", pages = "100--111", month = may, year = "2009", CODEN = "CACMA2", DOI = "https://doi.org/10.1145/1506409.1506431", ISSN = "0001-0782 (print), 1557-7317 (electronic)", ISSN-L = "0001-0782", bibdate = "Thu Apr 23 12:42:30 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/cacm/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "In a thread-safe {\em concurrent queue}, consumers typically wait for producers to make data available. In a {\em synchronous queue}, producers similarly wait for consumers to take the data. We present two new nonblocking, contention-free synchronous queues that achieve high performance through a form of {\em dualism\/}: The underlying data structure may hold both data and, symmetrically, {\em requests}.\par We present performance results on 16-processor SPARC and 4-processor Opteron machines. We compare our algorithms to commonly used alternatives from the literature and from the Java SE 5.0 class {\em java.util.concurrent.SynchronousQueue\/} both directly in synthetic microbenchmarks and indirectly as the core of Java's {\em ThreadPoolExecutor\/} mechanism. Our new algorithms consistently outperform the Java SE 5.0 {\em SynchronousQueue\/} by factors of three in unfair mode and 14 in fair mode; this translates to factors of two and ten for the {\em ThreadPoolExecutor}. Our synchronous queues have been adopted for inclusion in Java 6.", acknowledgement = ack-nhfb, fjournal = "Communications of the ACM", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J79", } @Article{Schwarz:2009:DFP, author = "E. M. Schwarz and J. S. Kapernick and M. F. Cowlishaw", title = "Decimal floating-point support on the {IBM System z10} processor", journal = j-IBM-JRD, volume = "53", number = "1", pages = "4:1--4:10", month = jan # "\slash " # feb, year = "2009", CODEN = "IBMJAE", ISSN = "0018-8646 (print), 2151-8556 (electronic)", ISSN-L = "0018-8646", bibdate = "Thu Jan 29 14:25:32 MST 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.research.ibm.com/journal/", URL = "http://www.research.ibm.com/journal/rd/531/schwarz.pdf", abstract = "The latest IBM zSeries processor, the IBM System z10 processor, provides hardware support for the decimal floating-point (DFP) facility that was introduced on the IBM System z9 processor. The z9 processor implements the facility with a mixture of low-level software and hardware assists. Recently, the IBM POWER6 processor-based System p 570 server introduced a hardware implementation of the DFP facility. The latest zSeries processor includes a decimal floating-point unit based on the POWER6 processor DFP unit that has been enhanced to also support the traditional zSeries decimal fixed-point instruction set. This paper explains the hardware implementation to support both decimal fixed point and DFP and the new software support for the DFP facility, including IBM z/OS, Java JIT, and C/C++ compilers, as well as support in IBM DB2 and middleware.", acknowledgement = ack-nhfb, fjournal = "IBM Journal of Research and Development", journal-URL = "http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=5288520", keywords = "ARITH-19", remark = "Extended version of ARITH-18 article \cite{}.", } @Article{Seidman:2009:AFI, author = "Robert H. Seidman", title = "{Alice} first: {$3$D} interactive game programming", journal = j-SIGCSE, volume = "41", number = "3", pages = "345--345", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562986", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "For introductory programming courses, we recommend teaching Alice as a precursor to teaching object-oriented languages such as Java. This presentation describes and demonstrates the approach of a newly published workbook that uses a highly motivating story-telling $3$D virtual world interactive game design and development pedagogical approach. Students create animated movies and in the process learn object-oriented programming fundamentals.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Shacham:2009:CAS, author = "Ohad Shacham and Martin Vechev and Eran Yahav", title = "{Chameleon}: adaptive selection of collections", journal = j-SIGPLAN, volume = "44", number = "6", pages = "408--418", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542522", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Languages such as Java and C\#, as well as scripting languages like Python, and Ruby, make extensive use of Collection classes. A collection implementation represents a fixed choice in the dimensions of operation time, space utilization, and synchronization. Using the collection in a manner not consistent with this fixed choice can cause significant performance degradation. In this paper, we present CHAMELEON, a low-overhead automatic tool that assists the programmer in choosing the appropriate collection implementation for her application. During program execution, CHAMELEON computes elaborate trace and heap-based metrics on collection behavior. These metrics are consumed on-the-fly by a rules engine which outputs a list of suggested collection adaptation strategies. The tool can apply these corrective strategies automatically or present them to the programmer. We have implemented CHAMELEON on top of a IBM's J9 production JVM, and evaluated it over a small set of benchmarks. We show that for some applications, using CHAMELEON leads to a significant improvement of the memory footprint of the application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bloat; collections; Java; semantic profiler", } @Article{Shafi:2009:CSJ, author = "Aamir Shafi and Bryan Carpenter and Mark Baker and Aftab Hussain", title = "A comparative study of {Java} and {C} performance in two large-scale parallel applications", journal = j-CCPE, volume = "21", number = "15", pages = "1882--1906", month = oct, year = "2009", CODEN = "CCPEBO", DOI = "https://doi.org/10.1002/cpe.1416", ISSN = "1532-0626 (print), 1532-0634 (electronic)", ISSN-L = "1532-0626", bibdate = "Mon Dec 5 10:08:38 MST 2011", bibsource = "http://www.interscience.wiley.com/jpages/1532-0626; https://www.math.utah.edu/pub/tex/bib/ccpe.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "Concurrency and Computation: Prac\-tice and Experience", journal-URL = "http://www.interscience.wiley.com/jpages/1532-0626", onlinedate = "20 Feb 2009", } @Article{Shafi:2009:NPM, author = "Aamir Shafi and Bryan Carpenter and Mark Baker", title = "Nested parallelism for multi-core {HPC} systems using {Java}", journal = j-J-PAR-DIST-COMP, volume = "69", number = "6", pages = "532--545", month = jun, year = "2009", CODEN = "JPDCER", ISSN = "0743-7315 (print), 1096-0848 (electronic)", ISSN-L = "0743-7315", bibdate = "Wed Sep 1 16:27:25 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/07437315", acknowledgement = ack-nhfb, fjournal = "Journal of Parallel and Distributed Computing", journal-URL = "http://www.sciencedirect.com/science/journal/07437315", } @Article{Sharma:2009:DAC, author = "Arun Sharma and P. S. Grover and Rajesh Kumar", title = "Dependency analysis for component-based software systems", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543424", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "https://www.math.utah.edu/pub/tex/bib/hash.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Interaction in component-based systems (CBS) happens when a component provides an interface and other components use it, and also when a component submits an event and other component receives it. Interactions promote dependencies. Higher dependency leads to a complex system, which results in poor understanding and a higher maintenance cost. Usually, dependency is represented by an adjacency matrix used in graph theory. However, this representation can check only for the presence of dependency between components and does not consider the type of interactions between these components. Interaction type can have a significant contribution to the complexity of the system. This paper proposes a link-list based dependency representation and implements it by using Hash Map in Java. This representation can store the dependency along with other information like, provided and required interfaces of components along with their types. This information can be used to analyze several interaction and dependency related issues. This paper also presents the results of an experiment of the proposed approach and measures the interaction densities and dependency level of an individual component and for the system The results show that the proposed metrics can also be used to identify the most critical and isolated components in the system, which can lead to better understanding and easy system maintenance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shen:2009:SHP, author = "Xipeng Shen and Feng Mao and Kai Tian and Eddy Zheng Zhang", title = "The study and handling of program inputs in the selection of garbage collectors", journal = j-OPER-SYS-REV, volume = "43", number = "3", pages = "48--61", month = jul, year = "2009", CODEN = "OSRED8", DOI = "https://doi.org/10.1145/1618525.1618531", ISSN = "0163-5980 (print), 1943-586X (electronic)", ISSN-L = "0163-5980", bibdate = "Tue Sep 22 12:51:49 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many studies have shown that the best performer among a set of garbage collectors tends to be different for different applications. Researchers have proposed applicationspecific selection of garbage collectors. In this work, we concentrate on a second dimension of the problem: the influence of program inputs on the selection of garbage collectors. We collect tens to hundreds of inputs for a set of Java benchmarks, and measure their performance on Jikes RVM with different heap sizes and garbage collectors. A rigorous statistical analysis produces four-fold insights. First, inputs influence the relative performance of garbage collectors significantly, causing large variations to the top set of garbage collectors across inputs. Profiling one or few runs is thus inadequate for selecting the garbage collector that works well for most inputs. Second, when the heap size ratio is fixed, one or two types of garbage collectors are enough to stimulate the top performance of the program on all inputs. Third, for some programs, the heap size ratio significantly affects the relative performance of different types of garbage collectors. For the selection of garbage collectors on those programs, it is necessary to have a cross-input predictive model that predicts the minimum possible heap size of the execution on an arbitrary input. Finally, by adoptingstatistical learning techniques, we investigate the cross-input predictability of the influence. Experimental results demonstrate that with regression and classification techniques, it is possible to predict the best garbage collector (along with the minimum possible heap size) with reasonable accuracy given an arbitrary input to an application. The exploration opens the opportunities for tailoring the selection of garbage collectors to not only applications but also their inputs.", acknowledgement = ack-nhfb, fjournal = "Operating Systems Review", keywords = "cross-input program analysis; input-specific selection; minimum possible heap size; profiling; selection of garbage collectors", } @Book{Smiley:2009:SES, author = "David Smiley and Eric (David Eric) Pugh and James Brady and Jerome Eteve", title = "{Solr 1.4 Enterprise Search Server}: enhance your search with faceted navigation, result highlighting, fuzzy queries, ranked scoring, and more", publisher = "Packt Publishing", address = "Birmingham, UK", pages = "vii + 317", year = "2009", ISBN = "1-84719-588-1", ISBN-13 = "978-1-84719-588-3", LCCN = "TK5105.885.S65 S65 2009eb", bibdate = "Thu Apr 15 14:49:12 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; library.mit.edu:9909/mit01", acknowledgement = ack-nhfb, subject = "Web search engines; programming; client/server computing", } @Article{Song:2009:ESL, author = "Myoungkyu Song and Eli Tilevich", title = "Enhancing source-level programming tools with an awareness of transparent program transformations", journal = j-SIGPLAN, volume = "44", number = "10", pages = "301--320", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640112", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Programs written in managed languages are compiled to a platform-independent intermediate representation, such as Java bytecode. The relative high level of Java bytecode has engendered a widespread practice of changing the bytecode directly, without modifying the maintained version of the source code. This practice, called {\em bytecode engineering\/} or {\em enhancement}, has become indispensable in introducing various concerns, including persistence, distribution, and security, transparently. For example, transparent persistence architectures help avoid the entanglement of business and persistence logic in the source code by changing the bytecode directly to synchronize objects with stable storage. With functionality added directly at the bytecode level, the source code reflects only partial semantics of the program. Specifically, the programmer can neither ascertain the program's runtime behavior by browsing its source code, nor map the runtime behavior back to the original source code.\par This paper presents an approach that improves the utility of source-level programming tools by providing enhancement specifications written in a domain-specific language. By interpreting the specifications, a source-level programming tool can gain an awareness of the bytecode enhancements and improve its precision and usability. We demonstrate the applicability of our approach by making a source code editor and a symbolic debugger enhancements-aware.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "bytecode engineering; debugging; domain-specific languages; enhancement; program transformation", } @Article{Sooriamurthi:2009:IAD, author = "Raja Sooriamurthi", title = "Introducing abstraction and decomposition to novice programmers", journal = j-SIGCSE, volume = "41", number = "3", pages = "196--200", month = sep, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1595496.1562939", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:23 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of ITiCSE '09.", abstract = "This paper discusses a learning exercise we use in our beginning programming classes to introduce students to the concepts of abstraction and decomposition. The assignment is to write a perpetual calendar generation program: given a month and a year the program will display the correct monthly calendar. The learning goals of the exercise include how to decompose a large problem into smaller pieces and how to specify what each piece needs to do. This exercise helps students learn the process of incremental and iterative development. More than the actual solution, the value of this exercise is in the several themes of software development that are discussed during its development. We have successfully used this assignment for several years in a variety of CS1/CS2 programming environments (Pascal, C, Java and .net) and also as a Java servlet based web application exercise. Over this period, the case-study has received very favorable feedback from students as to its interestingness and pedagogical value.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Subramanian:2009:DSU, author = "Suriya Subramanian and Michael Hicks and Kathryn S. McKinley", title = "Dynamic software updates: a {VM}-centric approach", journal = j-SIGPLAN, volume = "44", number = "6", pages = "1--12", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543135.1542478", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Software evolves to fix bugs and add features. Stopping and restarting programs to apply changes is inconvenient and often costly. Dynamic software updating (DSU) addresses this problem by updating programs while they execute, but existing DSU systems for managed languages do not support many updates that occur in practice and are inefficient. This paper presents the design and implementation of Jvolve, a DSU-enhanced Java VM. Updated programs may add, delete, and replace fields and methods anywhere within the class hierarchy. Jvolve implements these updates by adding to and coordinating VM classloading, just-in-time compilation, scheduling, return barriers, on-stack replacement, and garbage collection. Jvolve, is {\em safe\/}: its use of bytecode verification and VM thread synchronization ensures that an update will always produce type-correct executions. Jvolve is {\em flexible\/}: it can support 20 of 22 updates to three open-source programs--Jetty web server, JavaEmailServer, and CrossFTP server--based on actual releases occurring over 1 to 2 years. Jvolve is {\em efficient\/}: performance experiments show that incurs {\em no overhead\/} during steady-state execution. These results demonstrate that this work is a significant step towards practical support for dynamic updates in virtual machines for managed languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "dynamic software updating; garbage collection; virtual machine technology", } @Article{Tilevich:2009:JOE, author = "Eli Tilevich and Yannis Smaragdakis", title = "{J-Orchestra}: {Enhancing} {Java} programs with distribution capabilities", journal = j-TOSEM, volume = "19", number = "1", pages = "1:1--1:??", month = aug, year = "2009", CODEN = "ATSMER", DOI = "https://doi.org/10.1145/1555392.1555394", ISSN = "1049-331X (print), 1557-7392 (electronic)", ISSN-L = "1049-331X", bibdate = "Tue Aug 11 19:18:39 MDT 2009", bibsource = "http://www.acm.org/pubs/contents/journals/tosem/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "J-Orchestra is a system that enhances centralized Java programs with distribution capabilities. Operating at the bytecode level, J-Orchestra transforms a centralized Java program (i.e., running on a single Java Virtual Machine (JVM)) into a distributed one (i.e., running across multiple JVMs). This transformation effectively separates distribution concerns from the core functionality of a program. J-Orchestra follows a semiautomatic transformation process. Through a GUI, the user selects program elements (at class granularity) and assigns them to network locations. Based on the user's input, the J-Orchestra backend {\em automatically partitions\/} the program through compiler-level techniques, without changes to the JVM or to the Java Runtime Environment (JRE) classes. By means of bytecode engineering and code generation, J-Orchestra substitutes method calls with remote method calls, direct object references with proxy references, etc. It also translates Java language features (e.g., static methods and fields, inheritance, inner classes, new object construction, etc.) for efficient distributed execution.\par We detail the main technical issues that J-Orchestra addresses, including its mechanism for program transformation in the presence of unmodifiable code (e.g., in JRE classes) and the translation of concurrency and synchronization constructs to work correctly over the network. We further discuss a case study of transforming a large, commercial, third-party application for efficient execution in a client server environment and outline the architectural characteristics of centralized programs that are amenable to automated distribution with J-Orchestra.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM Transactions on Software Engineering and Methodology", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J790", keywords = "bytecode engineering; distributed computing; Java; middleware; RMI; Separation of concerns", } @Article{Tripp:2009:TET, author = "Omer Tripp and Marco Pistoia and Stephen J. Fink and Manu Sridharan and Omri Weisman", title = "{TAJ}: effective taint analysis of web applications", journal = j-SIGPLAN, volume = "44", number = "6", pages = "87--97", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542486", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Taint analysis, a form of information-flow analysis, establishes whether values from untrusted methods and parameters may flow into security-sensitive operations. Taint analysis can detect many common vulnerabilities in Web applications, and so has attracted much attention from both the research community and industry. However, most static taint-analysis tools do not address critical requirements for an industrial-strength tool. Specifically, an industrial-strength tool must scale to large industrial Web applications, model essential Web-application code artifacts, and generate consumable reports for a wide range of attack vectors.\par We have designed and implemented a static Taint Analysis for Java (TAJ) that meets the requirements of industry-level applications. TAJ can analyze applications of virtually any size, as it employs a set of techniques designed to produce useful answers given limited time and space. TAJ addresses a wide variety of attack vectors, with techniques to handle reflective calls, flow through containers, nested taint, and issues in generating useful reports. This paper provides a description of the algorithms comprising TAJ, evaluates TAJ against production-level benchmarks, and compares it with alternative solutions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "java; program analysis; security; slicing; static analysis; taint analysis; web application", } @Article{Tyman:2009:ABS, author = "Damon Tyman and Nirupama Bulusu and Jens Mache", title = "An activity-based sensor networks course for undergraduates with sun spot devices", journal = j-SIGCSE, volume = "41", number = "1", pages = "34--38", month = mar, year = "2009", CODEN = "SIGSD3", DOI = "https://doi.org/10.1145/1539024.1508879", ISSN = "0097-8418 (print), 2331-3927 (electronic)", ISSN-L = "0097-8418", bibdate = "Sat Nov 17 15:44:19 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigcse2000.bib", note = "Proceedings of SIGCSE '09.", abstract = "Wireless sensor networks are revolutionizing the instrumentation of the physical world, across scientific, industrial and military applications. In this paper, we describe our efforts developing and classroom-testing hands-on materials for use in undergraduate-accessible courses on sensor networks. In Winter 2008 at Portland State University, we introduced an in-class laboratory component to a sensor networks course that had previously been entirely lecture-based. For the laboratory exercises, we utilized Sun's Java-programmable Sun SPOT [7] sensor network technology. We found the Sun SPOT based laboratory activities to be quite powerful as a teaching and excitement-fostering tool.", acknowledgement = ack-nhfb, fjournal = "SIGCSE Bulletin (ACM Special Interest Group on Computer Science Education)", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J688", } @Article{Urbanek:2009:HTS, author = "Simon Urbanek", title = "How to talk to strangers: ways to leverage connectivity between {R}, {Java} and {Objective C}", journal = j-COMP-STAT, volume = "24", number = "2", pages = "303--311", month = may, year = "2009", CODEN = "CSTAEB", DOI = "https://doi.org/10.1007/s00180-008-0132-x", ISSN = "0943-4062 (print), 1613-9658 (electronic)", ISSN-L = "0943-4062", bibdate = "Thu Jun 18 16:19:37 MDT 2020", bibsource = "https://www.math.utah.edu/pub/tex/bib/compstat.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/s-plus.bib", URL = "http://link.springer.com/article/10.1007/s00180-008-0132-x", acknowledgement = ack-nhfb, ajournal = "Comp. Stat.", fjournal = "Computational Statistics", journal-URL = "http://link.springer.com/journal/180", } @Article{VanCappellen:2009:XXJ, author = "Marc {Van Cappellen} and Zhen Hua Liu and Jim Melton and Maxim Orgiyan", title = "{XQJ}: {XQuery Java API} is completed", journal = j-SIGMOD, volume = "38", number = "4", pages = "7--13", month = dec, year = "2009", CODEN = "SRECD8", DOI = "https://doi.org/10.1145/1815948.1815950", ISSN = "0163-5808 (print), 1943-5835 (electronic)", ISSN-L = "0163-5808", bibdate = "Mon Jun 21 18:07:42 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Just as SQL is a declarative language for querying relational data, XQuery is a declarative language for querying XML. JDBC provides a standard Java API to interact with a variety of SQL engines to declaratively access and manipulate data stored in relational data sources. Similarly, XQJ provides a standard Java API to interact with a variety of XQuery engines to declaratively access and manipulate XML data in variety of XML data sources. XQJ, also known as JSR 225, is designed through the Java Community Process (JCP) [20]. The XQJ specification defines a set of Java interfaces and classes that enable a Java program to submit XQuery expressions to an XQuery engine operating on XML data sources and to consume XQuery results. In this article, we discuss the XQJ APl's technical details with its similarities; and differences from JDBC, the design philosophies and goals for XQJ, the implementations strategies of XQJ in variety of XQuery engines and their operating environments, and the possible future of XQJ.", acknowledgement = ack-nhfb, fjournal = "ACM SIGMOD Record", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J689", } @Article{Wang:2009:AHC, author = "Yi-Hsien Wang and I-Chen Wu", title = "Achieving high and consistent rendering performance of {Java AWT\slash Swing} on multiple platforms", journal = j-SPE, volume = "39", number = "7", pages = "701--736", day = "??", month = may, year = "2009", CODEN = "SPEXBL", DOI = "https://doi.org/10.1002/spe.920", ISSN = "0038-0644 (print), 1097-024X (electronic)", ISSN-L = "0038-0644", bibdate = "Wed Mar 17 10:02:39 MDT 2010", bibsource = "http://www.interscience.wiley.com/jpages/0038-0644; https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www3.interscience.wiley.com/journalfinder.html", acknowledgement = ack-nhfb, fjournal = "Software---Practice and Experience", journal-URL = "http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)1097-024X", onlinedate = "Mar 23 2009 10:34AM", } @Book{Weaver:2009:PJP, author = "James L. Weaver and Weiqi Gao and Stephen Chin", title = "{Pro JavaFX} Platform: Script, Desktop and Mobile {RIA} with {Java} Technology", publisher = pub-APRESS, address = pub-APRESS:adr, pages = "xxiii + 543", year = "2009", ISBN = "1-4302-1875-4", ISBN-13 = "978-1-4302-1875-3", LCCN = "????", bibdate = "Tue Jan 27 15:56:53 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Article{Wegiel:2009:DPC, author = "Michal Wegiel and Chandra Krintz", title = "Dynamic prediction of collection yield for managed runtimes", journal = j-SIGPLAN, volume = "44", number = "3", pages = "289--300", month = mar, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1508244.1508278", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:39:26 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The growth in complexity of modern systems makes it increasingly difficult to extract high-performance. The software stacks for such systems typically consist of multiple layers and include managed runtime environments (MREs). In this paper, we investigate techniques to improve cooperation between these layers and the hardware to increase the efficacy of automatic memory management in MREs.\par General-purpose MREs commonly implement parallel and/or concurrent garbage collection and employ compaction to eliminate heap fragmentation. Moreover, most systems trigger collection based on the amount of heap a program uses. Our analysis shows that in many cases this strategy leads to ineffective collections that are unable to reclaim sufficient space to justify the incurred cost. To avoid such collections, we exploit the observation that dead objects tend to cluster together and form large, never-referenced, regions in the address space that correlate well with virtual pages that have not recently been referenced by the application. We leverage this correlation to design a new, simple and light-weight, yield predictor that estimates the amount of reclaimable space in the heap using hardware page reference bits. Our predictor allows MREs to avoid low-yield collections and thereby improve resource management.\par We integrate this predictor into three state-of-the-art parallel compactors, implemented in the HotSpot JVM, that represent distinct canonical heap layouts. Our empirical evaluation, based on standard Java benchmarks and open-source applications, indicates that inexpensive and accurate yield prediction can improve performance significantly.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "clustering; concurrent; garbage collection; operating system; parallel; reference bits; yield prediction", } @Article{Xu:2009:GFP, author = "Guoqing Xu and Matthew Arnold and Nick Mitchell and Atanas Rountev and Gary Sevitsky", title = "Go with the flow: profiling copies to find runtime bloat", journal = j-SIGPLAN, volume = "44", number = "6", pages = "419--430", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542523", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Many large-scale Java applications suffer from runtime bloat. They execute large volumes of methods, and create many temporary objects, all to execute relatively simple operations. There are large opportunities for performance optimizations in these applications, but most are being missed by existing optimization and tooling technology. While JIT optimizations struggle for a few percent, performance experts analyze deployed applications and regularly find gains of 2x or more.\par Finding such big gains is difficult, for both humans and compilers, because of the diffuse nature of runtime bloat. Time is spread thinly across calling contexts, making it difficult to judge how to improve performance. Bloat results from a pile-up of seemingly harmless decisions. Each adds temporary objects and method calls, and often copies values between those temporary objects. While data copies are not the entirety of bloat, we have observed that they are excellent indicators of regions of excessive activity. By optimizing copies, one is likely to remove the objects that carry copied values, and the method calls that allocate and populate them.\par We introduce {\em copy profiling}, a technique that summarizes runtime activity in terms of chains of data copies. A flat copy profile counts copies by method. We show how flat profiles alone can be helpful. In many cases, diagnosing a problem requires data flow context. Tracking and making sense of raw copy chains does not scale, so we introduce a summarizing abstraction called the {\em copy graph}. We implement three clients analyses that, using the copy graph, expose common patterns of bloat, such as finding hot copy chains and discovering temporary data structures. We demonstrate, with examples from a large-scale commercial application and several benchmarks, that copy profiling can be used by a programmer to quickly find opportunities for large performance gains.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "copy graph; heap analysis; memory bloat; profiling", } @Article{Xu:2009:SCC, author = "Dana N. Xu and Simon Peyton Jones and Koen Claessen", title = "Static contract checking for {Haskell}", journal = j-SIGPLAN, volume = "44", number = "1", pages = "41--52", month = jan, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1594834.1480889", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Oct 9 08:40:38 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Program errors are hard to detect and are costly both to programmers who spend significant efforts in debugging, and for systems that are guarded by runtime checks. Static verification techniques have been applied to imperative and object-oriented languages, like Java and C\#, but few have been applied to a higher-order lazy functional language, like Haskell. In this paper, we describe a sound and automatic static verification framework for Haskell, that is based on contracts and symbolic execution. Our approach is modular and gives precise blame assignments at compile-time in the presence of higher-order functions and laziness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "contract satisfaction; static contract checking", } @Article{Yiyu:2009:IFS, author = "Tan Yiyu and Yau Chihang and Anthony S. Fong and Yang Xiaojian", title = "An instruction folding solution for a {Java} processor", journal = j-INT-J-COMPUT-SYST-SCI-ENG, volume = "24", number = "3", pages = "??--??", month = may, year = "2009", CODEN = "CSSEEI", ISSN = "0267-6192", bibdate = "Tue Dec 03 12:47:41 2013", bibsource = "https://www.math.utah.edu/pub/tex/bib/computsystscieng.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "International Journal of Computer Systems Science and Engineering", remark = "Special issue: Privacy Data Management", } @Article{Zdrnja:2009:ATM, author = "Bojan Zdrnja", title = "Attack Trends: Malicious {JavaScript} Insertion through {ARP} Poisoning Attacks", journal = j-IEEE-SEC-PRIV, volume = "7", number = "3", pages = "72--74", month = may # "\slash " # jun, year = "2009", CODEN = "????", DOI = "https://doi.org/10.1109/MSP.2009.72", ISSN = "1540-7993 (print), 1558-4046 (electronic)", ISSN-L = "1540-7993", bibdate = "Thu Jul 2 10:02:21 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, fjournal = "IEEE Security and Privacy", } @Article{Zee:2009:IPL, author = "Karen Zee and Viktor Kuncak and Martin C. Rinard", title = "An integrated proof language for imperative programs", journal = j-SIGPLAN, volume = "44", number = "6", pages = "338--351", month = jun, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1542476.1542514", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Tue Jun 16 14:41:16 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "We present an integrated proof language for guiding the actions of multiple reasoning systems as they work together to prove complex correctness properties of imperative programs. The language operates in the context of a program verification system that uses multiple reasoning systems to discharge generated proof obligations. It is designed to 1) enable developers to resolve key choice points in complex program correctness proofs, thereby enabling automated reasoning systems to successfully prove the desired correctness properties; 2) allow developers to identify key lemmas for the reasoning systems to prove, thereby guiding the reasoning systems to find an effective proof decomposition; 3) enable multiple reasoning systems to work together productively to prove a single correctness property by providing a mechanism that developers can use to divide the property into lemmas, each of which is suitable for a different reasoning system; and 4) enable developers to identify specific lemmas that the reasoning systems should use when attempting to prove other lemmas or correctness properties, thereby appropriately confining the search space so that the reasoning systems can find a proof in an acceptable amount of time.\par The language includes a rich set of declarative proof constructs that enables developers to direct the reasoning systems as little or as much as they desire. Because the declarative proof statements are embedded into the program as specialized comments, they also serve as verified documentation and are a natural extension of the assertion mechanism found in most program verification systems.\par We have implemented our integrated proof language in the context of a program verification system for Java and used the resulting system to verify a collection of linked data structure implementations. Our experience indicates that our proof language makes it possible to successfully prove complex program correctness properties that are otherwise beyond the reach of automated reasoning systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "proof system; theorem prover; verification", } @Article{Zhang:2009:ISE, author = "Lingli Zhang and Chandra Krintz", title = "As-if-serial exception handling semantics for {Java} futures", journal = j-SCI-COMPUT-PROGRAM, volume = "74", number = "5--6", pages = "314--332", day = "1", month = mar, year = "2009", CODEN = "SCPGD4", ISSN = "0167-6423 (print), 1872-7964 (electronic)", ISSN-L = "0167-6423", bibdate = "Fri Apr 1 18:39:26 MDT 2011", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.sciencedirect.com/science/journal/01676423", acknowledgement = ack-nhfb, fjournal = "Science of Computer Programming", journal-URL = "http://www.sciencedirect.com/science/journal/01676423", } @Article{Zhao:2009:AWL, author = "Yi Zhao and Jin Shi and Kai Zheng and Haichuan Wang and Haibo Lin and Ling Shao", title = "Allocation wall: a limiting factor of {Java} applications on emerging multi-core platforms", journal = j-SIGPLAN, volume = "44", number = "10", pages = "361--376", month = oct, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1640089.1640116", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Mon Jun 21 18:01:56 MDT 2010", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "Multi-core processors are widely used in computer systems. As the performance of microprocessors greatly exceeds that of memory, the memory wall becomes a limiting factor. It is important to understand how the large disparity of speed between processor and memory influences the performance and scalability of Java applications on emerging multi-core platforms.\par In this paper, we studied two popular Java benchmarks, SPECjbb2005 and SPECjvm2008, on multi-core platforms including Intel Clovertown and AMD Phenom. We focus on the 'partially scalable' benchmark programs. With smaller number of CPU cores these programs scale perfectly, but when more cores and software threads are used, the slope of the scalability curve degrades dramatically.\par We identified a strong correlation between scalability, object allocation rate and memory bus write traffic in our experiments with our partially scalable programs. We find that these applications allocate large amounts of memory and consume almost all the memory write bandwidth in our hardware platforms. Because the write bandwidth is so limited, we propose the following hypothesis: the scalability and performance is limited by the object allocation on emerging multi-core platforms for those objects-allocation intensive Java applications, as if these applications are running into an 'allocation wall'.\par In order to verify this hypothesis, several experiments are performed, including measuring key architecture level metrics, composing a micro-benchmark program, and studying the effect of modifying some of the 'partially scalable' programs. All the experiments strongly suggest the existence of the allocation wall.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "allocation; java; scalability", } @Article{Zou:2009:PFT, author = "Jia Zou and Joshua Auerbach and David F. Bacon and Edward A. Lee", title = "{PTIDES} on flexible task graph: real-time embedded system building from theory to practice", journal = j-SIGPLAN, volume = "44", number = "7", pages = "31--40", month = jul, year = "2009", CODEN = "SINODQ", DOI = "https://doi.org/10.1145/1543136.1542457", ISSN = "0362-1340 (print), 1523-2867 (print), 1558-1160 (electronic)", ISSN-L = "0362-1340", bibdate = "Fri Jun 26 12:07:39 MDT 2009", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", abstract = "The Flexotask system claims to enable implementation of both real-time applications and real-time schedulers in a Java Virtual Machine using an actors-like model. The PTIDES model is an actors-like model that claims to deliver precise control over end-to-end latencies in a complex real-time system. The present work jointly investigates both claims by (1) implementing several PTIDES-based schedulers as Flexotask scheduler plugins, and (2) using the resulting system to implement a new reactive control program for a simulation of the JAviator. We present results from the realistic JAviator control application and also from synthetic benchmarks designed to shed light on the differences between the several PTIDES schedulers we implemented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGPLAN Notices", journal-URL = "http://portal.acm.org/browse_dl.cfm?idx=J706", keywords = "flexible task graphs; jitter elimination; PTIDES; real-time scheduling; real-time systems", } @Book{Goodrich:2010:DSA, author = "Michael T. Goodrich and Roberto Tamassia", title = "Data Structures and Algorithms in {Java}", publisher = pub-WILEY, address = pub-WILEY:adr, edition = "Fifth", pages = "xxii + 714", year = "2010", ISBN = "0-470-38326-7 (hardcover), 0-470-39880-9 (paperback)", ISBN-13 = "978-0-470-38326-1 (hardcover), 978-0-470-39880-7 (paperback)", LCCN = "QA76.73.J38 G66 2010", bibdate = "Thu Mar 22 12:04:32 MDT 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/sigact.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, subject = "Java (Computer program language); Data structures (Computer science); Computer algorithms", } %%% ==================================================================== %%% Cross-referenced entries must come last; entries are sorted by year, %%% and then by citation label, with `bibsort --byyear': @Proceedings{ACM:2000:CPI, editor = "{ACM}", booktitle = "{Conference proceedings of the 2000 International Conference on Supercomputing: Santa Fe, New Mexico, May 8--11, 2000}", title = "{Conference proceedings of the 2000 International Conference on Supercomputing: Santa Fe, New Mexico, May 8--11, 2000}", publisher = pub-ACM, address = pub-ACM:adr, pages = "xi + 347", year = "2000", ISBN = "1-58113-270-0", ISBN-13 = "978-1-58113-270-0", LCCN = "QA76.88 .I573 2000", bibdate = "Tue Oct 24 10:04:24 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.acm.org/pubs/contents/proceedings/supercomputing/335231", acknowledgement = ack-nhfb, subject = "Supercomputers; Congresses", } @Proceedings{ACM:2000:PAS, editor = "{ACM}", booktitle = "{Proceedings ACM SIGMETRICS '2000: International Conference on Measurement and Modeling of Computer Systems, June 17--21, 2000, Santa Clara, CA, USA: Proceedings of the International Conference on Measurements and Modeling of Computer Systems}", title = "{Proceedings ACM SIGMETRICS '2000: International Conference on Measurement and Modeling of Computer Systems, June 17--21, 2000, Santa Clara, CA, USA: Proceedings of the International Conference on Measurements and Modeling of Computer Systems}", volume = "28(1)", publisher = pub-ACM, address = pub-ACM:adr, pages = "xi + 329", year = "2000", ISBN = "1-58113-194-1", ISBN-13 = "978-1-58113-194-9", LCCN = "QA1 .A854724", bibdate = "Tue Oct 24 09:59:53 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", series = j-SIGMETRICS, acknowledgement = ack-nhfb, subject = "Computer networks; Evaluation; Congresses; Electronic digital computers", } @Proceedings{ACM:2000:SHP, editor = "{ACM}", booktitle = "SC2000: High Performance Networking and Computing. Dallas Convention Center, Dallas, TX, USA, November 4--10, 2000", title = "{SC2000}: High Performance Networking and Computing. Dallas Convention Center, Dallas, {TX}, {USA}, November 4--10, 2000", publisher = pub-ACM # " and " # pub-IEEE, address = pub-ACM:adr # " and " # pub-IEEE:adr, pages = "????", year = "2000", ISBN = "", ISBN-13 = "", LCCN = "", bibdate = "Thu Feb 24 09:35:00 2000", bibsource = "ftp://ftp.math.utah.edu/pub/bibnet/authors/d/dongarra-jack-j.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.sc2000.org/proceedings/info/fp.pdf", acknowledgement = ack-nhfb, } @Book{Boszormenyi:2000:SNW, editor = "L{\'a}szl{\'o} B{\"o}sz{\"o}rm{\'e}nyi and Jurg Gutknecht and Gustav Pomberger", booktitle = "The School of {Niklaus Wirth}: The Art of Simplicity", title = "The School of {Niklaus Wirth}: The Art of Simplicity", publisher = pub-MORGAN-KAUFMANN, address = pub-MORGAN-KAUFMANN:adr, pages = "viii + 260", year = "2000", ISBN = "1-55860-723-4", ISBN-13 = "978-1-55860-723-1", LCCN = "QA76.756 .S36 2000", bibdate = "Sat Apr 20 11:12:33 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", price = "US\$39.95", URL = "http://www.mkp.com/books_catalog/catalog.asp?ISBN=1-55860-723-4", acknowledgement = ack-nhfb, } @Proceedings{Chen:2000:PAS, editor = "Weidong Chen and Jeffery Naughton and Philip A. Bernstein", booktitle = "{Proceedings of the 2000 ACM SIGMOD International Conference on Management of Data: May 16--18, 2000, Dallas, Texas}", title = "{Proceedings of the 2000 ACM SIGMOD International Conference on Management of Data: May 16--18, 2000, Dallas, Texas}", volume = "29(2)", publisher = pub-ACM, address = pub-ACM:adr, pages = "xii + 604", year = "2000", ISBN = "????", ISBN-13 = "????", ISSN = "0163-5808 (print), 1943-5835 (electronic)", LCCN = "QA1 .A87", bibdate = "Wed Oct 25 08:47:39 MDT 2000", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/sigmod_pods/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = j-SIGMOD, acknowledgement = ack-nhfb, keywords = "SIGMOD '2000", } @Proceedings{Langtangen:2000:AST, editor = "Hans Petter Langtangen and Are Magnus Bruaset and Ewald Quak", booktitle = "Advances in Software Tools for Scientific Computing", title = "Advances in Software Tools for Scientific Computing", volume = "10", publisher = pub-SV, address = pub-SV:adr, pages = "vii + 356", year = "2000", CODEN = "LNCSA6", DOI = "https://doi.org/10.1007/978-3-642-57172-5", ISBN = "3-540-66557-9 (softcover), 3-642-57172-7 (e-book)", ISBN-13 = "978-3-540-66557-1 (softcover), 978-3-642-57172-5 (e-book)", ISSN = "1439-7358", ISSN-L = "1439-7358", LCCN = "QA76.6 .A336 2000", bibdate = "Thu Dec 20 14:36:18 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/lncse.bib", note = "Papers from an International Workshop on Modern Software Tools for Scientific Computing (SciTools'98), Oslo, Norway, September 14--16, 1998.", series = ser-LNCSE, URL = "http://link.springer.com/book/10.1007/978-3-642-57172-5; http://www.springerlink.com/content/978-3-642-57172-5", acknowledgement = ack-nhfb, bookpages = "vii + 356", keywords = "computer programming; object-oriented programming (computer science); science -- data processing", series-URL = "http://link.springer.com/bookseries/3527", } @Proceedings{NIST:2000:TAE, editor = "{NIST}", booktitle = "The Third {Advanced Encryption Standard} Candidate Conference, April 13--14, 2000, New York, NY, USA", title = "The Third {Advanced Encryption Standard} Candidate Conference, April 13--14, 2000, New York, {NY}, {USA}", publisher = pub-NIST, address = pub-NIST:adr, pages = "358", year = "2000", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Tue Feb 06 15:28:26 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://csrc.nist.gov/encryption/aes/round2/conf3/aes3conf.htm; http://csrc.nist.gov/encryption/aes/round2/conf3/papers/AES3Proceedings-1.pdf; http://csrc.nist.gov/encryption/aes/round2/conf3/papers/AES3Proceedings-2.pdf; http://csrc.nist.gov/encryption/aes/round2/conf3/papers/AES3Proceedings-3.pdf; http://csrc.nist.gov/encryption/aes/round2/conf3/papers/AES3Proceedings.pdf", acknowledgement = ack-nhfb, } @Proceedings{Traverso:2000:IAU, editor = "Carlo Traverso", booktitle = "{ISSAC 2000: 7--9 August 2000, University of St. Andrews, Scotland: proceedings of the 2000 International Symposium on Symbolic and Algebraic Computation}", title = "{ISSAC 2000: 7--9 August 2000, University of St. Andrews, Scotland: proceedings of the 2000 International Symposium on Symbolic and Algebraic Computation}", publisher = pub-ACM, address = pub-ACM:adr, pages = "viii + 309", year = "2000", ISBN = "1-58113-218-2", ISBN-13 = "978-1-58113-218-2", LCCN = "QA76.95.I59 2000", bibdate = "Tue Apr 17 09:12:53 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/issac/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "ACM order number 505000.", URL = "http://www.acm.org/pubs/contents/proceedings/issac/345542/", acknowledgement = ack-nhfb, } @Proceedings{USENIX:2000:PFSb, editor = "{USENIX}", booktitle = "Proceedings of the Fourth Symposium on Operating Systems Design and Implementation (OSDI 2000), October 23--25, 2000, San Diego, California, USA", title = "Proceedings of the Fourth Symposium on Operating Systems Design and Implementation ({OSDI} 2000), October 23--25, 2000, San Diego, California, {USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "", year = "2000", ISBN = "1-880446-16-2", ISBN-13 = "978-1-880446-16-4", LCCN = "????", bibdate = "Wed Oct 16 05:40:20 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/osdi2000/", acknowledgement = ack-nhfb, } @Proceedings{USENIX:2000:PNU, editor = "{USENIX}", booktitle = "Proceedings of the Ninth USENIX Security Symposium, August 14--17, 2000, Denver, Colorado", title = "Proceedings of the Ninth {USENIX} Security Symposium, August 14--17, 2000, Denver, Colorado", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "275", year = "2000", ISBN = "1-880446-18-9", ISBN-13 = "978-1-880446-18-8", LCCN = "????", bibdate = "Wed Oct 16 06:36:41 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/sec2000", acknowledgement = ack-nhfb, } @Proceedings{USENIX:2000:PUT, editor = "{USENIX}", booktitle = "Proceedings of the 7th USENIX Tcl\slash Tk Conference (Tcl/2k): February 14--18, 2000, Austin, Texas, USA", title = "Proceedings of the 7th {USENIX} Tcl\slash Tk Conference (Tcl/2k): February 14--18, 2000, Austin, Texas, {USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "194", year = "2000", ISBN = "1-880446-24-3", ISBN-13 = "978-1-880446-24-9", LCCN = "????", bibdate = "Wed Oct 16 09:54:12 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://db.usenix.org/publications/library/proceedings/tcl2k/", acknowledgement = ack-nhfb, } @Proceedings{USENIX:2000:UAT, editor = "{USENIX}", booktitle = "2000 USENIX Annual Technical Conference: San Diego, CA, USA, June 18--23, 2000", title = "2000 {USENIX} Annual Technical Conference: San Diego, {CA}, {USA}, June 18--23, 2000", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "350", year = "2000", ISBN = "1-880446-22-7", ISBN-13 = "978-1-880446-22-5", LCCN = "????", bibdate = "Mon Oct 14 07:43:52 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/usenix2000", acknowledgement = ack-nhfb, } @Proceedings{ACM:2001:ASS, editor = "{ACM}", booktitle = "ACM SIGPLAN--SIGSOFT workshop on Program analysis for software tools and engineering: June 18--19, 2001, Snowbird, Utah, USA: PASTE'01", title = "{ACM} {SIGPLAN}--{SIGSOFT} workshop on Program analysis for software tools and engineering: June 18--19, 2001, Snowbird, Utah, {USA}: {PASTE}'01", publisher = pub-ACM, address = pub-ACM:adr, pages = "viii + 104", year = "2001", ISBN = "1-58113-413-4", ISBN-13 = "978-1-58113-413-1", LCCN = "QA76.758 .A345 2001", bibdate = "Thu Aug 30 08:01:24 MDT 2001", bibsource = "http://www.acm.org/pubs/contents/proceedings/series/paste/; https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Supplement to ACM SIGPLAN Notices.", acknowledgement = ack-nhfb, } @Proceedings{ACM:2001:PAJ, editor = "{ACM}", booktitle = "Proceedings of the {ACM 2001 Java Grande\slash ISCOPE Conference: Palo Alto, Calif., June 2--4, 2001}", title = "Proceedings of the {ACM 2001 Java Grande\slash ISCOPE Conference: Palo Alto, Calif., June 2--4, 2001}", publisher = pub-ACM, address = pub-ACM:adr, pages = "vi + 186", year = "2001", ISBN = "1-58113-359-6", ISBN-13 = "978-1-58113-359-2", LCCN = "QA76.9.O35 A26 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, keywords = "Java (computer program language) -- congresses; object-oriented methods (computer science) -- congresses", } @Proceedings{ACM:2001:SHP, editor = "{ACM}", booktitle = "SC2001: High Performance Networking and Computing. Denver, CO, November 10--16, 2001", title = "{SC2001}: High Performance Networking and Computing. Denver, {CO}, November 10--16, 2001", publisher = pub-ACM # " and " # pub-IEEE, address = pub-ACM:adr # " and " # pub-IEEE:adr, pages = "????", year = "2001", ISBN = "1-58113-293-X", ISBN-13 = "978-1-58113-293-9", LCCN = "????", bibdate = "Thu Feb 21 18:29:36 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Proceedings{ACM:2001:SPJ, editor = "{ACM}", booktitle = "{SIGMETRICS '2001\slash PERFORMANCE '2001 Joint International Conference on Measurement and Modeling of Computer Systems: proceedings}", title = "{SIGMETRICS '2001\slash PERFORMANCE '2001 Joint International Conference on Measurement and Modeling of Computer Systems: proceedings}", volume = "29(1)", publisher = pub-ACM, address = pub-ACM:adr, pages = "347", month = jun, year = "2001", ISBN = "1-58113-334-0", ISBN-13 = "978-1-58113-334-9", LCCN = "QA76.9.E94; Internet", bibdate = "Tue Oct 24 10:25:39 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", note = "ACM order number 488010.", series = j-SIGMETRICS, acknowledgement = ack-nhfb, subject = "Electronic digital computers; Evaluation; Congresses; Computer networks", } @Proceedings{Anonymous:2001:JJ, editor = "Anonymous", booktitle = "{JavaOne 2001, June 7, 2001}", title = "{JavaOne 2001, June 7, 2001}", publisher = "????", address = "????", year = "2001", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Sat Nov 29 11:36:43 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Proceedings{Anonymous:2001:PJV, editor = "Anonymous", booktitle = "{Proceedings of the Java Virtual Machine Research and Technology Symposium (JVM '01) April 23--24, 2001, Monterey, California, USA}", title = "{Proceedings of the Java Virtual Machine Research and Technology Symposium (JVM '01) April 23--24, 2001, Monterey, California, USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "232", year = "2001", ISBN = "1-880446-11-1", ISBN-13 = "978-1-880446-11-9", LCCN = "????", bibdate = "Mon Apr 10 10:43:56 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.bibsys.no:2100/BIBSYS", acknowledgement = ack-nhfb, meetingname = "Java Virtual Machine Research and Technology Symposium. 2001. Monterey, Calif.", subject = "JVM", } @Proceedings{Attali:2001:JSC, editor = "Isabelle Attali and Thomas Jensen", booktitle = "{Java on smart cards: programming and security: first international workshop, JavaCard 2000, Cannes, France, September 14, 2000: revised papers}", title = "{Java on smart cards: programming and security: first international workshop, JavaCard 2000, Cannes, France, September 14, 2000: revised papers}", volume = "2041", publisher = pub-SV, address = pub-SV:adr, pages = "x + 162", year = "2001", ISBN = "3-540-42167-X (paperback)", ISBN-13 = "978-3-540-42167-2 (paperback)", LCCN = "QA76.73.J38 J3635 2000; QA267.A1 L43 no.2041", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Also available via the World Wide Web.", series = ser-LNCS, URL = "http://link.springer-ny.com/link/service/series/0558/tocs/t2041.htm", acknowledgement = ack-nhfb, keywords = "electronic texts; Java (computer program language); online resources", } @Proceedings{Attali:2001:SCP, editor = "Isabelle Attali and Thomas Jensen", booktitle = "Smart card programming and security: International Conference on Research in Smart Cards, {E}-smart 2001, Cannes, France, {September19-21}, 2001: proceedings", title = "Smart card programming and security: International Conference on Research in Smart Cards, {E}-smart 2001, Cannes, France, {September19-21}, 2001: proceedings", volume = "2140", publisher = pub-SV, address = pub-SV:adr, pages = "viii + 254", year = "2001", ISBN = "3-540-42610-8 (paperback)", ISBN-13 = "978-3-540-42610-3 (paperback)", LCCN = "TK7895.S62 I54 2001", bibdate = "Thu Jan 17 11:49:19 MST 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = ser-LNCS, URL = "http://link.springer-ny.com/link/service/series/0558/tocs/t2140.htm", acknowledgement = ack-nhfb, keywords = "Java (computer program language); smart cards", } @Proceedings{Ghosh:2001:JJT, editor = "Subdipto Ghosh", booktitle = "{Java\slash Jini technologies: 21--22 August 2001, Denver, USA}", title = "{Java\slash Jini technologies: 21--22 August 2001, Denver, USA}", volume = "4521", publisher = pub-SPIE, address = pub-SPIE:adr, pages = "vii + 154", year = "2001", ISBN = "0-8194-4245-3", ISBN-13 = "978-0-8194-4245-1", LCCN = "QA76.9.D5 J38 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "SPIE proceedings series", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing -- congresses; Java (computer program language) -- congresses; Jini congresses", } @Proceedings{UC:2001:EIU, editor = "{Unicode Consortium}", booktitle = "Eighteenth International Unicode Conference (IUC18) Unicode and the Web: the Global Connection, April 24--27, 2001, Hong Kong", title = "Eighteenth International Unicode Conference ({IUC18}) Unicode and the Web: the Global Connection, April 24--27, 2001, Hong Kong", publisher = pub-UNICODE, address = pub-UNICODE-SAN-JOSE:adr, pages = "????", year = "2001", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Mon Jan 22 12:20:01 2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.unicode.org/iuc/iuc18", acknowledgement = ack-nhfb, } @Proceedings{USENIX:2001:PJV, editor = "{USENIX Association}", booktitle = "Proceedings of the {Java Virtual Machine Research and Technology Sy[m]posium (JVM '01): April 23--24, 2001, Monterey, California, USA}", title = "Proceedings of the {Java Virtual Machine Research and Technology Sy[m]posium (JVM '01): April 23--24, 2001, Monterey, California, USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "232", year = "2001", ISBN = "1-880446-11-1", ISBN-13 = "978-1-880446-11-9", LCCN = "QA76.73.J38 J42 2001", bibdate = "Mon May 6 06:26:30 MDT 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Sponsored by the USENIX Association", URL = "http://www.usenix.org/events/jvm01/", acknowledgement = ack-nhfb, keywords = "Java (computer program language) -- congresses; Java virtual machine congresses", } @Proceedings{USENIX:2001:PUC, editor = "{USENIX}", booktitle = "Proceedings of the 6th USENIX Conference on Object-Oriented Technologies and Systems, January 29--February 2, 2001, San Antonio, Texas, USA", title = "Proceedings of the 6th {USENIX} Conference on Object-Oriented Technologies and Systems, January 29--February 2, 2001, San Antonio, Texas, {USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "202", year = "2001", ISBN = "1-880446-12-X", ISBN-13 = "978-1-880446-12-6", LCCN = "????", bibdate = "Tue Oct 15 18:08:16 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings/coots01/", acknowledgement = ack-nhfb, keyword = "COOTS'01", } @Proceedings{USENIX:2001:UJV, editor = "{USENIX}", booktitle = "{Usenix Java Virtual Machine Research and Technology Symposium (JVM '01)}", title = "{Usenix Java Virtual Machine Research and Technology Symposium (JVM '01)}", publisher = pub-USENIX, address = pub-USENIX:adr, month = apr, year = "2001", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", } @Proceedings{Anonymous:2002:MIC, editor = "Anonymous", booktitle = "{MathML} International Conference: Hickory Ridge Conference Center, Chicago, IL, USA, June 28--30, 2000", title = "{MathML} International Conference: Hickory Ridge Conference Center, Chicago, {IL}, {USA}, June 28--30, 2000", publisher = "????", address = "????", pages = "????", year = "2002", ISBN = "????", ISBN-13 = "????", LCCN = "????", bibdate = "Tue May 14 15:55:32 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.mathmlconference.org/2002/presentations.html", acknowledgement = ack-nhfb, } @Proceedings{Arnold:2002:JJT, editor = "Ken Arnold and Guang R. Gao and Sudipto Ghosh", booktitle = "{Java\slash Jini} technologies and high-performance pervasive computing: {30 July and 1 August, 2002, Boston, [Massachusetts] USA}", title = "{Java\slash Jini} technologies and high-performance pervasive computing: {30 July and 1 August, 2002, Boston, [Massachusetts] USA}", number = "4863", publisher = pub-SPIE, address = pub-SPIE:adr, pages = "vii + 148", year = "2002", ISBN = "0-8194-4642-4", ISBN-13 = "978-0-8194-4642-8", LCCN = "QA76.9.D5 J38 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "SPIE proceedings series", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing congresses; Java (computer program language) congresses; Jini congresses", } @Proceedings{Chaudhri:2002:JD, editor = "Akmal B. Chaudhri", booktitle = "{Java} and databases", title = "{Java} and databases", publisher = "Hermes Penton Science", address = "London, UK", pages = "ix + 128", year = "2002", ISBN = "1-903996-15-5", ISBN-13 = "978-1-903996-15-7", LCCN = "QA76.73.J38 J38 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Based on revised papers submitted to the OOPSLA '99 workshop on ``Java and Databases: Persistence Options'', held in Denver, Colorado, in November 1999.", series = "Innovative technology series: information systems and networks", acknowledgement = ack-nhfb, keywords = "database management congresses; Java (computer program language) congresses; object-oriented programming (computer science) congresses", } @Proceedings{IEEE:2002:STI, editor = "{IEEE}", booktitle = "{SC2002}: From Terabytes to Insight. Proceedings of the {IEEE ACM SC 2002 Conference, November 16--22, 2002, Baltimore, MD, USA}", title = "{SC2002}: From Terabytes to Insight. Proceedings of the {IEEE ACM SC 2002 Conference, November 16--22, 2002, Baltimore, MD, USA}", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "????", year = "2002", ISBN = "0-7695-1524-X", ISBN-13 = "978-0-7695-1524-3", LCCN = "????", bibdate = "Thu Feb 21 18:29:36 2002", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Proceedings{IEEE:2002:WII, editor = "{IEEE}", booktitle = "{WWC-5: 2002 IEEE International Workshop on Workload Characterization: November 25, 2002, Austin, Texas}", title = "{WWC-5: 2002 IEEE International Workshop on Workload Characterization: November 25, 2002, Austin, Texas}", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "vi + 140", year = "2002", ISBN = "0-7803-7681-1", ISBN-13 = "978-0-7803-7681-6", LCCN = "QA76.9.S88; QA76.9.S88 W67 2002eb; Internet", bibdate = "Tue Oct 24 10:16:21 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", note = "IEEE Catalog Number 02EX633.", URL = "http://ieeexplore.ieee.org/servlet/opac?punumber=8689", acknowledgement = ack-nhfb, subject = "Electronic digital computers; Workload; Congresses; System design; Computer engineering; Computer networks; Computer systems", } @Proceedings{USENIX:2002:PJV, editor = "{USENIX Association}", booktitle = "Proceedings of the {2nd Java Virtual Machine Research and Technology Symposium (JVM '02) : August 1--2, 2002, San Francisco, California, USA}", title = "Proceedings of the {2nd Java Virtual Machine Research and Technology Symposium (JVM '02) : August 1--2, 2002, San Francisco, California, USA}", publisher = pub-USENIX, address = pub-USENIX:adr, pages = "194", year = "2002", ISBN = "1-931971-01-3", ISBN-13 = "978-1-931971-01-0", LCCN = "QA76.73.J38 J42 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", URL = "http://www.usenix.org/publications/library/proceedings", acknowledgement = ack-nhfb, keywords = "Java (computer program language) congresses; Java Virtual Machine congresses", } @Proceedings{ACM:2003:SII, editor = "{ACM}", booktitle = "SC2003: Igniting Innovation. {Phoenix, AZ, November 15--21, 2003}", title = "{SC2003}: Igniting Innovation. {Phoenix, AZ, November 15--21, 2003}", publisher = pub-ACM # " and " # pub-IEEE, address = pub-ACM:adr # " and " # pub-IEEE:adr, pages = "????", year = "2003", ISBN = "1-58113-695-1", ISBN-13 = "978-1-58113-695-1", LCCN = "????", bibdate = "Thu Feb 21 18:29:36 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Proceedings{Guelfi:2003:SED, editor = "Nicolas Guelfi and E. Astesiano and Gianna Reggio", booktitle = "Scientific engineering for distributed {Java} applications: international workshop, {FIDJI 2002, Luxembourg-Kirchberg, Luxembourg, November 28--29, 2002}: revised papers", title = "Scientific engineering for distributed {Java} applications: international workshop, {FIDJI 2002, Luxembourg-Kirchberg, Luxembourg, November 28--29, 2002}: revised papers", number = "2604", publisher = pub-SV, address = pub-SV:adr, pages = "x + 204", year = "2003", ISBN = "3-540-00679-6 (softcover)", ISBN-13 = "978-3-540-00679-4 (softcover)", LCCN = "QA76.758 .F53 2002", bibdate = "Tue May 6 05:26:58 MDT 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = "Lecture notes in computer science", URL = "http://link.springer-ny.com/link/service/series/0558/tocs/t2604.htm", acknowledgement = ack-nhfb, keywords = "electronic data processing -- distributed processing -- congresses; Java (computer program language) congresses; software engineering -- congresses", } @Proceedings{IEEE:2003:LES, editor = "{IEEE}", booktitle = "Learning from Earth's shapes and sizes: proceedings / IGARSS 2003, 2003 IEEE International Geoscience and Remote Sensing Symposium, Centre de Congr{\`e}s Pierre Baudis, Toulouse, France, 21--25 July 2003", title = "Learning from Earth's shapes and sizes: proceedings / {IGARSS} 2003, 2003 {IEEE} International Geoscience and Remote Sensing Symposium, Centre de Congr{\`e}s Pierre Baudis, Toulouse, France, 21--25 July 2003", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "????", year = "2003", ISBN = "0-7803-7929-2 (softbound) 0-7803-7930-6 (CD-ROM)", ISBN-13 = "978-0-7803-7929-9 (softbound) 978-0-7803-7930-5 (CD-ROM)", LCCN = "QE33.2.R4 .I58 2003", bibdate = "Tue Dec 09 05:51:04 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "7 volumes.", acknowledgement = ack-nhfb, } @Proceedings{IEEE:2003:PCI, editor = "{ACM}", booktitle = "Proceedings of the international symposium on code generation and optimization: feedback-directed and runtime optimization", title = "Proceedings of the international symposium on code generation and optimization: feedback-directed and runtime optimization", publisher = pub-ACM, address = pub-ACM:adr, pages = "349", year = "2003", ISBN = "0-7695-1913-X", ISBN-13 = "978-0-7695-1913-5", bibdate = "Thu Jun 09 18:32:22 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "ACM Order No.: 530033", acknowledgement = ack-nhfb, keywords = "EPIC; Intel IA-64; Itanium", } @Proceedings{IEEE:2003:PSR, editor = "{IEEE}", booktitle = "Proceedings / 22nd International Symposium on Reliable Distributed Systems, 6-8 October 2003, Florence, Italy", title = "Proceedings of the Symposium on Reliable Distributed Systems, 22 October 2003, Florence, Italy", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "ix + 390", year = "2003", CODEN = "????", ISBN = "0-7695-1955-5", ISBN-13 = "978-0-7695-1955-5", ISSN = "1060-9857", LCCN = "QA76.9.D5 S94 2003", bibdate = "Tue Dec 09 05:55:00 2003", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Proceedings{ACM:2004:SHP, editor = "{ACM}", booktitle = "{SC 2004: High Performance Computing, Networking and Storage: Bridging communities: Proceedings of the IEEE\slash ACM Supercomputing 2004 Conference, Pittsburgh, PA, November 6--12, 2004}", title = "{SC 2004: High Performance Computing, Networking and Storage: Bridging communities: Proceedings of the IEEE\slash ACM Supercomputing 2004 Conference, Pittsburgh, PA, November 6--12, 2004}", publisher = pub-ACM # " and " # pub-IEEE, address = pub-ACM:adr # " and " # pub-IEEE:adr, pages = "????", year = "2004", ISBN = "0-7695-2153-3", ISBN-13 = "978-0-7695-2153-4", LCCN = "????", bibdate = "Tue Dec 27 08:08:01 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", acknowledgement = ack-nhfb, } @Book{Freeman:2004:HFD, editor = "Eric Freeman and Elisabeth Freeman and Kathy Sierra and Bert Bates", booktitle = "Head first design patterns", title = "Head first design patterns", publisher = pub-ORA, address = pub-ORA:adr, pages = "xxxvi + 638", year = "2004", ISBN = "0-596-00712-4, 0-596-00712-4", ISBN-13 = "978-0-596-00712-6, 978-0-596-00712-6", LCCN = "QA76.76.D47 H427 2004eb; QA76.76.D47 F74 2004; QA76.76.D47; QA76.76.D47 H427 2004", bibdate = "Tue Aug 5 17:43:02 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780596007126", acknowledgement = ack-nhfb, subject = "Computer software; Development; Java (Computer program language)", tableofcontents = "Welcome to design patterns \\ Keeping your objects in the know \\ Decorating objects \\ Baking with OO goodness \\ One of a kind objects \\ Encapsulating invocation \\ Being adaptive \\ Encapsulating algorithms \\ Well-managed collections \\ The state of things \\ Controlling object access \\ Patterns of patterns \\ Patterns in the real world \\ Appendix: leftover patterns", } @Proceedings{Guelfi:2004:SED, editor = "Nicolas Guelfi and Egidio Astesiano and Gianna Reggio", booktitle = "{Scientific Engineering of Distributed Java Applications: Third International Workshop, FIDJI 2003, Luxembourg-Kirchberg, Luxembourg, November 27--28, 2003: Revised Papers}", title = "{Scientific Engineering of Distributed Java Applications: Third International Workshop, FIDJI 2003, Luxembourg-Kirchberg, Luxembourg, November 27--28, 2003: Revised Papers}", volume = "2952", publisher = pub-SV, address = pub-SV:adr, pages = "x + 154", year = "2004", CODEN = "LNCSD9", DOI = "https://doi.org/10.1007/b95352", ISBN = "3-540-21091-1", ISBN-13 = "978-3-540-21091-7", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", LCCN = "QA76.758 .F53 2003", bibdate = "Tue Nov 16 06:47:40 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", series = ser-LNCS, URL = "http://link.springer-ny.com/link/service/series/0558/tocs/t2952.htm; http://www.springerlink.com/openurl.asp?genre=issue&issn=0302-9743&volume=2952; http://www.springerlink.com/openurl.asp?genre=volume&id=doi:10.1007/b95352", acknowledgement = ack-nhfb, } @Proceedings{Jacobsen:2004:MAI, editor = "Hans-Arno Jacobsen", booktitle = "{Middleware 2004: ACM\slash IFIP\slash USENIX International Middleware Conference, Toronto, Canada, October 18--22, 2004: proceedings}", title = "{Middleware 2004: ACM\slash IFIP\slash USENIX International Middleware Conference, Toronto, Canada, October 18--22, 2004: proceedings}", volume = "3231", publisher = pub-SV, address = pub-SV:adr, pages = "xv + 514", year = "2004", CODEN = "LNCSD9", DOI = "https://doi.org/10.1007/b101561", ISBN = "3-540-23428-4 (softcover)", ISBN-13 = "978-3-540-23428-9 (softcover)", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", LCCN = "QA76.76.M54 I33 2004", bibdate = "Sat Jun 4 05:55:16 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = ser-LNCS, URL = "ftp://uiarchive.cso.uiuc.edu/pub/etext/gutenberg/; http://www.springerlink.com/openurl.asp?genre=issue&issn=0302-9743&volume=3231; http://www.springerlink.com/openurl.asp?genre=volume&id=doi:10.1007/b101561", acknowledgement = ack-nhfb, meetingname = "ACM/IFIP/USENIX International Middleware Conference (2004 : Toronto, Ont.)", subject = "Middleware; Congresses; Electronic data processing; Distributed processing; Congresses", } @Proceedings{Syropoulos:2004:TXD, editor = "Apostolos Syropoulos and Karl Berry and Yannis Haralambous and Baden Hughes and Steven Peter and John Plaice", booktitle = "{{\TeX}, XML, and Digital Typography: International Conference on \TeX, XML, and Digital Typography, held jointly with the 25th Annual Meeting of the \TeX{} Users Group, TUG 2004, Xanthi, Greece, August 30--September 3, 2004: Proceedings}", title = "{{\TeX}, XML, and Digital Typography: International Conference on \TeX, XML, and Digital Typography, held jointly with the 25th Annual Meeting of the \TeX{} Users Group, TUG 2004, Xanthi, Greece, August 30--September 3, 2004: Proceedings}", volume = "3130", publisher = pub-SV, address = pub-SV:adr, pages = "viii + 263", year = "2004", CODEN = "LNCSD9", DOI = "https://doi.org/10.1007/b99374", ISBN = "3-540-22801-2 (paperback)", ISBN-13 = "978-3-540-22801-1 (paperback)", ISSN = "0302-9743 (print), 1611-3349 (electronic)", LCCN = "Z253.3 I58 2004", bibdate = "Tue Nov 16 08:40:30 2004", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/lncs.bib; https://www.math.utah.edu/pub/tex/bib/master.bib; https://www.math.utah.edu/pub/tex/bib/texbook3.bib; https://www.math.utah.edu/pub/tex/bib/texgraph.bib", series = ser-LNCS, URL = "http://link.springer-ny.com/link/service/series/0558/tocs/t3130.htm; http://www.springerlink.com/openurl.asp?genre=issue&issn=0302-9743&volume=3130; http://www.springerlink.com/openurl.asp?genre=volume&id=doi:10.1007/b99374", acknowledgement = ack-nhfb, tableofcontents = "Digital Typography in the New Millennium: Flexible Documents by a Flexible Engine / Christos K. K. Loverdos and Apostolos Syropoulos / 1--16 \\ Moving $\Omega$ to an Object-Oriented Platform / John Plaice, Yannis Haralambous, Paul Swoboda, and G{\'a}bor Bella / 17--26 \\ Basque: A Case Study in Generalizing LaTeX Language Support / Jagoba Arias P{\'e}rez, Jes{\'u}s L{\'a}zaro, and Juan M. Aguirregabiria / 27--33 \\ $\mu o \nu o 2 \pi o \lambda \nu$: Java-Based Conversion of Monotonic to Polytonic Greek / Johannes Likos / 34--54 \\ Using LaTeX to Typeset a Mar{\=a}{\d{t}}h{\=\i}--English Dictionary / Manasi Athale and Rahul Athale / 55--58 \\ Hyphenation Patterns for Ancient and Modern Greek / Dimitrios Filippou / 59--67 \\ Typesetting the Deseret Alphabet with LaTeX and METAFONT / Kenneth R. Beesley / 68--111 \\ FEATPOST and a Review of 3D METAPOST Packages / Luis Nobre Gon{\c{c}}alves / 112--124 \\ Interactive Editing of MathML Markup Using TeX Syntax / Luca Padovani / 125--139 \\ Typesetting CJK Languages with $\Omega$ / Jin-Hwan Cho / 139--139 \\ Dynamic Arabic Mathematical Fonts / Mustapha Eddahibi, Azzeddine Lazrek, and Khalid Sami / 149--157 \\ Arabic Mathematical e-Documents / Mustapha Eddahibi, Azzeddine Lazrek, and Khalid Sami / 158--168 \\ Migrating to XML: The Case of the GUST Bulletin Archive / W{\l}odzimierz Bzyl and Tomasz Przechlewski / 169--178 \\ Animations in pdfTeX-Generated PDF / Jan Hole{\c{c}}ek and Petr Sojka / 179--191 \\ iTeXMac: An Integrated TeX Environment for Mac OS X / J{\'e}r{\^o}ne Laurens / 192--202 \\ MlBibTeX: Beyond LaTeX / Jan-Michel Hufflen / 203--215 \\ Managing TeX Resources with XML Topic Maps / Tomasz Przechlewski / 216--228 \\ {\c{S}}{\"a}ferTeX: Source Code Esthetics for Automated Typesetting / Frank-Rene Schaefer / 229--239 \\ Creating Type 1 Fonts from metafont Sources / Karel P{\'\i}{\v{s}}ka / 240--256 \\ Beyond Glyphs, Advanced Typographic Features of Fonts / George Williams / 257--263 \\ Author Index / / 256--256", } @Proceedings{ACM:2005:PFA, editor = "{ACM}", booktitle = "{Proceedings of the First ACM\slash USENIX International Conference on Virtual Execution Environments: VEE '05: June 11--12, 2005, Chicago, Illinois, USA}", title = "{Proceedings of the First ACM\slash USENIX International Conference on Virtual Execution Environments: VEE '05: June 11--12, 2005, Chicago, Illinois, USA}", publisher = pub-ACM, address = pub-ACM:adr, pages = "viii + 208", year = "2005", ISBN = "1-59593-047-7", ISBN-13 = "978-1-59593-047-7", LCCN = "QA76.9.V5 I575 2005", bibdate = "Sat Oct 14 15:31:34 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90; z3950.loc.gov:7090/Voyager", note = "ACM order number 548059.", URL = "http://www.loc.gov/catdir/toc/fy0611/2006530661.html", acknowledgement = ack-nhfb, meetingname = "International Conference on Virtual Execution Environments (1st: 2005: Chicago, IL)", subject = "Virtual computer systems; Congresses", } @Proceedings{Guelfi:2005:SED, editor = "Nicolas Guelfi and Gianna Reggio and Alexander Romanovsky", booktitle = "{Scientific Engineering of Distributed Java Applications: 4th International Workshop, FIDJI 2004, Luxembourg-Kirchberg, Luxembourg, November 24--25, 2004. Revised selected papers}", title = "{Scientific Engineering of Distributed Java Applications: 4th International Workshop, FIDJI 2004, Luxembourg-Kirchberg, Luxembourg, November 24--25, 2004. Revised selected papers}", volume = "3409", publisher = pub-SV, address = pub-SV:adr, pages = "x + 122", year = "2005", CODEN = "LNCSD9", DOI = "https://doi.org/10.1007/b106620", ISBN = "3-540-25053-0 (soft cover)", ISBN-13 = "978-3-540-25053-1 (soft cover)", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", LCCN = "QA76.758 .F53 2004", bibdate = "Thu Jun 2 09:14:54 MDT 2005", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; z3950.loc.gov:7090/Voyager", series = ser-LNCS, URL = "http://www.springerlink.com/openurl.asp?genre=issue&issn=0302-9743&volume=3409; http://www.springerlink.com/openurl.asp?genre=volume&id=doi:10.1007/b106620", acknowledgement = ack-nhfb, } @Proceedings{Skeie:2005:PIC, editor = "Tor Skeie and Chu-Sing Yang and others", booktitle = "{Proceedings: 2005 International Conference on Parallel Processing Workshops, 14--17 June 2005, Oslo, Norway}", title = "{Proceedings: 2005 International Conference on Parallel Processing Workshops, 14--17 June 2005, Oslo, Norway}", publisher = pub-IEEE, address = pub-IEEE:adr, pages = "xv + 623", year = "2005", ISBN = "0-7695-2381-1", ISBN-13 = "978-0-7695-2381-1", LCCN = "QA76.58; QA76.58 .I34 2005", bibdate = "Tue Oct 24 09:52:24 MDT 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", note = "IEEE Computer Society order number P2381.", URL = "http://ieeexplore.ieee.org/servlet/opac?punumber=9965", acknowledgement = ack-nhfb, meetingname = "International Conference on Parallel Processing Workshops (2005 : Oslo, Norway)", remark = "Includes proceedings from the 1st Workshop on Web and Grid Services for Scientific Data Analysis (WAGSSDA), the 7th Workshop on High Performance Scientific and Engineering Computing (HPSEC), the 2nd International Workshop on Embedded Computing (IWEC), the 4th Workshop on Compile and Runtime Techniques for Parallel Computing (CRTPC), the Workshop on Wireless and Sensor Networks (WSNET), the 1st Workshop on Performance Evaluation of Networks for Parallel, Cluster and Grid Computing Systems (PEN-PCGCS), and the 1st Workshop on Parallel Bioinspired Algorithms.", subject = "Parallel processing (Electronic computers); Congresses; Electronic data processing; Distributed processing", } @Proceedings{ACM:2006:PCC, editor = "{ACM}", booktitle = "{Proceedings of the 3rd conference on Computing Frontiers, May 3--5, 2006, Ischia, Italy}", title = "{Proceedings of the 3rd conference on Computing Frontiers, May 3--5, 2006, Ischia, Italy}", publisher = pub-ACM, address = pub-ACM:adr, year = "2006", ISBN = "1-59593-302-6", ISBN-13 = "978-1-59593-302-7", LCCN = "????", bibdate = "Tue Jun 20 06:45:04 2006", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "ACM order number 104060.", acknowledgement = ack-nhfb, } @Book{Ford:2006:NFJ, editor = "Neal Ford", booktitle = "No fluff, just stuff anthology: the 2006 edition", title = "No fluff, just stuff anthology: the 2006 edition", publisher = pub-PRAGMATIC-BOOKSHELF, address = pub-PRAGMATIC-BOOKSHELF:adr, pages = "xi + 240", year = "2006", ISBN = "0-9776166-6-5 (paperback)", ISBN-13 = "978-0-9776166-6-4 (paperback)", LCCN = "QA76.76.D47 N646 2006", bibdate = "Tue Aug 5 18:16:05 MDT 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; melvyl.cdlib.org:210/CDL90", URL = "http://www.oreilly.com/catalog/9780977616664", acknowledgement = ack-nhfb, remark = "Pragmatic Programmers. First printing, June 2006. Version 2006-5-8.", subject = "Computer software; Development; Application software; Java (Computer program language); Web site development; Software engineering", tableofcontents = "Real world web services / Scott Davis \\ DSLs and language-oriented programming / Neal Ford \\ Shale / David Geary \\ Test categorization techniques / Andrew Glover \\ Spring AOP / Stuart Halloway \\ Dependency management / Kirk Knoernschild \\ Process choreography and the enterprise service bus / Mark Richards \\ The cornerstone of a great shop / Jared Richardson \\ Help! I've inherited legacy code! / Jared Richardson \\ Using code coverage to improve testing effectiveness / Ian Roughley \\ Extreme decorator : total object makeover / Brian Sletten \\ From fragility to agility : methodologies and practices / Venkat Subramaniam \\ The many guises of method instrumentation / Eitan Suez \\ CSS : a programmer's perspective / Eitan Suez \\ Buried treasure / Glenn Vanderburg", } @Proceedings{Beckert:2007:VOO, editor = "Bernhard Beckert and Reiner H{\"a}hnle and Peter H. Schmitt", booktitle = "{Verification of Object-Oriented Software. The KeY Approach}", title = "{Verification of Object-Oriented Software. The KeY Approach}", volume = "4334", publisher = pub-SV, address = pub-SV:adr, pages = "626 (est.)", year = "2007", CODEN = "LNCSD9", DOI = "https://doi.org/10.1007/978-3-540-69061-0", ISBN = "3-540-68977-X (print), 3-540-69061-1 (e-book)", ISBN-13 = "978-3-540-68977-5 (print), 978-3-540-69061-0 (e-book)", ISSN = "0302-9743 (print), 1611-3349 (electronic)", ISSN-L = "0302-9743", LCCN = "????", bibdate = "Wed Dec 19 15:24:46 MST 2012", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/lncs.bib", note = "Foreword by K. Rustan M. Leino.", series = ser-LNCS, URL = "http://www.springerlink.com/content/978-3-540-69061-0", acknowledgement = ack-nhfb, keywords = "KeY tool for Java", } @Proceedings{Simos:2007:CMS, editor = "Theodore E. Simos and George Maroulis", booktitle = "{Computation in Modern Science and Engineering: Proceedings of the International Conference on Computational Methods in Science and Engineering 2007 (ICCMSE 2007), Corfu, Greece, 25--30 September 2007}", title = "{Computation in Modern Science and Engineering: Proceedings of the International Conference on Computational Methods in Science and Engineering 2007 (ICCMSE 2007), Corfu, Greece, 25--30 September 2007}", volume = "2A", publisher = pub-AIP, address = pub-AIP:adr, pages = "xxvi + 730 + 10 (vol. 2A)", year = "2007", ISBN = "0-7354-0476-3 (set), 0-7354-0477-1 (vol. 1), 0-7354-0478-X (vol. 2)", ISBN-13 = "978-0-7354-0476-2 (set), 978-0-7354-0477-9 (vol. 1), 978-0-7354-0478-6 (vol. 2)", LCCN = "Q183.9 2007", bibdate = "Thu Feb 21 14:15:15 2008", bibsource = "https://www.math.utah.edu/pub/tex/bib/java2000.bib", note = "Two volumes.", acknowledgement = ack-nhfb, } @Proceedings{Lenzerini:2008:PTS, editor = "Maurizio Lenzerini and Domenico Lembo", booktitle = "{Proceedings of the Twenty-Seventh ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems: PODS'08, Vancouver, BC, Canada, June 9--11, 2008}", title = "{Proceedings of the Twenty-Seventh ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems: PODS'08, Vancouver, BC, Canada, June 9--11, 2008}", publisher = pub-ACM, address = pub-ACM:adr, pages = "xi + 313", year = "2008", ISBN = "1-60560-932-3", ISBN-13 = "978-1-60560-932-4", LCCN = "????", bibdate = "Fri Jun 20 13:10:29 MDT 2008", bibsource = "https://www.math.utah.edu/pub/bibnet/authors/h/hoare-c-a-r.bib; https://www.math.utah.edu/pub/tex/bib/java2000.bib; https://www.math.utah.edu/pub/tex/bib/pods.bib; z3950.loc.gov:7090/Voyager", acknowledgement = ack-nhfb, xxISBN = "1-59593-685-8", xxisbn-13 = "978-1-59593-685-1", xxnote = "There is library confusion about the ISBN: I found 1-60558-152-6 (tagged invalid in catalog), 1-605-60932-3, 1-59593-685-9, 1-59593-685-X (invalid checksum).", }