23 research outputs found

    Making compiler construction projects relevant to core curriculums

    No full text
    Having 300 students a year implement a compiler is a debatable enterprise, since the industry will certainly not recruit them for this competence. Yet we made that decision five years ago, for reasons not related to compiler construction. We detail these motivations, the resulting compiler design, and how we manage the assignment. The project meets its goals, since the majority of former students invariably refer to it as the project that taught them the most

    Probabilistic verification of sensor networks

    No full text
    Abstract — Sensor networks are networks consisting of miniature and low-cost systems with limited computation power and energy. Thanks to the low cost of the devices, one can spread a huge number of sensors into a given area to monitor, for example, physical changes of the environment. Typical applications are in defense, environment, and design of ad-hoc networks areas. In this paper, we address the problem of verifying the correctness of such networks through a case study. We model a simple sensor network whose aim is to detect an event in a bounded area (such as a fire in a forest). The behavior of the network is probabilistic, so we use Approximate Probabilistic Model Checker (APMC), a tool that allows to approximately check the correctness of extremely large probabilistic systems, to verify it. I

    A Set of Tools to Teach Compiler Construction

    No full text
    Compiler construction is a widely used software engineering exercise, but because most students will not be compiler writers, care must be taken to make it relevant in a core curriculum. Auxiliary tools, such as generators and interpreters, often hinder the learning: students have to fight tool idiosyncrasies, mysterious errors, and other poorly educative issues. We introduce a set of tools especially designed or improved for compiler construction educative projects in C ++. We also provide suggestions about new approaches to compiler construction. We draw guidelines from our experience to make tools suitable for education purposes

    Modeling of sensor networks using XRM

    No full text
    Abstract—Wireless sensor networks are composed of small electronic devices that embed processors, sensors, batteries, memory and communication capabilities. One of the main goals in the design of such systems is the handling of the inherent complexity of the nodes, exarcerbated by the huge number of nodes in the network. For these reasons, it becomes very difficult to model and verify such systems. In this paper, we investigate the main characteristics of sensor nodes, discuss the use of a language derived from Reactive Modules for their modeling, and propose a language (and a tool set) that facilitate the modeling of this kind of system. I

    Attribute Grammars for Modular Disambiguation

    No full text
    To face the challenges to tomorrow’s software engineering tools, powerful language-generic programtransformation components are needed. We propose the use of Attribute Grammars (AGs) to generate language specific disambiguation filters. In this paper, a complete implementation of a language-independent AG system is presented. As a full scale experiment, we present an implementation of a flexible C front-end. Its specifications are concise, modular, and the result is efficient. On top of it, transformations such as software renovation, code metrics, domain specific language embedding can be implemented
    corecore