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
Currently (2000-2005) 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.
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.
Java in embedded systems.
Object-oriented programming for low-end embedded systems. I've
worked on the JEPES
project (see LCTES'03
paper below).
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).
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.
Publications
Partial evaluation and object-oriented languages:
U.P. Schultz. A Unification of Inheritanc and Automatic Program
Specialization. Presented at GPCE'04.
H. Markmann Andersen and U.P. Schultz. Declarative Specialization
for Object-Oriented-Program Specialization. Appeared at PEPM'04, Aug
2004. Final version [PDF].
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.
K.H. Mortensen, K.R. Schougaard, U.P. Schultz. Distance-Based
Access Modifiers Applied to Safety in Home Networks. Presented at EUSAI'2004.
Partial evaluation and component-oriented programming:
U. P. Schultz. Black-box program specialization. Presented at
WCOP'99 (slides). Final version, PS or PDF.
Block structure:
O. Danvy and U.P. Schultz.
Lambda-Lifting in Quadratic Time. Published in Journal of Functional
and Logic Programming, 2004. An ealier version appeared at FLOPS'02.
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)