LOOME

Computer Science Department
University of Illinois at Urbana-Champaign

The LOOME Research Group

Welcome to LOOME, the Language tOOls for Modularity and Efficiency group at UIUC!

LOOME works on programming language technologies that can help improve programmer productivity and program quality.

Our major emphasis is on tools for producing run-time code generators. Leveraging techniques from the study of functional languages - especially, the use of higher-order functions - we are able to make program both highly generic and very efficient. Our view is that run-time program generation (RTPG) can not only make programs run more quickly, but can make traditional compile-time code generation methods more widely available and easier to use.

Most of our work is centered on Jumbo, a compiler for a two-level version of Java. Jumbo compiles full Java 2.0. Code generators are defined by placing Java source code in quotes; such quoted code is partially compiled when first seen and then fully compiled at run time. Such quoted code can contain "holes" that are filled in at run time; for example, a fragment of code might have a missing statement in the middle. These holes are eventually filled with other pieces of quoted Java code (which can in turn contain holes). Jumbo provides a very general mechanism in the sense that virtually any Java code can be put in quotes and virtually any Java fragment of the correct syntactic type can be used to fill in the holes.

    Last updated on Wed Aug 17 22:25:59 CDT 2005 .