| |
This seminar looks at configuration of software at compile
and run time. At compile time, configuration is concerned
with selecting the right modules for compilation and linking,
creating special versions for debugging, profiling, and
production on different machines. This task is typically
managed by Make-like tools and we will look at what has
happened since Make was invented in 1972. Embedding an
interpreter for a small language into an application is a
systematical way to obtain applications that are flexible at
run-time; they may be even programmed by the end user. We
will look at languages especially designed for embedding and
the corresponding application architectures.
Besides covering the topics outlined above, the seminar aims
to improve a student's ability to read, criticize, and write
papers. Therefore, the seminar is organized into two phases:
-
During the first phase, we will collectively read, discuss,
and criticize papers during our weekly meeting. I'm
expecting participants to ask and answer questions about
papers during meetings and will hand out writing exercises.
Typically I'll hand out papers at a meeting and expect
participants to have read them until the next meeting where
we are going to discuss them.
-
In the second phase, each participant picks a topic from
the papers we have read and tries to apply it to a
self-chosen problem. The seminar ends with a short
presentation of the experience at the end of the semester.
Organization
-
The seminar is taught by Christian
Lindig.
-
Participants will receive 9 credit points for successful
participation.
-
The number of participants is limited to about 12; you can
send me an email to sign up
tentatively for the seminar and to receive announcements
for forthcoming details.
-
Dates: we will meet weekly on Wednesdays from 2pm to 4pm at
the seminar room S-328, building 45.
-
The first meeting will be during the first week of
the semester, on
Wednesday, April 21, 2pm-4pm st, room 328, building
45.
Papers
-
A
Scrutiny of the Abstract II, Kenneth K. Landes, AAPG
Bull., Vol. 50, No. 9, p.1992.
-
Make -- A Porgram for Maintaining Computer Programs, Stuart
I. Feldman, Software Pratice and Experience, Vol. 9, 1997,
p.255-265.
-
Recursive Make Considered Harmful, Peter Miller, AUUGN
Journal of AUUG Inc, 19(1), pp. 14-25, 1998.
-
Cons Manual,
Stephen Knight, 2000.
-
Caching Function Calls Using Precise Dependencies,
Allan Heydon, Roy Levin, Yuan Yu. Appeared in Programming
Language Design and Implementation (PLDI) 2000.
-
Tcl: An Embeddable Command
Language, John K. Ousterhout, Winter USENIX Conference,
1990.
-
libscheme:Scheme as a Library by Brent W. Benson Jr.;
Proceedings of the USENIX Symposium on Very High Level
Languages, page 7-20, October 1994.
-
Lua-an
extensible extension language
by Roberto Ierusalimschy et al.; it appeared in
Software: Practice and Experience 26(6), pp.635-652, 1996.
-
Embedding an Interpreted Language Using Higher-Order Functions
and Types
by Norman Ramsey; the paper appeared in ACM SIGPLAN 2003
Workshop on Interpreters, Virtual Machines and Emulators.
Documents
-
intro.pdf
-
Introduction to the course; organization, work load.
-
assign-01.pdf
-
Questions about A Scrutinity of the Abstract (group
work)
-
assign-02.pdf
-
Assignment for Make -- A Program for Maintaining
Computer Programs.
-
make.pdf
-
A summary of Make -- A Program for Maintaining Computer
Programs.
-
assign-03.pdf
-
Questions about Make (group work)
-
assign-04.pdf
-
Assignment for Recursive Make Considered Harmful
-
recumake.pdf
-
Summary of Recursive Make Considered Harmful
-
assign-05.pdf
-
Questions about Recursive Make Considered Harmful
(group work)
-
assign-06.pdf
-
Assignment for Cons
-
cons.pdf
-
Summary of Cons
-
assign-07.pdf
-
Questions about Cons
-
assign-08.pdf
-
Assignment for Caching Function Calls Using Precise
Dependencies by Heydon et al.
-
vesta.pdf
-
Summary of Vesta
-
assign-09.pdf
-
Questions about Vesta (group work)
-
assign-10.pdf
-
Propose a small project related to software building
-
assign-12.pdf
-
Assignment for Tcl: An Embeddable Command Language
-
tcl.pdf
-
Summary of Tcl: An Embeddable Command Language
-
assign-13.pdf
-
Questions about Tcl (group work)
-
assign-14.pdf
-
Assignment for Scheme as a C Library by B. W.
Brenson Jr.; the Scheme Quick
Reference might be useful
- assign-15.pdf
- Questions about libscheme (group work)
-
libscheme.pdf
-
Summary of libscheme: Scheme as a C library
-
assign-16.pdf
-
Assignment for Lua--an extensible extension language by
Roberto Ierusalimschy et al.
- lua.pdf
- Summary of Lua--an extensible extension language
- assign-17.pdf
- Questions about Lua (group work)
- assign-18.pdf
- Assignment for Embedding an Interpreted Language Using
Higher-Order Functions and Types.
- embedding.pdf
- Summary of Embedding an Interpreted Language Using
Higher-Order Functions and Types.
- assign-19.pdf
- Questions about Embedding an Interpreted Language Using
Higher-Order Functions and Types (group work)
Impressum ● Datenschutzerklärung
<webmaster@st.cs.uni-saarland.de> · http://www.st.cs.uni-saarland.de/edu/config-ss04/ · Stand: 2018-04-05 13:40
|
---|