DLS 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
co-located with SPLASH 2019
Sun 20 Oct 2019 17:00 - 17:30 at Room 2A - Beyond the Language Chair(s): Stefan Marr

We propose standard object out, an object-oriented analog to the output part of the Unix standard input output library (stdio).

Polymorphic Write Streams (PWS) act as architectural adapters between the object-oriented architectural style and the pipes and filters architectural style in the same way that stdio acts as an architectural adapter between the call/return architectural style and the pipes and filters architectural style.

Current object-oriented interfaces to the Unix I/O system mimic their procedural counterparts so closely that they manage to be neither polymorphic nor streaming, at least not for objects. Specifically the object is first converted to a fixed byte-representation by sending it a specific message and the result is then output on the underlying byte stream.

With this approach, these APIs do not allow for streaming behaviour: the entire result has to be constructed in-memory before it can be output. In addition, output of nested structures can require large multiples of time and space compared to the final output size, and fails completely if there are cycles in the object graph. It also does not allow for polymorphic behaviour.

PWSs represent a hierarchy of classes that decouple encoding from specific streaming destinations. Using triple dispatch they provide streaming behaviour and allow each stream to react specifically to each kind of object and vice versa: sharing of common functionality is enabled by chaining messages along the streams’ inheritance chain.

Sun 20 Oct

Displayed time zone: Beirut change

16:00 - 17:30
Beyond the LanguageDLS 2019 at Room 2A
Chair(s): Stefan Marr University of Kent
16:00
30m
Talk
Lazy Pointer Update for Low Heap Compaction Pause TimesResearch Paper
DLS 2019
Clément Béra Google, Aarhus, Eliot Miranda Cadence Design Systems, Elisa Gonzalez Boix Vrije Universiteit Brussel, Belgium
16:30
30m
Talk
Sindarin: a Versatile Scripting API for the Pharo DebuggerResearch Paper
DLS 2019
Thomas Dupriez Université Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL, Guillermo Polito Univ. Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL - Centre de Recherche en Informatique Signal et Automatique de Lille, Steven Costiou INRIA Lille, Vincent Aranega Université Lille, CNRS, Centrale Lille, Inria, UMR 9189 - CRIStAL, Stéphane Ducasse INRIA Lille
Media Attached
17:00
30m
Talk
Standard Object Out: Streaming Objects with Polymorphic Write StreamsExperience Paper
DLS 2019
Marcel Weiher Hasso-Plattner-Institut (HPI), Germany, Robert Hirschfeld Hasso-Plattner-Institut (HPI), Germany
Pre-print Media Attached