Tycoon-2

(TYped Communicating Objects in Open eNvironments 2)

Project Goal
Develoment, evaluation and distribution of a object-oriented programming environment for persistent distributed systems which provide customer-oriented information services in open environments.
Project Rationale
Tycoon-2 is a direct successor of the languages TooL and Tycoon-1 developed by our group since 1989. Some of its language concepts and can be explained best by a direct comparison with Java:
  • Tycoon-2 is purely object-oriented (integers, arrays, classes, ... are treated as first-class objects)
  • Tycoon-2 provides multiple inheritance (supporting a mixin-based programming style)
  • Tycoon-2 has parametric polymorphism (type-parameterized classes and methods)
  • Tycoon-2 has rich subtyping rules (covariant Self typing, higher-order subtyping)
  • Tycoon-2 is higher-order (statically-scoped functions are first-class objects)
  • Tycoon-2 provides orthogonal persistence (for data, code and threads)
  • Tycoon-2 provides orthogonal mobility across platforms (for data, code and threads)
Similar to Java, Tycoon-2 provides strict typing, multithreading, full platform independence, exception handling and garbage collection. Tycoon-2 is not designed to be (syntactically or implementation-wise) upward compatible with Java.
Tycoon-2 is a reflective and bootstrapped system, i.e. its language processors and development tools are accessible (in a controlled and type-safe manner) to Tycoon-2 applications and these core components are implemented in Tycoon-2 itself.
The Tycoon-2 system was developed and maintained by Higher-Order. Within the framework of a long-term research and technology-transfer cooperation between STS and Higher-Order, STS improves and utilizes the Tycoon-2 system for its research and teaching work. In particular, Tycoon-2 is the system platform for the following STS research projects: Business Conversations, MARINFO, and Warburg Electronic Library.
Currently, Tycoon-2 is available on Unix platforms (Solaris 5.x, HP-UX 10.x, Linux) and Windows NT 4.0. A freely available distribution for academic purposes is published under the GNU general public license (GPL) and is available for download.
Project Publications in English
[WHM00] A Process-Oriented and Content-Based Perspective on Software Components.
[WMB99] Modeling Dynamic Software Components in UML (Slides).
[MWH99] A Process-Oriented Approach to Software Component Definition.
[GaWi98] Report on the Tycoon-2 Programming Language, Version 1.0.
[MaWi97] Visualizing Persistent Objects using Higher-Order Functions in SGML.
[GaWi97] STML Developer Guide.
[GMSS97] Persistent Object Systems: From Technology to Market.
[Matt97b] Mobile Processes in Cooperative Information Systems.
Project Publications in German
Einführung in Tycoon-2 (Slides) Examples
[Wahl98] Entwurf einer objektorientierten Sprache mit statischer Typisierung unter Beachtung kommerzieller Anforderungen. Slides
[Wien97] Bootstrap einer persistenten objektorientierten Programmierumgebung. Slides
[Erns98] Typüberprüfung in einer polymorphen objektorientierten Programmiersprache. Analyse, Design und Implementierung eines Typprüfers für Tycoon-2. Slides
[Weik98] Entwurf und Implementierung einer portablen multiprozessorfähigen virtuellen Maschine für eine persistente, objektorientierte Programmiersprache. Slides, Slides
[Will99] Portierung der Tycoon-2-Maschine von Unix nach Windows (working title). Slides, Slides
[Skus98] Integration relationaler Datenbanken in ein polymorphes, persistentes Objektsystem. Slides, Slides, Slides
[Schn98] Eine bidirektionale typisierte Kommunikation zwischen zwei reflexiven, objektorientierten Sprachen. Slides
[LaLu99] Eine generische und objektorientierte Schnittstelle von Tycoon-2 zum System SAP R/3. Slides, Slides
[Erns99] Tycoon-2 ORB (working title) Slides
[Wien99] Dynamische Komponenten in einer objektorientierten Programmiersprache. Modell, sprachliche Umsetzung und Visualisierung. Slides
Related Work based on Tycoon-2 (in german)
[Ripp98] Verbesserung der Lokalität und Wiederverwendbarkeit von Geschäftsprozeßspezifikationen: Probleme und Lösungsansätze am Beispiel kundenorientierter Hotelgeschäftsprozesse. Slides (english), Slides
[Wegn98] Objektorientierter Entwurf und Realisierung eines Agentensystems für kooperative Internet-Informationssysteme. Slides, Slides
[Hupe98] Ein Typsystem zur Analyse dialogorientierter Workflows in kooperativen Informationssystemen. Slides
[Fech98] Zugriffskontrolle für Internet-Informationssysteme: Ein Lösungsbeitrag für eine maritime Informationsinfrastruktur (MARINFO). Slides
[Witt98] Information Retrieval Unterstützung zur kooperativen Arbeit mit Bibliographiedatenbanken. Anforderungsanalyse und Systementwurf am Beispiel des BibTeX-Systems. Slides
Other Resources
Contact
Florian Matthes

STS 2000-06-20 holm wegner