The Experts below are selected from a list of 477 Experts worldwide ranked by ideXlab platform

Johan Montagnat - One of the best experts on this subject based on the ideXlab platform.

Julien Cohen - One of the best experts on this subject based on the ideXlab platform.

  • VPT@ETAPS - Renaming Global Variables in C Mechanically Proved Correct
    Electronic Proceedings in Theoretical Computer Science, 2016
    Co-Authors: Julien Cohen
    Abstract:

    Most integrated development environments are shipped with Refactoring tools. However, their Refactoring Operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic Refactoring. In this article, we consider a Refactoring Operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the Operational semantics of C provided by CompCert C in Coq.

  • Renaming Global Variables in C Mechanically Proved Correct
    2016
    Co-Authors: Julien Cohen
    Abstract:

    Most integrated development environments are shipped with Refactoring tools. However, their Refactoring Operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic Refactoring. In this article, we consider a Refactoring Operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the Operational semantics of C provided by CompCert C in Coq.

  • A Correct Refactoring Operation to Rename Global Variables in C Programs
    2015
    Co-Authors: Julien Cohen
    Abstract:

    Most integrated development environments are shipped with Refactoring tools. However, their Refactoring Operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic Refactoring. In this report, we consider a Refactoring Operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the Operational semantics of C provided by Compcert C in Coq. We also prove some static properties of the considered Refactoring Operation and we use them to find properties of some composed Refactoring Operations.

  • Program Transformation based Views for Modular Maintenance
    2011
    Co-Authors: Akram Ajouli, Julien Cohen, Rémi Douence
    Abstract:

    Modular programming is a practical solution for separation of concerns but the support for modularity provided by programming languages does not resolve the classic expression problem and more generally the tyranny of the dominant decomposition: evolutions are modular only on the principal axis of decomposition. To solve this problem, a practical solution would be to be able to choose the architecture of an application each time one has to make it evolve. We provide a prototype tool for the Haskell language to support that. Our tool allows to build transformations to switch Haskell programs from one structure to another. We do this by driving a Refactoring tool for Haskell (HaRe): transformations are built by chaining elementary Operations of Refactoring. Since each elementary Refactoring Operation preserve the semantics, the whole transformations also do.

Sébastien Mosser - One of the best experts on this subject based on the ideXlab platform.

Cohen Julien - One of the best experts on this subject based on the ideXlab platform.

  • Renaming Global Variables in C Mechanically Proved Correct
    HAL CCSD, 2016
    Co-Authors: Cohen Julien
    Abstract:

    International audienceMost integrated development environments are shipped with Refactoring tools. However, their Refactoring Operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic Refactoring.In this article, we consider a Refactoring Operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the Operational semantics of C provided by CompCert C in Coq

  • A Correct Refactoring Operation to Rename Global Variables in C Programs
    HAL CCSD, 2015
    Co-Authors: Cohen Julien
    Abstract:

    GALLINETTE_HCERES2020Most integrated development environments are shipped with Refactoring tools. However, their Refactoring Operations are often known to be unreliable. As a consequence, developers have to test their code after applying an automatic Refactoring. In this report, we consider a Refactoring Operation (renaming of global variables in C), and we prove that its core implementation preserves the set of possible behaviors of transformed programs. That proof of correctness relies on the Operational semantics of C provided by Compcert C in Coq. We also prove some static properties of the considered Refactoring Operation and we use them to find properties of some composed Refactoring Operations

  • Program Transformation based Views for Modular Maintenance
    HAL CCSD, 2011
    Co-Authors: Ajouli Akram, Cohen Julien, Douence Rémi
    Abstract:

    PosterNational audienceModular programming is a practical solution for separation of concerns but the support for modularity provided by programming languages does not resolve the classic expression problem and more generally the tyranny of the dominant decomposition: evolutions are modular only on the principal axis of decomposition. To solve this problem, a practical solution would be to be able to choose the architecture of an application each time one has to make it evolve. We provide a prototype tool for the Haskell language to support that. Our tool allows to build transformations to switch Haskell programs from one structure to another. We do this by driving a Refactoring tool for Haskell (HaRe): transformations are built by chaining elementary Operations of Refactoring. Since each elementary Refactoring Operation preserve the semantics, the whole transformations also do

Montagnat Johan - One of the best experts on this subject based on the ideXlab platform.