2,187 research outputs found

    Functional programming and graph algorithms

    Get PDF
    This thesis is an investigation of graph algorithms in the non-strict purely functional language Haskell. Emphasis is placed on the importance of achieving an asymptotic complexity as good as with conventional languages. This is achieved by using the monadic model for including actions on the state. Work on the monadic model was carried out at Glasgow University by Wadler, Peyton Jones, and Launchbury in the early nineties and has opened up many diverse application areas. One area is the ability to express data structures that require sharing. Although graphs are not presented in this style, data structures that graph algorithms use are expressed in this style. Several examples of stateful algorithms are given including union/find for disjoint sets, and the linear time sort binsort. The graph algorithms presented are not new, but are traditional algorithms recast in a functional setting. Examples include strongly connected components, biconnected components, Kruskal's minimum cost spanning tree, and Dijkstra's shortest paths. The presentation is lucid giving more insight than usual. The functional setting allows for complete calculational style correctness proofs - which is demonstrated with many examples. The benefits of using a functional language for expressing graph algorithms are quantified by looking at the issues of execution times, asymptotic complexity, correctness, and clarity, in comparison with traditional approaches. The intention is to be as objective as possible, pointing out both the weaknesses and the strengths of using a functional language

    Session Types in Concurrent Calculi: Higher-Order Processes and Objects

    No full text
    This dissertation investigates different formalisms, in the form of programming language calculi, that are aimed at providing a theoretical foundation for structured concurrent programming based on session types. The structure of a session type is essentially a process-algebraic style description of the behaviour of a single program identifier serving as a communication medium (and usually referred to as a channel): the types incorporate typed inputs, outputs, and choices which can be composed to form larger protocol descriptions. The effectiveness of session typing can be attributed to the linear treatment of channels and session types, and to the use of tractable methods such as syntactic duality to decide if the types of two connected channels are compatible. Linearity is ensured when accumulating the uses of a channel into a composite type that describes also the order of those actions. Duality provides a tractable and intuitive method for deciding when two connected channels can interact and exchange values in a statically determined type-safe way. We present our contributions to the theory of sessions, distilled into two families of programming calculi, the first based on higher-order processes and the second based on objects. Our work unifies, improves and extends, in manifold ways, the session primitives and typing systems for the Lambda-calculus, the Pi-calculus, the Object-calculus, and their combinations in multi-paradigm languages. Of particular interest are: the treatment of infinite interactions expressed with recursive sessions; the capacity to encapsulate channels in higher-order structures which can be exchanged and kept suspended, i.e., the use of code as data; the integration of protocol structure directly into the description of objects, providing a powerful and uniformly extensible set of implementation abstractions; finally, the introduction of asynchronous subtyping, which enables controlled reordering of actions on either side of a session. Our work on higher-order processes and on object calculi for session-based concurrent programming provides a theoretical foundation for programming language design integrating functional, process, and object-oriented features

    Assessing the wider implementation of the SHARP principles: increasing physical activity in primary physical education

    Get PDF
    To assess the wider application of the SHARP (Stretching whilst moving, High repetition of skills, Accessibility, Reducing sitting and standing, and Promotion of physical activity) Principles intervention on children's moderate to vigorous physical activity (MVPA) in physical education (PE), when applied by teachers and coaches. A quasi-experimental intervention was employed in nine primary schools (experimental, n = 6: control, n = 3) including teachers (n = 10), coaches (n = 4), and children (aged 5 to 11 years, n = 84) in the West Midlands, UK. Practitioners applied the SHARP Principles to PE lessons, guided by an innovative behaviour change model. The System for Observing Fitness and Instruction Time (SOFIT) was used to measure children's MVPA in 111 lessons at pre- (n = 60) and post-intervention (n = 51). Seven interviews were conducted post-intervention to explore practitioners' perceptions. Two-way ANOVA (Analysis of Variance) revealed that teachers increased children's MVPA by 27.7%. No statistically significant change in children's MVPA was observed when taught by the coaches. The qualitative results for teachers were 'children's engagement', a 'pedagogical paradigm shift', and 'relatedness'; and for coaches 'organisational culture' and 'insufficient support and motivation'. The SHARP Principles intervention is the most effective teaching strategy at increasing MVPA in primary PE when taught by school based staff (rather than outsourced coaches), evidencing increases almost double that of any previously published study internationally and demonstrating the capacity to influence educational policy and practice internationally.Published versio

    Self-Evaluation Applied Mathematics 2003-2008 University of Twente

    Get PDF
    This report contains the self-study for the research assessment of the Department of Applied Mathematics (AM) of the Faculty of Electrical Engineering, Mathematics and Computer Science (EEMCS) at the University of Twente (UT). The report provides the information for the Research Assessment Committee for Applied Mathematics, dealing with mathematical sciences at the three universities of technology in the Netherlands. It describes the state of affairs pertaining to the period 1 January 2003 to 31 December 2008

    Queuetopia: Second-World Modernity and the Soviet Culture of Allocation

    Get PDF
    The social structure of the queue, from its most basic forms as a spontaneous group of people on the street, to the ordered lists of status-based priorities within society, leads to rich discussions on consumption, the behavior of crowds, and everyday life within Soviet society. By viewing how practices such as queuing were encoded in Soviet culture, the dissertation theorizes how everyday life was based on discourses of scarcity and abundance. I contend in my second chapter that second-world modernity was not predicated on the speed and calculation usually associated with modern life. Instead, it stressed a precise social ordering of allocation and a progress defined by the materiality of Soviet life. This notion of modernity operates irrespective of the temporal concerns usually associated with the first-world. In Chapter Three, I discuss how cities themselves served as the ultimate Soviet commodity, allocated to citizens who supported the Soviet project. Central to my analysis is a conceptualization of Soviet subjectivity through the prism of the queue, in which I explore how voices of individual priority operated simultaneously amongst discourses of collectivity. Chapter Four looks at this notion, called ocherednost' (queue priority), which traces how authors expressed their concerns within the very same collective and allocative discourses of queuing. The dissertation also looks at Soviet material culture and what goods meant in a culture of shortage in Chapter Five, titled “Trofeinost' (trophying) and the Phantasmagoria of Everyday Consumption.” It details the fantastic, absurd, and imaginative ways in which Soviet consumer culture was depicted in fiction. Commodities themselves become objects of attention and structural devices in narrative. Finally, the concluding chapter looks at the post-Soviet period and the proclamations of the capitalist world’s so-called “culture of abundance.” Vestiges of queuing in the post-Soviet period continued to exist, even after the connection between consumers and a state-ordered system of allocation collapsed. The legacy of second-world modernity continues to permeate the current landscape; habitual practices become transformed into cultural events and performances, such as queuing flash mobs and board games

    Towards Distributed Task-based Visualization and Data Analysis

    Get PDF
    To support scientific work with large and complex data the field of scientific visualization emerged in computer science and produces images through computational analysis of the data. Frameworks for combination of different analysis and visualization modules allow the user to create flexible pipelines for this purpose and set the standard for interactive scientific visualization used by domain scientists. Existing frameworks employ a thread-parallel message-passing approach to parallel and distributed scalability, leaving the field of scientific visualization in high performance computing to specialized ad-hoc implementations. The task-parallel programming paradigm proves promising to improve scalability and portability in high performance computing implementations and thus, this thesis aims towards the creation of a framework for distributed, task-based visualization modules and pipelines. The major contribution of the thesis is the establishment of modules for Merge Tree construction and (based on the former) topological simplification. Such modules already form a necessary first step for most visualization pipelines and can be expected to increase in importance for larger and more complex data produced and/or analysed by high performance computing. To create a task-parallel, distributed Merge Tree construction module the construction process has to be completely revised. We derive a novel property of Merge Tree saddles and introduce a novel task-parallel, distributed Merge Tree construction method that has both good performance and scalability. This forms the basis for a module for topological simplification which we extend by introducing novel alternative simplification parameters that aim to reduce the importance of prior domain knowledge to increase flexibility in typical high performance computing scenarios. Both modules lay the groundwork for continuative analysis and visualization steps and form a fundamental step towards an extensive task-parallel visualization pipeline framework for high performance computing.Wissenschaftliche Visualisierung ist eine Disziplin der Informatik, die durch computergestützte Analyse Bilder aus Datensätzen erzeugt, um das wissenschaftliche Arbeiten mit großen und komplexen Daten zu unterstützen. Softwaresysteme, die dem Anwender die Kombination verschiedener Analyse- und Visualisierungsmodule zu einer flexiblen Pipeline erlauben, stellen den Standard für interaktive wissenschaftliche Visualisierung. Die hierfür bereits existierenden Systeme setzen auf Thread-Parallelisierung mit expliziter Kommunikation, sodass das Feld der wissenschaftlichen Visualisierung auf Hochleistungsrechnern meist spezialisierten Direktlösungen überlassen wird. An dieser Stelle scheint Task-Parallelisierung vielversprechend, um Skalierbarkeit und Übertragbarkeit von Lösungen für Hochleistungsrechner zu verbessern. Daher zielt die vorliegende Arbeit auf die Umsetzung eines Softwaresystems für verteilte und task-parallele Visualisierungsmodule und -pipelines ab. Der zentrale Beitrag den die vorliegende Arbeit leistet ist die Einführung zweier Module für Merge Tree Konstruktion und topologische Datenbereinigung. Solche Module stellen bereits einen notwendigen ersten Schritt für die meisten Visualisierungspipelines dar und werden für größere und komplexere Datensätze, die im Hochleistungsrechnen erzeugt beziehungsweise analysiert werden, erwartungsgemäß noch wichtiger. Um eine Task-parallele, verteilbare Konstruktionsmethode für Merge Trees zu entwickeln musste der etablierte Algorithmus grundlegend überarbeitet werden. In dieser Arbeit leiten wir eine neue Eigenschaft für Merge Tree Knoten her und entwickeln einen neuartigen Konstruktionsalgorithmus, der gute Performance und Skalierbarkeit aufweist. Darauf aufbauend entwickeln wir ein Modul für topologische Datenbereinigung, welche wir durch neue, alternative Bereinigungsparameter erweitern, um die Flexibilität im Einstaz auf Hochleistungsrechnern zu erhöhen. Beide Module ermöglichen weiterführende Analyse und Visualisierung und setzen einen Grundstein für die Entwicklung eines umfassenden Task-parallelen Softwaresystems für Visualisierungspipelines auf Hochleistungsrechnern

    Patient perspectives on integrated healthcare for HIV, hypertension and type 2 diabetes: a scoping review

    Get PDF
    Introduction Antiretroviral therapy has reduced mortality and led to longer life expectancy in people living with HIV. These patients are now at an increased risk of non-communicable diseases (NCDs). Integration of care for HIV and NCDs has become a focus of research and policy. In this article, we aim to review patient perspectives on integration of healthcare for HIV, type 2 diabetes and hypertension. Methods The framework for scoping reviews developed by Arksey and O'Malley and updated by Peter et al was applied for this review. The databases PubMed, Web of Science and Cochrane library were searched. Broad search terms for HIV, NCDs (specifically type 2 diabetes and hypertension) and healthcare integration were used. As the review aimed to identify definitions of patient perspectives, they were not included as an independent term in the search strategy. References of included publications were searched for relevant articles. Titles and abstracts for these papers were screened by two independent reviewers. The full texts for all the publications appearing to meet the inclusion criteria were then read to make the final literature selection. Results Of 5502 studies initially identified, 13 articles were included in this review, of which 11 had a geographical origin in sub-Saharan Africa. Nine articles were primarily focused on HIV/diabetes healthcare integration while four articles were focused on HIV/hypertension integration. Patient’s experiences with integrated care were reduced HIV-related stigma, reduced travel and treatment costs and a more holistic person-centred care. Prominent concerns were long waiting times at clinics and a lack of continuity of care in some clinics due to a lack of healthcare workers. Non-integrated care was perceived as time-consuming and more expensive. Conclusion Patient perspectives and experiences on integrated care for HIV, diabetes and hypertension were mostly positive. Integrated services can save resources and allow for a more personalised approach to healthcare. There is a paucity of evidence and further longitudinal and interventional evidence from a more diverse range of healthcare systems are needed
    corecore