% % GENERATED FROM https://www.coli.uni-saarland.de % by : anonymous % IP : coli2006.lst.uni-saarland.de % at : Mon, 05 Feb 2024 15:43:21 +0100 GMT % % Selection : Author: Ralf_Scheidhauer % @Article{Haridi_et_al:1999, AUTHOR = {Haridi, Seif and Van Roy, Peter and Brand, Per and Mehl, Michael and Scheidhauer, Ralf and Smolka, Gert}, TITLE = {Efficient Logic Variables for Distributed Computing}, YEAR = {1999}, JOURNAL = {ACM Transactions on Programming Languages and Systems}, VOLUME = {21}, NUMBER = {3}, PAGES = {569-626}, URL = {ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/TOPLAS99.ps.gz}, ABSTRACT = {We define a practical algorithm for distributed rational tree unification and prove its correctness in both the off-line and on-line cases. We derive the distributed algorithm from a centralized one, showing clearly the trade-offs between local and distributed execution. The algorithm is used to realize logic variables in the Mozart Programming System, which implements the Oz language (see http://www.mozart-oz.org/). Oz appears to the programmer as a concurrent object-oriented language with dataflow synchronization. Logic variables implement the dataflow behavior. We show that logic variables can easily be added to the more restricted models of Java and ML, thus providing an alternative way to do concurrent programming in these languages. We present common distributed programming idioms in a network-transparent way using logic variables. We show that in common cases the algorithm maintains the same message latency as explicit message passing. In addition, it is able to handle uncommon cases that arise from the properties of latency tolerance and third-party independence. This is evidence that using logic variables in distributed computing is beneficial at both the system and language levels. At the system level, they improve latency tolerance and third-party independence. At the language level, they help make network-transparent distribution practical.}, ANNOTE = {COLIURL : Haridi:1999:ELV.pdf Haridi:1999:ELV.ps} } @PhdThesis{Scheidhauer:1998, AUTHOR = {Scheidhauer, Ralf}, TITLE = {Design, Implementierung und Evaluierung einer virtuellen Maschine für Oz}, YEAR = {1998}, ADDRESS = {Saarbrücken}, SCHOOL = {Universität des Saarlandes, Fachbereich Informatik}, URL = {ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/scheidhauer-thesis.ps.gz}, ABSTRACT = {This thesis presents the design, implementation and evaluation of a virtual machine for the core language of Oz, which we call L. We present L for didactic reasons as an extension of a sublanguage of SML. The most important differences between L and SML are: logic variables, threads, synchronization and dynamic typing. Starting from an informal description of the dynamic semantics in terms of a graph model, we develop step by step on various levels of abstraction a virtual machine for L. We begin with a simple basic model. We then propose several optimizations of this model. Afterwards we keep refining our approach by addressing specific aspects of the implementation of the model. Finally we evaluate the effectiveness of the techniques using a set of larger real world applications. Further we show, that the implementation of the language is competitive with the fastest emulators for statically typed functional languages.}, ANNOTE = {COLIURL : Scheidhauer:1998:DIE.pdf Scheidhauer:1998:DIE.ps} } @Article{Van Roy_et_al:1997, AUTHOR = {Van Roy, Peter and Haridi, Seif and Brand, Per and Smolka, Gert and Mehl, Michael and Scheidhauer, Ralf}, TITLE = {Mobile Objects in Distributed Oz}, YEAR = {1997}, JOURNAL = {ACM Transactions on Programming Languages and Systems}, VOLUME = {19}, NUMBER = {5}, PAGES = {804-851}, URL = {ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/TOPLAS97.ps.gz}, ABSTRACT = {Some of the most difficult questions to answer when designing a distributed application are related to mobility: what information to transfer between sites and when and how to transfer it. Network-transparent distribution, the property that a program's behavior is independent of how it is partitioned among sites, does not directly address these questions. Therefore we propose to extend all language entities with a network behavior that enables efficient distributed programming by giving the programmer a simple and predictable control over network communication patterns. In particular, we show how to give objects an arbitrary mobility behavior that is independent of the object's definition. In this way, the syntax and semantics of objects are the same regardless of whether they are used as stationary servers, mobile agents, or simply as caches. These ideas have been implemented in Distributed Oz, a concurrent object-oriented language that is state aware and has data flow synchronization. We prove that the implementation of objects in Distributed Oz is network transparent. To satisfy the predictability condition, the implementation avoids forwarding chains through intermediate sites. The implementation is an extension to the publicly available DFKI Oz 2.0 system.}, ANNOTE = {COLIURL : Roy:1997:MOD.pdf Roy:1997:MOD.ps} } @InProceedings{Van Roy_et_al:1996, AUTHOR = {Van Roy, Peter and Mehl, Michael and Scheidhauer, Ralf}, TITLE = {Integrating Efficient Records into Concurrent Constraint Programming}, YEAR = {1996}, BOOKTITLE = {8th International Symposium on Programming Languages, Implementations, Logics, and Programs (PLILP '96), September 24-27}, NUMBER = {1140}, PAGES = {438-453}, EDITOR = {Kuchen, Herbert and Swierstra, S. Doaitse}, SERIES = {Lecture Notes in Computer Science}, ADDRESS = {Aachen, Germany}, PUBLISHER = {Springer}, URL = {ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/plilp96.ps.gz}, ABSTRACT = {We show how to implement efficient records in constraint logic programming (CLP) and its generalization concurrent constraint programming (CCP). Records can be naturally integrated into CCP as a new constraint domain. The implementation provides the added expressive power of concurrency and fine-grained constraints over records, yet does not pay for this expressivity when it is not used. In addition to traditional record operations, our implementation allows to compute with partially-known records. This fine granularity is useful for natural-language and knowledge-representation applications. The paper describes the implementation of records in the DFKI Oz system. Oz is a higher-order CCP language with encapsulated search. We show that the efficiency of records in CCP is competitive with modern Prolog implementation technology and that our implementation provides improved performance for natural-language applications.}, ANNOTE = {COLIURL : Roy:1996:IER.pdf Roy:1996:IER.ps} }