W
I am currently working on the problem of analyzing object-oriented programs to find binary relations on program variables. These relations can be used by the compiler to justify a variety of optimizations, and can also be used by the programmer to improve code understanding. Class-invariant binary relations are especially important in object-oriented programs, and I have developed a method for identifying them. My research prototype is a system that analyzes Java bytecode to identify class invariants.
Webber, Adam Brooks. Formal Language: A Practical Introduction. To be published by Franklin, Beedle & Associates, Inc., 2006.
Webber, Adam Brooks. Modern Programming Languages: A Practical Introduction. ISBN 1-887902-76-7. Franklin, Beedle & Associates, Inc., 2003.
Webber, Adam Brooks. What is a class invariant? In: Proceedings of the 2001 ACM SIGPLAN - SIGSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE '01), (Snowbird, Utah, June 18-19, 2001), pp. 86-89. Author version.
Webber, Adam Brooks. Program analysis using binary relations. In: Proceedings of the ACM SIGPLAN '97 Conference on Programming Language Design and Implementation, (Las Vegas, Nevada, June 15-18, 1997), pp. 249-260. Definitive copy. Author version, © 1997 ACM, Inc., included here by permission; the author version may not be redistributed.
Webber, Adam Brooks. The Pascal Trainer. In: Proceedings of the twenty-seventh SIGCSE technical symposium on computer science education, (SIGCSE '96, Philadelphia, Pennsylvania, Feb. 15-18, 1996), pp. 261-265. Definitive copy. Author version, © 1996 ACM, Inc., included here by permission; the author version may not be redistributed.
Webber, Adam Brooks. Fluent Pascal: The Pascal Trainer Laboratory Guide. ISBN 0-07-068834-6. McGraw-Hill, 1996.
Webber, Adam Brooks. Proof of the interval satisfiability conjecture. Annals of Mathematics and Artificial Intelligence, 15(II), 1995, pp. 231-238. Author version.
Webber, Adam Brooks. Optimization of functional programs by grammar thinning. ACM Transactions on Programming Languages and Systems, 17(2), Mar. 1995, pp. 293-339. Definitive copy. Author version, © 1995 ACM, Inc., included here by permission; the author version may not be redistributed.
Webber, Adam Brooks. Principled optimization of functional programs, extended abstract. In: Proceedings of the Fifth International Workshop on Graph Grammars and their Application to Computer Science, (Williamsburg, Virginia, Nov. 13-18, 1994), pp. 224-229.
Webber, Adam Brooks. Principled optimization of functional programs. Ph.D. thesis, Cornell University, Aug. 1993. UMI number 9406123.
Webber, Adam Brooks. A formal definition of unnecessary computation in functional programs. Technical report TR 92-1260, Cornell University, Jan. 1992.
Webber, Adam Brooks. Relational constraint: a fast semantic analysis technique. Technical report TR 92-1319, Cornell University, Dec. 1992.
Webber, Adam Brooks. Thinning context-free languages. Technical Report TR 92-1318, Cornell University, Dec. 1992.
Program analysis using binary relations. Computer science seminar. University of Wisconsin-Milwaukee, December 8, 2000.
Analysis of class invariant binary relations. Dagstuhl Seminar on Program Analysis. Hanne Riis Nielson and Mooly Sagiv, eds. Schloss Dagstuhl, Wadern, Germany. Apr. 12-16, 1999. Seminar No. 99151, Report No. 236.
Class-invariant assertions in object-oriented programs. NSF grant CCR-0073070, $187,272. Oct. 1, 2000 to Sept. 30, 2003.
A trainer for rudimentary algorithmic fluency. NSF grant DUE-9653269, $148,246. Mar. 1, 1997 to Feb. 29, 2000.