14,329 research outputs found

    5 Sikaiana words and translations

    Get PDF
    A list of Sikaiana words, their grammatical functions, some examples and their English translations. Readers are advised to have the abbreviations guide when examining the words.https://research.library.kutztown.edu/sikaiana_dictionary/1002/thumbnail.jp

    1 Dictionary of the Sikaiana Language

    Get PDF
    Full Dictionary of the Sikaiana language including short grammar, list of words with grammatical functions, examples, English glosses, finder list, personal names, place names, English/Pijin borrowings, illustrations.https://research.library.kutztown.edu/sikaiana_dictionary/1005/thumbnail.jp

    Engendering Life: String Objects as a Model of Process, Pattern, and Praxis in Melanesia

    Get PDF
    In this thesis, I show that string objects materialize and instantiate social organizing principles in Melanesia. In this region, objects like string figures, bilum bags, and fishing nets are vehicles for thought, where mind and material unite to create a multivalent and interactive model of social and temporal relations. Due to the prevalence and universality of string practices in the region, this model is available to everyone. Social and temporal relations become apparent due to the understanding that string objects possess ‘processuality,’ that the materials of string objects, their (re-)production, and (re-)use are constantly in flux rather than in a state of stasis. Through processuality, string objects convey the relations and circumstances in which desired outcomes should be achieved, prefiguring patterns, processes, and operational sequences which are then instantiated in the social framework. I show that the cognitive and physical processes of string objects in the microcosm make abstract concepts concrete and achievable in social practice by reproducing the same pattern through different levels of social life. I therefore explore how other social activities such as tuber gardening and sexual reproduction produce social cohesion and stability in a similar way to string objects. I argue that string objects are a vehicle through which social actors can conceive of the patterns and processes necessary to sustain life in the macrocosm. Through the coalescence of differentiated and reciprocal labor, string objects make evident the conditions necessary for productivity and efficacy in the social system. In conclusion, I assert that string objects contribute to fundamental understandings of social life in Melanesia

    Unwoven Aspect Analysis

    Get PDF
    Various languages and tools supporting advanced separation of concerns (such as aspect-oriented programming) provide a software developer with the ability to separate functional and non-functional programmatic intentions. Once these separate pieces of the software have been specified, the tools automatically handle interaction points between separate modules, relieving the developer of this chore and permitting more understandable, maintainable code. Many approaches have left traditional compiler analysis and optimization until after the composition has been performed; unfortunately, analyses performed after composition cannot make use of the logical separation present in the original program. Further, for modular systems that can be configured with different sets of features, testing under every possible combination of features may be necessary and time-consuming to avoid bugs in production software. To solve this testing problem, we investigate a feature-aware compiler analysis that runs during composition and discovers features strongly independent of each other. When the their independence can be judged, the number of feature combinations that must be separately tested can be reduced. We develop this approach and discuss our implementation. We look forward to future programming languages in two ways: we implement solutions to problems that are conceptually aspect-oriented but for which current aspect languages and tools fail. We study these cases and consider what language designs might provide even more information to a compiler. We describe some features that such a future language might have, based on our observations of current language deficiencies and our experience with compilers for these languages

    A Component-Based and Aspect-Oriented Model for Software Evolution

    Get PDF
    International audienceComponent-Based Software Development (CBSD) and Aspect-Oriented Software Development (AOSD) are solutions to support software evolution by decomposing a software system into concerns. In this article, we propose Fractal Aspect Component (FAC), a general and symmetrical model for components and aspects. FAC decomposes a software system into regular components and aspect components which embody crosscutting concerns. We reify the relationship between an aspect component and a component, called an aspect binding, as a first-class runtime entity. The evolution of the system can be expressed by adding or removing components (aspect or regular) and by setting bindings (regular or crosscutting)

    Run-time Variability with Roles

    Get PDF
    Adaptability is an intrinsic property of software systems that require adaptation to cope with dynamically changing environments. Achieving adaptability is challenging. Variability is a key solution as it enables a software system to change its behavior which corresponds to a specific need. The abstraction of variability is to manage variants, which are dynamic parts to be composed to the base system. Run-time variability realizes these variant compositions dynamically at run time to enable adaptation. Adaptation, relying on variants specified at build time, is called anticipated adaptation, which allows the system behavior to change with respect to a set of predefined execution environments. This implies the inability to solve practical problems in which the execution environment is not completely fixed and often unknown until run time. Enabling unanticipated adaptation, which allows variants to be dynamically added at run time, alleviates this inability, but it holds several implications yielding system instability such as inconsistency and run-time failures. Adaptation should be performed only when a system reaches a consistent state to avoid inconsistency. Inconsistency is an effect of adaptation happening when the system changes the state and behavior while a series of methods is still invoking. A software bug is another source of system instability. It often appears in a variant composition and is brought to the system during adaptation. The problem is even more critical for unanticipated adaptation as the system has no prior knowledge of the new variants. This dissertation aims to achieve anticipated and unanticipated adaptation. In achieving adaptation, the issues of inconsistency and software failures, which may happen as a consequence of run-time adaptation, are evidently addressed as well. Roles encapsulate dynamic behavior used to adapt players representing the base system, which is the rationale to select roles as the software system's variants. Based on the role concept, this dissertation presents three mechanisms to comprehensively address adaptation. First, a dynamic instance binding mechanism is proposed to loosely bind players and roles. Dynamic binding of roles enables anticipated and unanticipated adaptation. Second, an object-level tranquility mechanism is proposed to avoid inconsistency by allowing a player object to adapt only when its consistent state is reached. Last, a rollback recovery mechanism is proposed as a proactive mechanism to embrace and handle failures resulting from a defective composition of variants. A checkpoint of a system configuration is created before adaptation. If a specialized bug sensor detects a failure, the system rolls back to the most recent checkpoint. These mechanisms are integrated into a role-based runtime, called LyRT. LyRT was validated with three case studies to demonstrate the practical feasibility. This validation showed that LyRT is more advanced than the existing variability approaches with respect to adaptation due to its consistency control and failure handling. Besides, several benchmarks were set up to quantify the overhead of LyRT concerning the execution time of adaptation. The results revealed that the overhead introduced to achieve anticipated and unanticipated adaptation to be small enough for practical use in adaptive software systems. Thus, LyRT is suitable for adaptive software systems that frequently require the adaptation of large sets of objects
    corecore