344 research outputs found

    Strengthening the Zipper

    No full text
    The zipper is a well known design pattern for providing a cursor-like interface to a data structure. However, the classic treatise by Huet only scratches the surface of some of its potential applications. In this paper we take inspiration from Huet, and describe a library suitable as an underpinning for structured editors. We consider a zipper structure that is suitable for traversing heterogeneous data types, encoding routes to other places in the tree (for bookmark or quick-jump functionality), expressing lexically bound information using contexts, and traversals for rendering a program indicating where the cursor is currently focused

    Tickling Java with a Feather

    Get PDF
    Fragments of mainstream programming languages are formalised in order to show desirable properties of their static semantics. We ask if said formalisms could also be used to define a test suite for the mainstream programming language in question, and what the utility of such a suite would be. In this work, we present our findings from testing Java with Featherweight Java (FJ). We take the syntax and binding structure of FJ to define an instance space of non-isomorphic test programs and implementations of FJ type checkers to provide oracles for our tests, to ensure the mainstream implementation conforms with the expectations of FJ. Using these, we evaluate (using code coverage techniques) how much of the Sun OpenJDK javac can be tested by FJ. Β© 2009 Elsevier B.V. All rights reserved

    Finding the needle: Stack Traces for GHC

    No full text

    Ulta-slow relaxation in discontinuous-film based electron glasses

    Full text link
    We present field effect measurements on discontinuous 2D thin films which are composed of a sub monolayer of nano-grains of Au, Ni, Ag or Al. Like other electron glasses these systems exhibit slow conductance relaxation and memory effects. However, unlike other systems, the discontinuous films exhibit a dramatic slowing down of the dynamics below a characteristic temperature Tβˆ—T^*. Tβˆ—T^* is typically between 10-50K and is sample dependent. For T<Tβˆ—T<T^* the sample exhibits a few other peculiar features such as repeatable conductance fluctuations in millimeter size samples. We suggest that the enhanced system sluggishness is related to the current carrying network becoming very dilute in discontinuous films so that the system contains many parts which are electrically very weakly connected and the transport is dominated by very few weak links. This enables studying the glassy properties of the sample as it transitions from a macroscopic sample to a mesocopic sample, hence, the results provide new insight on the underlying physics of electron glasses.Comment: 4 pages, 4 figure

    Changing the Marks Based Culture of Learning through Peer Assisted Tutorials

    No full text
    We describe and evaluate an approach to student learning that aims to instil a culture of formative assessment based on peer-assisted self learning, instead of a marks-based culture in which learning effort is rewarded with marks that contribute to the students degree. The idea is for suitably qualified third- and fourth-year undergraduates to assist in the running of weekly first-year tutorials. They mark submitted work, provide written and verbal feedback on the students performance and lead problem solving discussions during tutorials. However, contrary to normal practice, the marks they award do not contribute to the students year total; all tutorial work becomes essentially voluntary. We report results from a pilot implementation of the scheme over a 12-month period in an engineering department at a leading academic institution. The set-up of the scheme was such that a comparative and triangulated assessment was possible amongst the students and tutor team. There was no discernible degradation in student attendance, submission rates and performance in either the weekly exercises or end of year examinations. Further analysis demonstrates that this type of peer-assisted learning improves some key aspects of student learning, and provides important benefits to the senior peers in terms of their own personal development. We conclude that the scheme provides an excellent alternative to traditional learning methods whilst substantially reducing the investment in academic staff time. Β© American Society for Engineering Education, 2009

    Modular verification of procedure equivalence in the presence of memory allocation

    Get PDF
    For most high level languages, two procedures are equivalent if they transform a pair of isomorphic stores to isomorphic stores. How- ever, tools for modular checking of such equivalence impose a stronger check where isomorphism is strengthened to equality of stores. This re- sults in the inability to prove many interesting program pairs with re- cursion and dynamic memory allocation. In this work, we present RIE, a methodology to modularly establish equivalence of procedures in the presence of memory allocation, cyclic data structures and recursion. Our technique addresses the need for find- ing witnesses to isomorphism with angelic allocation, supports reasoning about equivalent procedures calls when the stores are only locally iso- morphic, and reasoning about changes in the order of procedure calls. We have implemented RIE by encoding it in the Boogie program verifier. We describe the encoding and prove its soundness

    Extending SHAPES for SIMD architectures

    Get PDF
    SIMD (Single Instruction, Multiple Data) instruction sets are ubiquitous on modern hardware, but rarely used in software projects. A major reason for this is that efficient SIMD code requires data to be laid out in memory in an unconventional manner, forcing developers to explicitly refactor their code and data structures in order to make use of SIMD. In previous work, we proposed SHAPES, an abstract layout specification for enabling memory optimisations for managed, object-oriented languages. In this paper, we explain how, by extending SHAPES with well-known constructs from the literature, which are not specific to SIMD, we can extend SHAPES to compile programs to use SIMD instructions. The resulting language (sketch) seems able to exploit SIMD capabilities without sacrificing ease of development

    A first parameterization of the pore-structure dependent kinetic adsorption model for O2 adsorption in biomass conversion modeling

    Get PDF
    Mass transport properties of the oxidation and gasification agents O2, CO2, and H2O are highly relevant for the modeling of the conversion process of biomasses. Therefore, this study presents experimental investigations on the adsorption kinetics of O2 on a biomass char using a modified gravimetric sorption device. Based on this comprehensive set of adsorption kinetic data, a first parameterization of the pore-structure dependent kinetic adsorption (PSK) model for O2 adsorption is presented. This model intends to account for mass transport during biomass conversion in a more meaningful way as it is considered in conventional conversion models. With this parameterization, the model is capable of describing accurately the adsorption kinetics of O2 as a function of time, temperature, and pressure

    Chemotaxis When Bacteria Remember: Drift versus Diffusion

    Get PDF
    {\sl Escherichia coli} ({\sl E. coli}) bacteria govern their trajectories by switching between running and tumbling modes as a function of the nutrient concentration they experienced in the past. At short time one observes a drift of the bacterial population, while at long time one observes accumulation in high-nutrient regions. Recent work has viewed chemotaxis as a compromise between drift toward favorable regions and accumulation in favorable regions. A number of earlier studies assume that a bacterium resets its memory at tumbles -- a fact not borne out by experiment -- and make use of approximate coarse-grained descriptions. Here, we revisit the problem of chemotaxis without resorting to any memory resets. We find that when bacteria respond to the environment in a non-adaptive manner, chemotaxis is generally dominated by diffusion, whereas when bacteria respond in an adaptive manner, chemotaxis is dominated by a bias in the motion. In the adaptive case, favorable drift occurs together with favorable accumulation. We derive our results from detailed simulations and a variety of analytical arguments. In particular, we introduce a new coarse-grained description of chemotaxis as biased diffusion, and we discuss the way it departs from older coarse-grained descriptions.Comment: Revised version, journal reference adde
    • …
    corecore