838 research outputs found
Moving from conceptual ambiguity to operational clarity: Employability, enterprise and entrepreneurship in higher education
Purpose â The purpose of this paper is to discuss how the terms âemployabilityâ, âenterpriseâ and âentrepreneurshipâ are currently being used, often interchangeably, within higher education, and to propose how to clarify this issue with the terminology.
Design/methodology/approach â The approach taken is to discuss the three terms and some of their current conceptualisations and suggest ways to clarify the terminology. Possible methods of operationalising the three concepts within higher education are also suggested.
Findings â Employability, enterprise and entrepreneurship are high on the agendas of many higher education institutions. There is a crucial need for agreement on definitions particularly when strategies are being implemented. It is suggested that currently the terminology is often used carelessly and interchangeably, resulting in confusion for HE staff, students and employers.
Originality/value â The paper offers a clear way of defining the concepts and will be of value to anybody with an interest in employability, enterprise or entrepreneurship within higher education
Clarifying and compiling C/C++ concurrency: from C++11 to POWER
The upcoming C and C++ revised standards add concurrency to the languages, for the first time, in the form of a subtle *relaxed memory model* (the *C++11 model*). This aims to permit compiler optimisation and to accommodate the differing relaxed-memory behaviours of mainstream multiprocessors, combining simple semantics for most code with high-performance *low-level atomics* for concurrency libraries. In this paper, we first establish two simpler but provably equivalent models for C++11, one for the full language and another for the subset without consume operations. Subsetting further to the fragment without low-level atomics, we identify a subtlety arising from atomic initialisation and prove that, under an additional condition, the model is equivalent to sequential consistency for race-free programs
Synchronising C/C++ and POWER
Shared memory concurrency relies on synchronisation primitives: compare-and-swap, load-reserve/store-conditional (aka LL/SC), language-level mutexes, and so on. In a sequentially consistent setting, or even in the TSO setting of x86 and Sparc, these have well-understood semantics. But in the very relaxed settings of IBMÂź, POWERÂź, ARM, or C/C++, it remains surprisingly unclear exactly what the programmer can depend on.
This paper studies relaxed-memory synchronisation. On the hardware side, we give a clear semantic characterisation of the load-reserve/store-conditional primitives as provided by POWER multiprocessors, for the first time since they were introduced 20 years ago; we cover their interaction with relaxed loads, stores, barriers, and dependencies. Our model, while not officially sanctioned by the vendor, is validated by extensive testing, comparing actual implementation behaviour against an oracle generated from the model, and by detailed discussion with IBM staff. We believe the ARM semantics to be similar.
On the software side, we prove sound a proposed compilation scheme of the C/C++ synchronisation constructs to POWER, including C/C++ spinlock mutexes, fences, and read-modify-write operations, together with the simpler atomic operations for which soundness is already known from our previous work; this is a first step in verifying concurrent algorithms that use load-reserve/store-conditional with respect to a realistic semantics. We also build confidence in the C/C++ model in its own terms, fixing some omissions and contributing to the C standards committee adoption of the C++11 concurrency model
Acute: high-level programming language design for distributed computation
Existing languages provide good support for typeful programming of standalone programs. In a distributed system, however, there may be interaction between multiple instances of many distinct programs, sharing some (but not necessarily all) of their module structure, and with some instances rebuilt with new versions of certain modules as time goes on. In this paper we discuss programming language support for such systems, focussing on their typing and naming issues. We describe an experimental language, Acute, which extends an ML core to support distributed development, deployment, and execution, allowing type-safe interaction between separately-built programs. The main features are: (1) type-safe marshalling of arbitrary values; (2) type names that are generated (freshly and by hashing) to ensure that type equality tests suffice to protect the invariants of abstract types, across the entire distributed system; (3) expression-level names generated to ensure that name equality tests suffice for type-safety of associated values, e.g. values carried on named channels; (4) controlled dynamic rebinding of marshalled values to local resources; and (5) thunkification of threads and mutexes to support computation mobility. These features are a large part of what is needed for typeful distributed programming. They are a relatively lightweight extension of ML, should be efficiently implementable, and are expressive enough to enable a wide variety of distributed infrastructure layers to be written as simple library code above the byte-string network and persistent store APIs. This disentangles the language runtime from communication intricacies. This paper highlights the main design choices in Acute. It is supported by a full language definition (of typing, compilation, and operational semantics), by a prototype implementation, and by example distribution libraries
Mathematizing C++ concurrency
Shared-memory concurrency in C and C++ is pervasive in systems programming, but has long been poorly defined. This motivated an ongoing shared effort by the standards committees to specify concurrent behaviour in the next versions of both languages. They aim to provide strong guarantees for race-free programs, together with new (but subtle) relaxed-memory atomic primitives for high-performance concurrent code. However, the current draft standards, while the result of careful deliberation, are not yet clear and rigorous definitions, and harbour substantial problems in their details.
In this paper we establish a mathematical (yet readable) semantics for C++ concurrency. We aim to capture the intent of the current (`Final Committee') Draft as closely as possible, but discuss changes that fix many of its problems. We prove that a proposed x86 implementation of the concurrency primitives is correct with respect to the x86-TSO model, and describe our Cppmem tool for exploring the semantics of examples, using code generated from our Isabelle/HOL definitions.
Having already motivated changes to the draft standard, this work will aid discussion of any further changes, provide a correctness condition for compilers, and give a much-needed basis for analysis and verification of concurrent C and C++ programs
Effectiveness and cost-effectiveness of a universal parenting skills programme in deprived communities : multicentre randomised controlled trial
Objective: To evaluate the effectiveness and cost utility of a universally provided early years parenting programme.
Design: Multicentre randomised controlled trial with cost-effectiveness analysis.
Setting: Early years centres in four deprived areas of South Wales.
Participants: Families with children aged between 2 and 4â
years. 286 families were recruited and randomly allocated to the intervention or waiting list control.
Intervention: The Family Links Nurturing Programme (FLNP), a 10-week course with weekly 2â
h facilitated group sessions.
Main outcome measures: Negative and supportive parenting, child and parental well-being and costs assessed before the intervention, following the course (3â
months) and at 9â
months using standardised measures.
Results: There were no significant differences in primary or secondary outcomes between trial arms at 3 or 9â
months. With â+â indicating improvement, difference in change in negative parenting score at 9â
months was +0.90 (95%CI â1.90 to 3.69); in supportive parenting, +0.17 (95%CI â0.61 to 0.94); and 12 of the 17 secondary outcomes showed a non-significant positive effect in the FLNP arm. Based on changes in parental well-being (SF-12), the cost per quality-adjusted life year (QALY) gained was estimated to be ÂŁ34â
913 (range 21â
485â46â
578) over 5â
years and ÂŁ18â
954 (range 11â
664â25â
287) over 10â
years. Probability of cost per QALY gained below ÂŁ30â
000 was 47% at 5â
years and 57% at 10â
years. Attendance was low: 34% of intervention families attended no sessions (n=48); only 47% completed the course (n=68). Also, 19% of control families attended a parenting programme before 9-month follow-up.
Conclusions: Our trial has not found evidence of clinical or cost utility for the FLNP in a universal setting. However, low levels of exposure and contamination mean that uncertainty remains.
Trial registration: The trial is registered with
Current Controlled Trials ISRCTN13919732
The contribution of volunteer recorders to our understanding of biological invasions
The process of invasion and the desire to predict the invasiveness (and associated impacts) of new arrivals has been a focus of attention for ecologists over centuries. The volunteer recording community has made unique and inspiring contributions to our understanding of invasion biology within Britain. Indeed information on non-native species (NNS) compiled within the GB Non-Native Species Information Portal (GB-NNSIP) would not have been possible without the involvement of volunteer experts from across Britain. Here we review examples of ways in which biological records have informed invasion biology. We specifically examine NNS information available within the GB-NNSIP to describe patterns in the arrival and establishment of NNS providing an overview of habitat associations of NNS in terrestrial, marine and freshwater environments. Monitoring and surveillance of the subset of NNS that are considered to be adversely affecting biodiversity, society or the economy, termed invasive non-native species (INNS), is critical for early warning and rapid response. Volunteers are major contributors to monitoring and surveillance of INNS and not only provide records from across Britain but also underpin the system of verification necessary to confirm the identification of sightings. Here we describe the so-called âalert systemâ which links volunteer experts with the wider recording community to provide early warning of INNS occurrence. We highlight the need to increase understanding of community and ecosystem-level effects of invasions and particularly understanding of ecological resilience. Detailed field observations, through biological recording, will provide the spatial, temporal and taxonomic breadth required for such research. The role of the volunteer recording community in contributing to the understanding of invasion biology has been invaluable and it is clear that their expertise and commitment will continue to be so
Intersection types for unbind and rebind
We define a type system with intersection types for an extension of
lambda-calculus with unbind and rebind operators. In this calculus, a term with
free variables, representing open code, can be packed into an "unbound" term,
and passed around as a value. In order to execute inside code, an unbound term
should be explicitly rebound at the point where it is used. Unbinding and
rebinding are hierarchical, that is, the term can contain arbitrarily nested
unbound terms, whose inside code can only be executed after a sequence of
rebinds has been applied. Correspondingly, types are decorated with levels, and
a term has type decorated with k if it needs k rebinds in order to reduce to a
value. With intersection types we model the fact that a term can be used
differently in contexts providing different numbers of unbinds. In particular,
top-level terms, that is, terms not requiring unbinds to reduce to values,
should have a value type, that is, an intersection type where at least one
element has level 0. With the proposed intersection type system we get
soundness under the call-by-value strategy, an issue which was not resolved by
previous type systems.Comment: In Proceedings ITRS 2010, arXiv:1101.410
New England Coral Canyons and Seamounts
Just 150 miles off the coast of Cape Cod lie some of our country's greatest marine treasures. Hidden beneath thousands of feet of ocean, where the continental shelf drops off to the pitch-black abyss of the deep Atlantic Ocean, five massive canyons plunge down, some deeper than the Grand Canyon. Just beyond these canyons, four extinct underwater volcanoes â called seamounts â rise as high as 7,700 feet above the ocean floor, higher than any mountain east of the Rockies and the only such seamounts in U.S. Atlantic waters. The plunging walls and deep floors of the canyons and the towering slopes of the seamounts are alive with vivid coldwater corals of otherworldly beauty â some the size of small trees and centuries, if not thousands of years, old. These corals, together with other structure-forming fauna including sponges and anemones, form a foundation for vibrant deep-sea ecosystems, providing food, spawning habitat, and shelter for an array of fish and invertebrate species. The varied habitats and strong and complex currents of the canyons and seamounts also support significant and diverse concentrations of marine life throughout the water column. These deep-sea biodiversity hotspots are sites of active scientific exploration, investigations and discovery. The canyons and seamounts proposed for designation represent tremendous opportunities for further scientific exploration and education around deep-sea ecosystems. Importantly, these remote and relatively pristine areas function as a scientific reference site, giving researchers the chance to advance our understanding of undisturbed nature in a world otherwise transformed by humans. In recognition of this area's value, 141 eminent ocean scientists from 84 research institutions, along with the three major New England Aquaria and 226 accredited aquaria from around the world, have urged robust long-term protections for these "particularly outstanding examples" of New England's canyons and seamounts
Innocent strategies as presheaves and interactive equivalences for CCS
Seeking a general framework for reasoning about and comparing programming
languages, we derive a new view of Milner's 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 Beffara's 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.Comment: In Proceedings ICE 2011, arXiv:1108.014
- âŠ