19 research outputs found

    Remote Opportunities: A Rethinking and Retooling

    Get PDF
    Abstract Introducing technology as a sustainable means of creating, connecting, and collaborating reveals the need to carefully consider subtle aspects of deployment strategies and support in remote regions. In order to comprehensively address both cultural and technical issues for educational infrastructure, we consider two elements to be key: (1) a staged deployment approach, involving both educators and community members, coupled with (2) uniquely designed collaborative Integrated Development Environments (IDEs) to aid constructivism. This paper presents our current experience with these elements in the context of a pilot project for aboriginal communities on the west coast of British Columbia. Currently, these local communities have been working alongside our group for a staged deployment of programs throughout southern Vancouver Island. In our next phase we will be extending this to more remote regions in the north island and coastal regions. By building on a philosophy of CommunityDriven Initiatives for Technology (C-DIT), we hope to secure community involvement in the development and testing of necessary tool support. These tools specifically target IDEs for the development of programming skills, and support our long term goal to help secondary and postsecondary level students appreciate both the process and the art of programming

    Promoting Natural Selection in System Infrastructure Software

    No full text
    Abstract. System infrastructure software is inherently complex, and seemingly exhibits a phenomenon similar to natural selection in biological systems [8]. Natural selection is an end result of degeneracy. That is, when a population consists of individuals that show significant structural differences yet perform essentially the same function, the structurally fittest will survive. Costs have precluded sufficient degeneracy in system infrastructure software, unfortunately limiting the available structural alternatives. We believe several mitigating factors are converging in such a way as to promote natural selection of competing structural representations of systems developed dynamically—while the system is running. These factors include both the increase of available resources in commodity systems and the increase in flexibility and customizability afforded by virtual machines such as Xen [3] and TTVM [17]. The goal of what we envision as Degenerate Programming is to enable the safe and simultaneous development of competing structural representations of systems software. By dynamically supporting multiple competing structural representations of entities and interactions, we believe we can more effectively arrive at optimal organizations of system infrastructures. An important open question arises, as to whether the population of systems has common patterns of execution and if generalizable states emerge among diverging representations. We believe a semantic-based treatment of the solution space may hold promise, but to date we know of no other work exploring these relationships in system infrastructure software.

    Towards a Domain-Specific Aspect Language for Virtual Machines

    No full text
    High-level language virtual machines, e. g., for the Java programming language, offer a unique and challenging domain for aspects. This position paper motivates the need for an aspect-oriented language designed precisely for this domain. We start by overviewing examples of some of the crosscutting concerns we have refactored as aspects in VMs, and then demonstrate how mainstream aspectoriented programming languages need to be augmented in order to elegantly implement these and similar concerns. We believe current join point and advice models are not expressive enough for this domain. Predominantly this is due to the fact that the concept of a point in the execution of the VM requires the ability to explicitly specify subtle issues regarding system state and services. Finally, the paper outlines, based on a design view on virtual machines, the shape of a possible domain-specific aspect language for the implementation of such systems. 1

    Abstract RADAR: Really low-level Aspects for Dynamic Analysis and Reasoning

    No full text
    Support for dynamic analysis must be lightweight- both efficient and minimally invasive with respect to the labour related to the implementation. This paper makes the case for using aspects for dynamic analysis in OS code. We propose to leverage low-level aspects to provide customizable run-time trace data collection, designed to enhance understanding of systems infrastructure software. 1
    corecore