Tom Hirschowitz
University of Savoy
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Tom Hirschowitz.
european symposium on programming | 2002
Tom Hirschowitz; Xavier Leroy
The ML module system provides powerful parameterization facilities, but lacks the ability to split mutually recursive definitions across modules, and does not provide enough facilities for incremental programming. A promising approach to solve these issues is Ancona and Zuccas mixin modules calculus CMS. However, the straightforward way to adapt it to ML fails, because it allows arbitrary recursive definitions to appear at any time, which ML does not support. In this paper, we enrich CMS with a refined type system that controls recursive definitions through the use of dependency graphs. We then develop a separate compilation scheme, directed by dependency graphs, that translate mixin modules down to a CBV ?-calculus extended with a non-standard let rec construct.
principles and practice of declarative programming | 2003
Tom Hirschowitz; Xavier Leroy; J. B. Wells
This paper formalizes and proves correct a compilation scheme for mutually-recursive definitions in call-by-value functional languages. This scheme supports a wider range of recursive definitions than previous methods. We formalize our technique as a translation scheme to a lambda-calculus featuring in-place update of memory blocks, and prove the translation to be correct.
european symposium on programming | 2004
Tom Hirschowitz; Xavier Leroy; J. B. Wells
We present a new idea to adapt relational abstract domains to the analysis of IEEE 754-compliant floating-point numbers in order to statically detect, through Abstract Interpretation-based static analyses, potential floating-point run-time exceptions such as overflows or invalid operations. In order to take the non-linearity of rounding into account, expressions are modeled as linear forms with interval coefficients. We show how to extend already existing numerical abstract domains, such as the octagon abstract domain, to efficiently abstract transfer functions based on interval linear forms. We discuss specific fixpoint stabilization techniques and give some experimental results.
Electronic Proceedings in Theoretical Computer Science | 2011
Tom Hirschowitz; Damien Pous
Seeking a general framework for reasoning about and comparing programming languages, we derive a new view of Milners CCS. We construct a category E of plays, and a subcategory V of views. We argue that presheaves on V adequately represent innocent strategies, in the sense of game semantics. We then equip innocent strategies with a simple notion of interaction. This results in an interpretation of CCS. Based on this, we propose a notion of interactive equivalence for innocent strategies, which is close in spirit to Beffaras interpretation of testing equivalences in concurrency theory. In this framework we prove that the analogues of fair and must testing equivalences coincide, while they differ in the standard setting.
conference on algebra and coalgebra in computer science | 2013
Tom Hirschowitz
In previous work with Pous, we defined a semantics for CCS which may both be viewed as an innocent presheaf semantics and as a concurrent game semantics. It is here proved that a behavioural equivalence induced by this semantics on CCS processes is fully abstract for fair testing equivalence.
generative programming and component engineering | 2005
Daniel Hirschkoff; Tom Hirschowitz; Damien Pous; Alan Schmitt; Jean-Bernard Stefani
Component-oriented programming yields a tension between higher-order features (deployment, reconfiguration, passivation), encapsulation, and component sharing. We propose a discipline for component-oriented programming to address this issue, and we define a process calculus whose operational semantics embodies this programming discipline. We present several examples that illustrate how the calculus supports component sharing, while allowing strong encapsulation and higher-order primitives.
Logical Methods in Computer Science | 2013
Tom Hirschowitz
We propose a semantics for permutation equivalence in higher-order rewriting. This semantics takes place in cartesian closed 2-categories, and is proved sound and complete.
international symposium on functional and logic programming | 2004
Tom Hirschowitz
Mixin modules are a notion of modules that allows cross-module recursion and late binding, two features missing in ML-style modules. They have been well defined in a call-by-name setting, but in a call-by-value setting, they tend to conflict with the usual static restrictions on recursive definitions. Moreover, the semantics of instantiation has to specify an order of evaluation, which involves a difficult design choice. Previous proposals [14, 16] rely on the dependencies between components to compute a valid order of evaluation. In such systems, mixin module types must carry some information on the dependencies between their components, which makes them verbose. In this paper, we propose a new, simpler design for mixin modules in a call-by-value setting, which avoids this problem.
international conference on concurrency theory | 2009
Richard Garner; Tom Hirschowitz; Aurélien Pardon
This paper investigates the use of symmetric monoidal closed ( smc ) structure for representing syntax with variable binding, in particular for languages with linear aspects. In this setting, one first specifies an smc theory
european symposium on programming | 2004
Tom Hirschowitz; Xavier Leroy; J. B. Wells
{\mathcal{T}}