82 research outputs found

    Slender naiad (Najas flexilis) habitat quality assessment

    Get PDF
    N. flexilis is a rare aquatic plant species of European conservation importance. The species is believed to be under increasing threat in its Scottish stronghold. However, the factors that affect the health of N. flexilis populations in Scotland are not fully understood, such as why does the species disappear, and where and why it fares well in some sites. In addition, more needs to be known about what actions can be taken to ensure that the habitat quality needed to support populations of N. flexilis is either maintained or restored. This report highlights that much of the sensitivity of N. flexilis to the known threats of eutrophication, competition with other plants and the mild acidification of circumneutral lakes can be related to its physiology as an obligate user of CO2; N. flexilis plants being unable to metabolise bicarbonate for photosynthesis

    Abstract machine design for increasingly more powerful ALGOL-languages

    Get PDF
    This thesis presents the work and results of an investigation into language implementation. Some work on language design has also been undertaken. Three languages have been implemented which may be described as members of the Algol family with features and constructs typical of that family. These include block structure, nested routines, variables, and dynamic allocation of data structures such as vectors and user-defined structures. The underlying technique behind these Implementations has been that of abstract machine modelling. For each language an abstract intermediate code has been designed. Unlike other such codes we have raised the level of abstraction so that the code lies closer to the language than that of the real machine on which the language may be implemented. Each successive language is more powerful than the previous by the addition of constructs which were felt to be useful. These were routines as assignable values, dynamically initialised constant locations, types as assignable values and lists. The three languages were, Algol R a "typical" Algol based on Algol W h an Algol with routines as assignable values, enumerated types, restriction of pointers to sets of user-defined structures, and constant locations. nsl a polymorphic Algol with types as assignable values, routines as assignable values, lists, and type- and value-constant locations. The intermediate code for Algol R was based on an existing abstract machine. The code level was raised and designed so that it should be used as the input to a code generator. Such a code generator was written improving a technique called simulated evaluation. The language h was designed and a recursive descent compiler written for it which produced an intermediate code similar in level to the previous one. Again a simulated evaluation code generator was written, this time generating code for an interpreted abstract machine which implemented routines as assignable and storable values. Finally the language nsl was designed. The compiler for it produced code for an orthogonal, very high level tagged architecture abstract machine which was implemented by interpretation. This machine implemented polymorphism, assignable routine values and type- and value- constancy. Descriptions of the intermediate codes/abstract machines are given in appendices

    Streams and rivers: report card 2020

    Get PDF
    This report card covers the effects of drought and water scarcity on streams and rivers, the ecosystem response, future impact scenarios and possible mitigation actions. One of a series of report cards summarising current and future aspects of water scarcity in the UK's main ecosystems
    • …
    corecore