8–12 Jun 2026
ALBA Synchrotron
Europe/Madrid timezone

Reactive Programming for Tango Controls

9 Jun 2026, 16:15
20m
Maxwell Auditorium (ALBA Synchrotron)

Maxwell Auditorium

ALBA Synchrotron

Carrer de la Llum 2-26 08290 Cerdanyola del Vallès, Barcelona, Spain
Talk Community Device Classes, Tools, and Applications Community Device Classes, Tools, and Applications

Speaker

Igor Khokhriakov (San Diego Supercomputer Center)

Description

Control systems are inherently asynchronous: devices emit events, commands propagate across networks, and system state evolves continuously. Yet application code interacting with these systems is often written in imperative styles that make complex asynchronous flows difficult to express and maintain.

This talk explores a different approach: applying ReactiveX principles to the Tango control system.

Using the open-source project RxJTango, we demonstrate how Tango attributes, commands, and events can be modeled as reactive streams. This enables developers to compose device interactions using high-level operators such as filtering, merging, throttling, or retrying.

A live demo will show how this model can simplify common patterns in control-system development, including:

reacting to state changes across multiple devices
composing event-driven workflows
implementing robust error-handling strategies
coordinating distributed device interactions

Beyond the prototype implementation in Java, the talk will discuss how reactive abstractions could be implemented in other Tango ecosystems (C++, Python) and how such approaches might influence the future design of control-system APIs.

Tags library

Primary author

Igor Khokhriakov (San Diego Supercomputer Center)

Presentation materials

There are no materials yet.