| |
[an error occurred while processing this directive]
|
|
Concurrency Seminar

Bertrand Meyer and Patrick Eugster, Summer semester 2005
Announcements
22 April 2005:
-
Send a choice of 3 papers that you would would like to present:
To: patrick.eugster"at"inf.ethz.ch
Subject: Concurrency Seminar Choice of Articles
Content: the 3 papers that would interest you the most to present in the
seminar, numbered 1 to 3, by order of preference (1 the highest).
You will only present one paper, we ask for three because we will need to
solve possible conflicts in choices.
The date of each presentation will be negociated with the seminar
organizers.
This date will mostly depend on the presented paper.
22 April 2005:
-
Register to the seminar: Please send an email
To: concur-seminar"at"se.inf.ethz.ch
Subject: Concurrency Seminar Participant
Content:
-
Your name
-
Preferred email address
-
Status: Diplom student (what semester), Ph.D. student, other
-
Taking the course for credit or not
Description
Title and Code
Concurrency Seminar
Course code:
251-0270-00
Scope
The seminar will provide an overview of current research topics in concurrent
and distributed programming, with particular emphasis on object-oriented
methods. During the semester, each person attending the seminar will make
a presentation on one topic of his or her choice (among a set of proposed
ones).
Prerequisites
There is no formal prerequisite, but we recommend to follow the companion course
"Concurrent Object Oriented Programming (see below).
Topics
-
Concurrent and distributed programming models and languages
-
Formal models of concurrency
-
Distributed algorithms
-
Middleware and components, mobility of code
-
Static analysis and deadlock avoidance in concurrent programs
-
Design methods and notations for distributed software
-
Fault tolerance and replication
-
Security for distributed software
-
Object-orientation issues: inheritance, typing, distributed garbage
collection
The literature for presentations covering those topics is given below.
Companion Course
Concurrent Object Oriented Programming, 251-0268-00
, Tuesdays 13.00 - 16.00 IFW C 42.
Schedule
-
Tuesdays 16.00 - 17.00, IFW C 42.
Office hours: by appointment, RZ-J3.
Temptative program
| Tuesday 26 April |
Klaus Havelund, Kestrel Technology, CA, USA on Monitoring
programs with Eagle.
Abstract:
Eagle is a very powerful logic for expressing
behavioral properties about systems that evolve over time. Specifically, the
logic can be used to monitor the execution of computer programs. Eagle is an
extension of propositional logic with three temporal kernel operators, with
recursion, and with parameterization over
formulas in the logic as well as over data values. Formula parameterization
allows the user to define new temporal combinators. Data parameterization
allows to define properties relating data values from different points in time.
A wide range of different notations can be defined on top of Eagle using these
mechanisms, such as future and past time linear temporal logic, extended
regular expressions, real-time logics, interval logics, forms of quantified
temporal logics, and so on. Eagle is implemented as a Java library and
can for example be used to monitor Java programs. Monitoring is done on a
state-by-state basis, without storing the execution trace. We will describe the
Eagle logic via some examples and the implementation will be discussed.
Finally, it will be discussed where this work is heading.
|
| Tuesday 31 May |
Giovanni Azua
[Slides] T. Cohen and J. Gil:
AspectJ2EE = AOP + J2EE — Towards an Aspect Based
Programmable and Estensible Middleware Framework,
ECOOP 2004.
|
| Tuesday 7 June |
Bela Ban, JBoss Inc., on JGroups - a reliable
messaging library.
Abstract:
The talk will give an overview of the API
and the architecture of JGroups (www.jgroups.org),
a tool for reliable point-to-point and
multipoint communication. JGroups uses a
protocol stack to partition functionality
into small units, which can be used to
create custom stacks. The focus will be on
the protocol stack and the various
properties of the protocols to provide QoS,
such as transports, discovery, lossless
transmission, ordering, group membership and
failure detection.
|
| Tuesday 14 June |
Martin Baettig [Slides] B. Nielsen and G. Agha: Towards
Reusable Real-Time Objects. Annals of Software Engineering: Special
Volume on Real-Time Software Engineering, vol. 7, pp 257-282, 1999.
Andreas Wuest [Slides]
Girkar, M. Polychronopoulos,
C.D.:
Automatic extraction of functional parallelism
from ordinary programs. IEEE Transactions on
Parallel and Distributed Systems, Volume 3,
Issue 2, March 1992, pp. 166 - 178. |
| Tuesday 21 June |
Manuel Krucker [Slides] C. Zhang, H.-A. Jacobsen:
Resolving feature convolution in middleware systems,
OOPSLA 20004.
Kaspar Rohrer [Slides]
S. Qadeer and D. Wu.
KISS: Keep it simple and sequential. Proceedings
of the ACM SIGPLAN Conference on Programming
Language Design and Implementation, 2004. |
Literature for presentations
The following articles will serve as a basis for technical presentations in the
seminar. The goal of each presentation is to describe the main contributions
achieved in one article, and to place them back in context. To do so,
each student will be assigned a tutor that will help him or her during the
reading process.
You may need Acrobat
Reader or GSview
(on windows only, Ghostview works fine on Unix-like systems).
Formal models, static analysis, and foundations:
-
Chandrasekhar Boyapati, Robert Lee, Martin Rinard.
Ownership Types for Safe Programming: Preventing Data Races and Deadlocks. ACM
Conference on Object-Oriented Programming, Systems, Languages, and Applications
(OOPSLA 2002), Seattle, Washington, November 2002.
-
Catuscia Palamidessi.
Comparing the expressive power of the Synchronous and the Asynchronous
pi-calculus. Proc. of the 24th ACM Symposium on Principles of
Programming Languages (POPL'97), pages 256-265, ACM Press, 1997.
-
T. D. Chandra and S.Toueg,
Unreliable failure detectors for reliable distributed systems. Journal
of the ACM, 43(2): 225 - 267, ACM Press, March 1996.
-
M. Herlihy and J. Wing,
Linearizability: a correctness condition for concurrent objects. ACM
Transactions on Programming Languages and Systems (TOPLAS), 12(3): 463 -
492, ACM Press, July 1990.
-
C. Fournet et al.
A Calculus of Mobile Agents.
Proceedings of the 7th International Conference on
Concurrency Theory (CONCUR'96), pages 406-421, 1996.
-
Luca Cardelli and Andrew D. Gordon.
Mobile Ambients.
Foundations of Software Science and Computation
Structures: First International Conference (FOSSACS
'98), 1998.
Concurrent and distributed objects:
-
Suresh
Jagannathan, Jan Vitek. Optimistic
Concurrency Semantics for Transactions in Coordination
Languages . Proceedings of the Sixth International Conference on
Coordination Models and Languages, (COORDINATION'04), 2004.
-
Benjamin C. Pierce and David N.
Turner.
Concurrent Objects in a Process Calculus. Proceedings
Theory and Practice of Parallel Programming (TPPP
94), pages 187--215, 1995.
-
Oscar Nierstrasz.
Regular Types for Active Objects. Chapter 4 of the book Object-Oriented
Software Composition. Prentice Hall International, 1995. The book
is available on-line here.
-
R. Behrends, R. E. K. Stirewalt, and
L. K. Dillon. A
Component-Oriented Model for the Design of Safe
Multi-threaded Applications, ACM SIGSOFT
Symposium on Component Based Software Engineering,
St. Louis, May 2005.
- B. Nielsen and G. Agha. Towards
Reusable Real-Time Objects. Annals of Software Engineering: Special
Volume on Real-Time Software Engineering, vol. 7, pp 257-282, 1999.
- Nick Benton, Luca Cardelli, and Cédric Fournet.
Modern Concurrency Abstractions for C#. ACM Transactions on
Programming Languages and Systems (TOPLAS) 26(5) pp. 269-804,
September 2004.
- D. Caromel, L. Mateu, E. Tanter:
Sequential Object Monitors, ECOOP 2004.
- P. Pratikakis, J. Spacco, and M. Hicks:
Transparent proxies for Java Futures, ECOOP 2004.
Middleware, components, web services, and peer-to-peer
systems:
-
Oscar Nierstrasz and Franz Achermann.
A Calculus for Modeling Software Components,
Proc. of FMCO'2002, LNCS 2852, Springer-Verlag, 2003.
-
N. Busi, A. Manfredini, A. Montresor and G. Zavattaro. PeerSpaces:
Data-driven Coordination in Peer-to-Peer Networks. In Proc. of ACM
Symposium on Applied Computing (SAC'03), ACM Press, 2003.
-
N. Parlavantzas, G. Coulson, G.S. Blair.
An Extensible Binding Framework for Component-Based Middleware,
Proc. of 7th
Enterprise Distributed Object
Computing Conference (EDOC'2003), IEEE Computer Society, 2003.
-
R. Marvie, P. Merle, J.-M. Geib and S. Leblanc.
TORBA: Trading Contracts for CORBA.
In Proc. of the 6th USENIX Conference on Object-Oriented Technologies and
Systems (COOTS'01), 2001.
-
L. Bocchi, C. Laneve, G. Zavattaro.
A Calculus for
Long-running Transactions. In Proc. of Sixth IFIP Int. Conf. on Formal
Methods for Open-Object Based Distributed Systems (FMOODS'03), 124-138,
LNCS 2884, Springer-Verlag, 2003.
-
M. Astley, D. C. Sturman, G. Agha:
Customizable middleware for modular distributed software.
Communications of the ACM 44(5): 99-107, 2001.
-
C. Zhang, H.-A. Jacobsen:
Resolving feature convolution in middleware systems,
OOPSLA 20004.
-
K. Lee, A. Lamarca, C. Chambers:
HydroJ: Object-oriented pattern matching for
evolvable distributed systems, OOPSLA 2003.
Languages:
-
L. Cardelli.
A language with
distributed scope. Computing Systems, 8(1):27-59, January
1995.
-
J. Riely and M. Hennessy.
A Typed Language for Distributed Mobile Processes.
In Proc. of the 25th ACM SIGPLAN-SIGACT Symposium on Principles of
Programming Languages (POPL'98), pp. 378-390, ACM Press, 1998.
-
S. Qadeer and D. Wu.
KISS: Keep it simple and sequential. Proceedings
of the ACM SIGPLAN Conference on Programming
Language Design and Implementation, 2004.
-
S. Qadeer, S.K. Rajamani and J. Rehof.
Summarizing procedures in concurrent programs.
Proceedings of the 31st Annual ACM SIGPLAN-SIGACT
Symposium on Principles of Programming Languages,
2004.
-
P. Van Roy, S. Haridi, P. Brand, G. Smolka, M. Mehl, and Ralf
Scheidhauer.
Mobile Objects in Distributed Oz. ACM Transactions on
Programming Languages and Systems (TOPLAS), 19(5): 804 - 851, ACM Press,
September 1997.
Aspects:
Contacts
-
Send all email relative to this seminar to concur-seminar (at...)
se.inf.ethz.ch. It will reach the professors and assistants that are in charge
of it. Do not use their personal addresses or your message may be missed.
-
Contact person for the seminar: Patrick Eugster (Office: RZ-J3)
|