ProLangs Java Reading List

    Analysis

  1. Grove, Chambers, "Fast Interproceudral Class Analysis", POPL98
  2. Grove, DeFauw, Dean, Chambers, "Call Graph Construction in OO Languages", OOPSLA'97. related to Defauw, Grove, Chambers, "Fast Interproceudral Class Analysis", POPL98 (related to #2)
  3. Snelting and Tip, "Reengineering Class Hiearchies Using Concept Analysis", FSE 98
  4. Dean, Defouw, Grove, Litinov, Chambers, "Vortex, An Optimizing Compiler for Object-Oriented Languages", more info at http://www.cs.washington.edu/research/projects/cecil
  5. Chambers, Dean, Grove, "Whole-Program Optimization of Object-Oriented Languages", UW TR 96-06-02

    Applications

  6. R.A. Milowski and P. Bother. The Kawa Scheme interpreter project.
  7. http://www.copsol.com/sgmlimpl/tools/kawa/, 1996.
  8. KB Sriram. Free tools for java. http://www.sbktech.org/, 1996.
  9. Larsen and Harrold, "Slicing object-oriented software", ICSE'96. (program representation for polymorphism)

    Computational Science

  10. Martin Karrenbach, Matthias Jacob, and Michael Philippsen. Parallelizing Large-Scale Geophysical Algorithms in Java In SIAM Fourth International Conference on Mathematical and Numerical Aspects of Wave Propagation, Golden, Colorado, June 1-5, 1998
  11. Michael Philippsen, Is Java ready for computational science? In Euro-PDS'98, 2nd European Parallel and Distributed Systems Conference, pages 299-304 Vienna, Austria, July 1-3, 199
  12. Michael Philippsen. Data Parallelism in Java In High Performance Computing Systems and Applications, Kluwer Academic Publishers, Boston, Dordrecht, London, 1998, to appear (12th International Symposium on High Performance Computing Systems and Applications (HPCS'98), Edmonton, Canada, May 20 - 22, 1998)

    Design of Programming Languages

  13. Martin Odersky and Philip Wadler, "Pizza into Java: Translating theory into practice", 24th Symposium on Principles of Programming Languages (POPL97), January 1997.
  14. John Boyland and Guiseppe Castagna, "Parasitic Methods: An Implementation of Multi-Methods for Java", OOPSLA'97 Conference Proceedings, pages 66-76, Atlanta GA.
  15. Frank Yellin, "Low Level Security in Java", Sun Microsystems white paper, 1996. http://java.sun.com/sfaq/verifier.html
  16. M. Franz and T. Kistler, "Does Java Have Alternatives?" in D.J. Richardson and D. Wile (Eds.), Proceedings of the Third California Software Symposium (CSS'97), Irvine, California, 5-10; November 1997.

    Dynamic Compiling

  17. Michael P. Plezbert and Ron K. Cytron, "Does Just in Time" = "Better Late than Never", in Proceedings of POPL'97, pp 120-131, Paris, France, 1997.
  18. Michael P. Plezbert. Continuous compilation for software development and mobile computing. Master's thesis. Washington University, 1996. http://www.cs.wustl.edu/~plezbert/contcom/thesis/thesis-main.html
  19. Thomas Kistler. "Dynamic Runtime Optimization". In Proceedings of the Joint Modular Languages Conference, JMLC'97, pp 53-66. Published as Springer Lecture Notes in Computer Science No. 1204, March 1997. Also published as Technical Report No. 96-54, Department of Information and Computer Science, University of California, Irvine, November 1996. [ps or pdf].

    Exceptions

  20. Schilling, "Optimizing Away C++ Exception Handling", SIGPLAN 8/98
  21. Ertl, Krall, "Delayed Exceptions - Speculative Execution of Trapping Instructions", CC 94

    Just in Time Compiling

  22. "Toba: Java for Applications: A Way Ahead of Time (WAT) Compiler" by Todd A. Proebsting, Gregg Townsend, Patrick Bridges, John H. Hartman, Tim Newsham, and Scott A. Watterson, Tech Report 97-01, Department of Computer Science, 1997.
  23. Andreas Krall and Reinhard Grafl (Technische Universität Wien ), "CACAO - A 64-bit JavaVM Just-in-Time Compiler", in 3rd Conference on Object-Oriented Technologies and Systems (COOTS'97), June 1997.
  24. Gilles Muller, Barbara Moura, Fabrice Bellard, and Charles Consel (IRISA/INRIA-University of Rennes) , "Harissa: a Flexible and Efficient Java Environment Mixing Bytecode and Compiled Code", in 3rd Conference on Object-Oriented Technologies and Systems (COOTS'97), June 1997.
  25. Softway. Introduction to Guava. URL: http://www2.softway.com.au/index.html
  26. Kaffe is a Java Environement including a JIT

    Low Power

  27. H. Mehta, R. Owens, and M.J. Irwin, "Instruction level power profiling," Proc. International Conf. Acoustics, Speech and Signal Processing, 1996.
  28. A. Kalambur and M. J. Irwin, "An extended addressing mode for low power," Proc. International Symp. Low Power Electronics and Design, pp. 208-213, August 1997.

    Native Code

  29. Hsieh, Conte, Johnson, Gyllenhall, Hwu, "Optimizing NET Compilers for Improved Java Performance", IEEE Computer June 97
  30. Seshadri, "IBM high performance compiler for java", AIXpert 9/97 (an optimizing native code compiler for java applications") from http://www.alphaWorks.ibm.com/formuals.nsf (search native compiler)
  31. "Java Bytecode to Native Code Translation: The Caffeine Prototype and Preliminary Results" by Cheng-Hsueh A. Hsieh, John C. Gyllenhaal, and Wen-mei W. Hwu, Proceedings of the 29th International Symposium on Microarchitecture, December 1996.
  32. T. Keishiro. J2c Java .class to C translator. URL: http://www.webcity.co.jp/info/andoh/java/j2c.html

    Threads

  33. Philippsen, "Imperative Concurrent OO Languages" (a survey).
  34. Corbett, "constructing compact models of concurrent java programs", issta'98.
  35. Bell and Parr, "Java for students", chapter 25: threads (we may need chap 6 on events too)
  36. Decker and Hirschfield, "Programming Java: an intro to programming using java", ch 11 on threads.

    Transformations

  37. Sweeney and Tip, "Class hierarchy specialization", OOPSLA'97
  38. Moreira, Midkiff, Gupta, "From Flop to Megaflops: java for technical computing", IBM research report RC21166 (LCPC'98?)
  39. Midkiff, Moreira, Snir, "Optimizing Array Reference Checking in Java Programs", IBM research report RC21184
  40. Tom R. Halfhil, "How to Soup Up Java", Byte Magazine, pages 60-74, May 1998.
  41. Pendragon Software. Caffeinemark 2.5. URL: http://www.webfayre.com/pendragon/cm2/index.html
  42. Michael Franz and Thomas Kistler, "Slim Binaries", In Communications of the ACM, 40(12), pp 87-94; December 1997. Also published as Technical Report No. 96-24, Department of Information and Computer Science, University of California, Irvine; June 1996. [ps or pdf].

    Miscellaneous

  43. J. Leach. John's Java page. http://lenna.easynet.it/~jhl/java.html , 1996.
  44. Java OS White Paper
  45. preEmptive solutions