74,909 research outputs found

    Curry-style type Isomorphisms and Game Semantics

    Get PDF
    Curry-style system F, ie. system F with no explicit types in terms, can be seen as a core presentation of polymorphism from the point of view of programming languages. This paper gives a characterisation of type isomorphisms for this language, by using a game model whose intuitions come both from the syntax and from the game semantics universe. The model is composed of: an untyped part to interpret terms, a notion of game to interpret types, and a typed part to express the fact that an untyped strategy plays on a game. By analysing isomorphisms in the model, we prove that the equational system corresponding to type isomorphisms for Curry-style system F is the extension of the equational system for Church-style isomorphisms with a new, non-trivial equation: forall X.A = A[forall Y.Y/X] if X appears only positively in A.Comment: Accept\'e \`a Mathematical Structures for Computer Science, Special Issue on Type Isomorphism

    The C++0x "Concepts" Effort

    Full text link
    C++0x is the working title for the revision of the ISO standard of the C++ programming language that was originally planned for release in 2009 but that was delayed to 2011. The largest language extension in C++0x was "concepts", that is, a collection of features for constraining template parameters. In September of 2008, the C++ standards committee voted the concepts extension into C++0x, but then in July of 2009, the committee voted the concepts extension back out of C++0x. This article is my account of the technical challenges and debates within the "concepts" effort in the years 2003 to 2009. To provide some background, the article also describes the design space for constrained parametric polymorphism, or what is colloquially know as constrained generics. While this article is meant to be generally accessible, the writing is aimed toward readers with background in functional programming and programming language theory. This article grew out of a lecture at the Spring School on Generic and Indexed Programming at the University of Oxford, March 2010

    Relational parametricity for higher kinds

    Get PDF
    Reynolds’ notion of relational parametricity has been extremely influential and well studied for polymorphic programming languages and type theories based on System F. The extension of relational parametricity to higher kinded polymorphism, which allows quantification over type operators as well as types, has not received as much attention. We present a model of relational parametricity for System Fω, within the impredicative Calculus of Inductive Constructions, and show how it forms an instance of a general class of models defined by Hasegawa. We investigate some of the consequences of our model and show that it supports the definition of inductive types, indexed by an arbitrary kind, and with reasoning principles provided by initiality

    FABP-2 and PPAR-Îł Haplotype as Risk Factors for Dyslipidemia in a Type 2 Diabetes Mellitus Population of Santa Rosa del Conlara, San Luis, Argentina

    Get PDF
    Introduction: Type 2 Diabetes Mellitus (T2DM) is a complex disorder caused by the interaction between genetic predisposition and environmental factors. Genetics plays an important role on lipid homeostasis. Many genes are involved in the lipid metabolism, such as FABP-2 and PPAR-Îł. Aim: To evaluate the association between specific SNPs and haplotypes of the FABP-2 and PPAR-Îł genes with T2DM and lipid profile in an Argentinean population. Methods: The FABP-2 (rs1799883) and PPAR-Îł (rs1801282) polymorphisms were genotyped and analyzed in association with lipid profile and T2DM, separately and also combined in haplotypes. Results: The frequency of the rare Thr54 allele of the FABP-2 polymorphism in control (0.33) was not different from the frequency in T2DM (0.27), whereas the frequency of the rare Ala12 allele of the PPAR-Îł polymorphism in control was different from the frequency in T2DM (0.26 and 0.14, respectively; p = 0.0031). Frequencies of haplotypes for these two single-nucleotide polymorphisms differed significantly in control and T2DM. Haplotype association analysis showed the associations between ThrPro haplotype and TG levels (OR = 2.520; 95% CI = 1.139 - 5.575; p = 0.027) and between ThrPro haplotype and TC and LDL-c levels when compared to AlaPro haplotype (difference = 0.175, 95% CI = 0068 - 0.499, p < 0.0001; difference = 0.052, 95% CI = 0.017 - 0.158, p < 0.0001, respectively). Conclusions: These results from a haplotype analysis show for the first time that genetic combinations of alleles of the FABP-2 and PPAR-Îł gene could play a role in the susceptibility to develop dyslipemia in T2DM.Fil: Siewert, Susana Elfrida. Universidad Nacional de San Luis. Facultad de QuĂ­mica, BioquĂ­mica y Farmacia. Departamento de BioquĂ­mica y Ciencias BiolĂłgicas. Laboratorio de Diabetes; ArgentinaFil: Olmos Nicotra, Maria Florencia. Universidad Nacional de San Luis. Facultad de QuĂ­mica, BioquĂ­mica y Farmacia. Departamento de BioquĂ­mica y Ciencias BiolĂłgicas. Laboratorio de Diabetes; Argentina. Consejo Nacional de Investigaciones CientĂ­ficas y TĂ©cnicas; ArgentinaFil: Gonzalez, Irma Ines. Universidad Nacional de San Luis. Facultad de QuĂ­mica, BioquĂ­mica y Farmacia. Departamento de BioquĂ­mica y Ciencias BiolĂłgicas. Laboratorio de Diabetes; ArgentinaFil: Fernandez, Gustavo. Universidad Nacional de San Luis. Facultad de QuĂ­mica, BioquĂ­mica y Farmacia. Departamento de BioquĂ­mica y Ciencias BiolĂłgicas. Laboratorio de Diabetes; ArgentinaFil: Ojeda, Marta Susana. Universidad Nacional de San Luis. Facultad de QuĂ­mica, BioquĂ­mica y Farmacia. Departamento de BioquĂ­mica y Ciencias BiolĂłgicas. Laboratorio de Diabetes; Argentin

    Linear Haskell: practical linearity in a higher-order polymorphic language

    Get PDF
    Linear type systems have a long and storied history, but not a clear path forward to integrate with existing languages such as OCaml or Haskell. In this paper, we study a linear type system designed with two crucial properties in mind: backwards-compatibility and code reuse across linear and non-linear users of a library. Only then can the benefits of linear types permeate conventional functional programming. Rather than bifurcate types into linear and non-linear counterparts, we instead attach linearity to function arrows. Linear functions can receive inputs from linearly-bound values, but can also operate over unrestricted, regular values. To demonstrate the efficacy of our linear type system - both how easy it can be integrated in an existing language implementation and how streamlined it makes it to write programs with linear types - we implemented our type system in GHC, the leading Haskell compiler, and demonstrate two kinds of applications of linear types: mutable data with pure interfaces; and enforcing protocols in I/O-performing functions
    • …
    corecore