Abstract:The autonomic computing paradigm has been proposed to cope with size, complexity and dynamism of contemporary software-intensive systems. The challenge for language designers is to devise appropriate abstractions and linguistic primitives to deal with the large dimension of systems, and with their need to adapt to the changes of the working environment and to the evolving requirements. We propose a set of programming abstractions that permit to represent behaviours, knowledge and aggregations according to specific policies, and to support programming context-awareness, self-awareness and adaptation. Based on these abstractions, we define SCEL (Software Component Ensemble Language), a kernel language whose solid semantic foundations lay also the basis for formal reasoning on autonomic systems behaviour. To show expressiveness and effectiveness of SCEL's design, we present a Java implementation of the proposed abstractions and show how it can be exploited for programming a robotics scenario that is used as a running example for describing features and potentials of our approach.
Abstract: Recent technological advances have generated torrents of networked data sets that are often represented and visually analyzed as graphs drawn in the plane. The large size of these data sets poses fascinating challenges to graph drawers both from a practical and from a theoretical point of view: while a considerable portion of the existing graph drawing literature showcases elegant algorithms and sophisticated data structures under the assumption that the input graph is planar, most graphs are in fact non-planar in practice. In this talk I will briefly review recent findings and outline some emerging research directions about the theory of "nearly planar" graphs, i.e. graphs that have drawings where some crossing configurations are forbidden.