Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456 Ulrik Pagh Schultz's Home Page
Ulrik Pagh Schultz
Currently (2000-) research associate professor (forskningslektor) at DAIMI (the department of computer
science at Aarhus University), in
Aarhus, Denmark. I'm working in the object-oriented group, and I
currently take part in the activities at the Alexandra Institute.
Object-oriented programming for low-end embedded systems. I'm
currently working on extending the JEPES
project to make it usable for other research projects (see LCTES'03
paper below).
Real-time Java. I participate in the Real-Time Java for Embedded Systems
Forum (currently investigating hardware support for Real-Time Java
using the Systronix aJile
euroboard (SaJe) equipped with an aJile-100 native Java
processor).
JavaCard. SmartCards are becoming more and more popular, and Java
is one option for programming these devices. However, resources
(processor power and memory) are very limited. I've investigated code
compression for such devices (see TOPLAS'00 paper below).
Partial evaluation and object-oriented programming. Specifically,
the former applied to the latter, which is the subject of my PhD
thesis. I focus on the Java
language, and on consolidating partial evaluation with object-oriented
concepts. A first prototype of my partial evaluator for Java, JSpec,
is accessible from the JSpec home page.
There are some papers describing some of the work that I've done in
this area, accessible below.
Specifically, I work with partial evaluation of imperative languages,
object-oriented programming, design patterns and object component
architectures.
The Harissa
environment, for efficiently executing optimized Java programs in an
environment of mixed binary, pre-compiled code, and dynamically
loaded, interpreted code (see IEEE Software paper below for details). I currently use Harissa for experiments with partial
evaluation of Java programs, also explained in
below. I'm the maintainer of Harissa.
Block structure. Block structure stands at the base of most
modern programming languages. Lambda-lifting is a well-known
transformation that removes block-structure, making programs flat.
The inverse transformation, dubbed lambda-dropping, restores program
nesting and makes use of the lexical scope thus created. For more
information, see TCS'00 paper below.
U.P. Schultz. Object-Oriented Software Engineering using Partial
Evaluation. PhD thesis, University of Rennes, December 2000. English
version available as IRISA PI 1395 (publication interne/tech report) in PS or PDF.
G. Muller and
U. P. Schultz. Harissa: Efficient Java Execution by Global Program
Optimizations. Appeared in the March 1999 issue of IEEE Software
Magazine. Preliminary version available, PS or PDF.
Technical Reports and other unpublished material
U.P. Schultz. Object-Oriented Program Specialization: Aspects Into Aspects
- Or Maybe Not? Position paper at WGP'01 (an ECOOP'01 workshop),
2001. [PS] or [PDF]
Other On-line Material
U. P. Schultz. Explicit and Implicit Aspects of Scope and Block
Structure. Master's thesis, DAIMI, Department of Computer
Science, University of Aarhus, Aarhus, Denmark, June 1997. This work
was awarded "Best Danish master's thesis in computer science in the year of 1997"
by The Danish Computer Science Society (Dansk
Datalogi Selskab).
(Abstract)
(Postscript)
(DVI)