246 research outputs found

    Behavioral types in programming languages

    Get PDF
    A recent trend in programming language research is to use behav- ioral type theory to ensure various correctness properties of large- scale, communication-intensive systems. Behavioral types encompass concepts such as interfaces, communication protocols, contracts, and choreography. The successful application of behavioral types requires a solid understanding of several practical aspects, from their represen- tation in a concrete programming language, to their integration with other programming constructs such as methods and functions, to de- sign and monitoring methodologies that take behaviors into account. This survey provides an overview of the state of the art of these aspects, which we summarize as the pragmatics of behavioral types

    The New Chicana Heroine: Representations of Anzaldua\u27s Mestiza Consciousness in Chicana Feminist Cultural Productions

    Get PDF
    This thesis analyzes Gloria Anzaldúa‟s mestiza consciousness as a representation seen thematically in Chicana feminist cultural productions. Mestiza consciousness, defined in Anzaldúa‟s Borderlands/La Frontera, is a non-binary feminist ideology, which proposes a third space in female identity, explored in terms of gender, class, race, and sexuality identification. The representation of mestiza consciousness in Chicana feminist cultural productions is proposed as a new trope in Chicana\o cultural studies, which I term the “New Chicana Heroine.” The New Chicana Heroine is both a proposal and representation of a third space in female identity. An examination of several authors, artists, and filmmakers, spanning multiple decades and genres, are viewed to distinguish the New Chicana Heroine as a distinct female representation. The Chicano nationalist ideology of La Familia and Chicana mother‟s role are indicated as key influences in the formation of Chicana identity and the identification of the New Chicana Heroine

    Formalisation of Smart Contract Languages

    Get PDF
    Smart contracts automatically verify and enforce contractual agreements without the need of a trusted intermediary, as potential conflicts are resolved by the network’s consensus protocol. Since "code is law", contracts should be correct, but bugs and vulnerabilities, often exploited by attackers, allow erroneous or even fraudulent behaviour. These days smart contracts are still mostly being written in general purpose programming languages, without proper specifications, let alone correctness proofs. Immutability is one of its selling points, but it is also one of its major problems, as once a contract is deployed to the blockchain it cannot be amended. Additionally, many vulnerabilities come from the misimplementation of contracts’ intended behaviour, as developers struggle to grasp the behavioural impact that the contract has in the blockchain. It is thus crucial to achieve correct implementations of smart contracts. In order to aid developers to promote the design of safer contracts that follow the protocols they are supposed to implement, we propose the use of behavioural types in smart languages. We believe that the use of typestates, for dynamic checking, and session types, for static checking, can ensure the intended behaviour of the contract before and during its execution. To better understand a contract’s behaviour throughout its execution, we took advantage of Racket (and PLT Redex), to have a visualisation of a step-by-step execution graph. By formally defining the syntax and reduction rules of a "core" smart contract language, and how each rule affects the statements and the programs configuration, this visualisation tool allows programmers to check and adjust the language’s formal semantics. This is a successful proof-of-concept exercise, confirming the suitability of Racket to develop program semantics which can be analysed throughout its execution. In the context of smart contract languages, these are important features (to be combined with formal verification with proof assistants). Furthermore, we also implemented a typechecker in OCaml that provides a type derivation tree of the program, in addition to preventing the occurrence of execution errors. To illustrate the usefulness of this approach, we took two different smart contract languages, one completely formalised with syntax, operational semantics and type system (Featherweight solidity, FS), and another only with its natural language semantics (Flint). We formalised FS in Racket and OCaml, where we were able to detect an inaccuracy; and we repeated this process with Flint, formalising its operation semantics and type system. The latter was much more challenging as it incorporated the use of typestates. Throughout this thesis, we present many examples on how the use of visual tools can help in the developing states of contracts and better understand the correct execution of programs, as well as how the use of behavioural types can prevent many execution errors even before running. The framework we define herein not only finds defects in the contracts, but also, crucially, detects vulnerabilities in a language construction, as we demonstrate with our use-cases. Therefore, this approach is very valuable not only for the programmer as visual debugging, but also for the language designer to test the effects of definitions

    The Justinian

    Get PDF

    Douglas College Calendar 1997-1998:

    Get PDF
    Hardcopy available from Douglas College Archives

    1990 Faculty Senate Meeting Minutes

    Get PDF
    Faculty Senate meeting minutes of Morehead State University for 1990

    Daily Eastern News: October 10, 1962

    Get PDF
    https://thekeep.eiu.edu/den_1962_oct/1001/thumbnail.jp
    • …
    corecore