Sara Capecchi

Learn More
Class inheritance and dynamic binding are the key features of object-oriented programming and they permit designing and developing complex systems. However, standard class inheritance is essentially static and cannot be directly employed for modeling dynamic object behaviors. In this paper we propose a linguistic extension of Java, called Dec-Java, that is(More)
An amine oxidase activity distinguishable from MAO, which is inhibited by carbonyl reagents is present in rat epididymal WAT. This enzyme, referred to as semicarbazide-sensitive amine oxidase (SSAO), appears concentrated in adipose cells. Close homologies between WAT SSAO and the circulating plasma BAO are discussed.
We suggest an amalgamation of communication based programming (centred on sessions) and object oriented programming, whereby sessions between concurrent threads are amalgamated with methods. In our proposal threads consist of the execution of session bodies on objects and communicate with each other through asynchronously sending/receiving objects on(More)
We consider a calculus for multiparty sessions with delegation, enriched with security levels for session participants and data. We propose a type system that guarantees both session safety and a form of access control. Moreover, this type system ensures secure information flow, including controlled forms of declassification. In particular, it prevents(More)
We present an extension for a Java like language with a mechanism for dynamically extending object behaviors. Our approach consists in moving the addition of new features from class (static) level to object (dynamic) level: the basic features of entities (representing their structure) are separated from the additional ones (wrapper classes whose instances(More)
Helicobacter pylori has been widely recognized as an important human pathogen responsible for chronic gastritis, peptic ulcers, gastric cancer, and mucosa-associated lymphoid tissue (MALT) lymphoma. Little is known about the natural history of this infection since patients are usually recognized as having the infection only after years or decades of chronic(More)
In network applications it is crucial to have a mechanism to guarantee that communications evolve correctly according to the agreed protocol. Session types offer a method for abstracting and validating structured communication sequences (sessions). In this paper we propose union types for refining and enhancing the flexibility of session types in the(More)
We consider a calculus for multiparty sessions enriched with security levels for messages. We propose a monitored semantics for this calculus, which blocks the execution of processes as soon as they attempt to leak information. We illustrate the use of our monitored semantics with various examples, and show that the induced safety property implies a(More)
Goals of flexibility and re-usability in typed object-oriented languages suggest the requirement of double dispatch, i.e., the mechanism of dynamically selecting a method not only according to the run-time type of the receiver (single dispatch), but also to the run-time type of the argument. However, many mainstream languages, such as, e.g., C++ and Java,(More)