Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Tom Van Cutsem is active.

Publication


Featured researches published by Tom Van Cutsem.


ACM Computing Surveys | 2013

A survey on reactive programming

Andoni Lombide Carreton; Tom Van Cutsem; Stijn Mostinckx; Wolfgang De Meuter

Reactive programming has recently gained popularity as a paradigm that is well-suited for developing event-driven and interactive applications. It facilitates the development of such applications by providing abstractions to express time-varying values and automatically managing dependencies between such values. A number of approaches have been recently proposed embedded in various languages such as Haskell, Scheme, JavaScript, Java, .NET, etc. This survey describes and provides a taxonomy of existing reactive programming approaches along six axes: representation of time-varying values, evaluation model, lifting operations, multidirectionality, glitch avoidance, and support for distribution. From this taxonomy, we observe that there are still open challenges in the field of reactive programming. For instance, multidirectionality is supported only by a small number of languages, which do not automatically track dependencies between time-varying values. Similarly, glitch avoidance, which is subtle in reactive programs, cannot be ensured in distributed reactive programs using the current techniques.


european conference on object oriented programming | 2006

Ambient-Oriented programming in ambienttalk

Jessie Dedecker; Tom Van Cutsem; Stijn Mostinckx; Theo D'Hondt; Wolfgang De Meuter

A new field in distributed computing, called Ambient Intelligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce. Developing software for mobile networks is extremely hard in conventional programming languages because the network is dynamically demarcated. This leads us to postulate a suite of characteristics of future Ambient-Oriented Programming languages. A simple reflective programming language, called AmbientTalk, that meets the characteristics is presented. It is validated by implementing a collection of high level language features that are used in the implementation of an ambient messenger application.


conference on object-oriented programming systems, languages, and applications | 2005

Ambient-oriented programming in ambientTalk

Stijn Mostinckx; Tom Van Cutsem; Jessie Dedecker; Wolfgang De Meuter; Theo D'Hondt

A new field in distributed computing, called Ambient Intelligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce. Developing software for such mobile networks is extremely hard in conventional programming languages because of new distribution issues related to volatile network connections, dynamic network topologies and partial failures.


dynamic languages symposium | 2010

Proxies: design principles for robust object-oriented intercession APIs

Tom Van Cutsem; Mark S. Miller

Proxies are a powerful approach to implement meta-objects in object-oriented languages without having to resort to metacircular interpretation. We introduce such a meta-level API based on proxies for Javascript. We simultaneously introduce a set of design principles that characterize such APIs in general, and compare similar APIs of other languages in terms of these principles. We highlight how principled proxy-based APIs improve code robustness by avoiding interference between base and meta-level code that occur in more common reflective intercession mechanisms.


conference on object-oriented programming systems, languages, and applications | 2005

Ambient-oriented programming

Jessie Dedecker; Tom Van Cutsem; Stijn Mostinckx; Theo D'Hondt; Wolfgang De Meuter

A new field in distributed computing, called Ambient In-telligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce. Developing software for such mobile networks is extremely hard in conventional programming languages because the network is dynamically defined. This hardware phenomenon leads us to postulate a suite of characteristics of future Ambient-Oriented Programming languages. A simple re ective programming language kernel, called AmbientTalk, that meets these characteristics is subsequently presented. The power of the re ective kernel is illustrated by using it to conceive a collection of high level tentative ambient-oriented programming language features.


international conference on coordination models and languages | 2008

Implementing joins using extensible pattern matching

Philipp Haller; Tom Van Cutsem

Join patterns are an attractive declarative way to synchronize both threads and asynchronous distributed computations. We explore joins in the context of extensible pattern matching that recently appeared in languages such as F# and Scala. Our implementation supports join patterns with multiple synchronous events, and guards. Furthermore, we integrated joins into an existing actor-based concurrency framework. It enables join patterns to be used in the context of more advanced synchronization modes, such as future-type message sending and token-passing continuations.


acm symposium on applied computing | 2011

Flocks: enabling dynamic group interactions in mobile social networking applications

Elisa Gonzalez Boix; Andoni Lombide Carreton; Christophe Scholliers; Tom Van Cutsem; Wolfgang De Meuter; Theo D'Hondt

Mobile social networking applications enable end-users to interact on the move. Current applications model user groups as simple lists which have to be manually enumerated. This representation is both unsuitable and inefficient for group interactions: due to the openness and the mobility to which these applications are exposed, the contents of such lists are likely to change frequently. Updating the lists manually while interacting with users quickly becomes impractical. In this paper, we introduce an alternative representation for user groups named flocks. A flock represents a loosely-defined user group in terms of an intensional description. The flock content is implicitly updated when changes occur, e.g. the userss location. Flocks have group interaction provisions based on asynchronous message passing. Benchmarks indicate that flocks can be implemented efficiently by exploiting structure in their definitions. We present the flock abstraction and its implementation as the basis of a new distributed framework called Urbiflock.


european conference on object oriented programming | 2013

Trustworthy proxies: virtualizing objects with invariants

Tom Van Cutsem; Mark S. Miller

Proxies are a common technique to virtualize objects in object-oriented languages. A proxy is a placeholder object that emulates or wraps another target object. Both the proxys representation and behavior may differ substantially from that of its target object. In many OO languages, objects may have language-enforced invariants associated with them. For instance, an object may declare immutable fields, which are guaranteed to point to the same value throughout the execution of the program. Clients of an object can blindly rely on these invariants, as they are enforced by the language. In a language with both proxies and objects with invariants, these features interact. Can a proxy emulate or replace a target object purporting to uphold such invariants? If yes, does the client of the proxy need to trust the proxy to uphold these invariants, or are they still enforced by the language? This paper sheds light on these questions in the context of a Javascript-like language, and describes the design of a Proxy API that allows proxies to emulate objects with invariants, yet have these invariants continue to be language-enforced. This design forms the basis of proxies in ECMAScript 6.


Computer Languages, Systems & Structures | 2009

Linguistic symbiosis between event loop actors and threads

Tom Van Cutsem; Stijn Mostinckx; Wolfgang De Meuter

In modern programming languages, concurrency control can be traced back to one of two different schools: actor-based message passing concurrency and thread-based shared-state concurrency. This paper describes a linguistic symbiosis between two programming languages with such different concurrency models. More specifically, we describe a novel symbiosis between actors represented as event loops on the one hand and threads on the other. This symbiosis ensures that the invariants of the actor-based concurrency model are not violated by engaging in symbiosis with multithreaded programs. The proposed mapping is validated by means of a concrete symbiosis between AmbientTalk, a flexible, domain-specific language for writing distributed programs and Java, a conventional object-oriented language. This symbiosis allows the domain-specific language to reuse existing software components written in a multithreaded language without sacrificing the beneficial event-driven properties of the actor concurrency model.


TOOLS'10 Proceedings of the 48th international conference on Objects, models, components, patterns | 2010

Loosely-coupled distributed reactive programming in mobile ad hoc networks

Andoni Lombide Carreton; Stijn Mostinckx; Tom Van Cutsem; Wolfgang De Meuter

Pervasive applications running on mobile ad hoc networks have to be conceived as loosely-coupled event-driven architectures because of the dynamic nature of both the underlying network and the applications running on top of them. Such architectures can become tedious to develop and understand when the number of events and event handlers increases. The reason is that the control flow of the application is driven by event handlers or callbacks which are triggered independently and are scattered throughout the application code. In this paper, we propose a number of language constructs that reconcile the elegant processing of events of a reactive programming system with the loose coupling of a publish/subscribe system that is required to cope with the dynamic nature of mobile ad hoc networks.

Collaboration


Dive into the Tom Van Cutsem's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Stijn Mostinckx

Vrije Universiteit Brussel

View shared research outputs
Top Co-Authors

Avatar

Theo D'Hondt

Vrije Universiteit Brussel

View shared research outputs
Top Co-Authors

Avatar

Jessie Dedecker

Vrije Universiteit Brussel

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Joeri De Koster

Vrije Universiteit Brussel

View shared research outputs
Top Co-Authors

Avatar

Jorge Vallejos

Vrije Universiteit Brussel

View shared research outputs
Researchain Logo
Decentralizing Knowledge