scholarly journals Data Types as Functions

1978 ◽  
Vol 7 (89) ◽  
Author(s):  
Brian H. Mayoh

This paper introduces a new, simple definition of what a data type is. This definition gives one possible solution of the theoretical problems: when can an actual parameter of type T be substituted for a formal parameter of type T'? When can a type T' be implemented as another type T''? The preprint is an extended version of a paper presented at MFCS 78, Zakopane.

2010 ◽  
Vol 20 (4) ◽  
pp. 639-654 ◽  
Author(s):  
CÉSAR DOMÍNGUEZ ◽  
DOMINIQUE DUVAL

This paper provides an abstract definition of a class of logics, called diagrammatic logics, together with a definition of morphisms and 2-morphisms between them. The definition of the 2-category of diagrammatic logics relies on category theory, mainly on adjunction, categories of fractions and limit sketches. This framework is applied to the formalisation of a parameterisation process. This process, which consists of adding a formal parameter to some operations in a given specification, is presented as a morphism of logics. Then the parameter passing process for recovering a model of the given specification from a model of the parameterised specification and an actual parameter is shown to be a 2-morphism of logics.


2000 ◽  
Vol 10 (2) ◽  
pp. 261-276 ◽  
Author(s):  
JONATHAN P. SELDIN

The representation of the inductively defined abstract data type for lists was left incomplete in Seldin (1997, Section 9). Here that representation is completed, and it is proved that all extra axioms needed are consistent. Among the innovations of this paper is a definition of cdr, whose definition was left for future work in Seldin (1997, Section 9). The results are then extended to other abstract data types – those of Berardi (1993). The method used to define cdr for lists is extended to obtain the definition of an inverse for each argument of each constructor of an abstract data type. These inverses are used to prove the injective property for the constructors. Also, Dedekind's method of defining the natural numbers is used to define a predicate associated with each abstract data type, and the use of this predicate makes it unnecessary to postulate the induction principle. The only axioms left to be proved are those asserting the disjointness of the co-domains of different constructors, and it is shown that those axioms can be proved consistent.


2000 ◽  
Vol 10 (2) ◽  
pp. 191-225 ◽  
Author(s):  
PAUL HOOGENDIJK ◽  
OEGE DE MOOR

A program derivation is said to be polytypic if some of its parameters are data types. Often these data types are container types, whose elements store data. Polytypic program derivations necessitate a general, non-inductive definition of ‘container (data) type’. Here we propose such a definition: a container type is a relator that has membership. It is shown how this definition implies various other properties that are shared by all container types. In particular, all container types have a unique strength, and all natural transformations between container types are strong.


1995 ◽  
Vol 60 (4) ◽  
pp. 1054-1086 ◽  
Author(s):  
René David ◽  
Karim Nour

AbstractStorage operators have been introduced by J. L. Krivine in [5] they are closed λ-terms which, for a data type, allow one to simulate a “call by value” while using the “call by name” strategy. In this paper, we introduce the directed λ-calculus and show that it has the usual properties of the ordinary λ-calculus. With this calculus we get an equivalent—and simple—definition of the storage operators that allows to show some of their properties:• the stability of the set of storage operators under the β-equivalence (Theorem 5.1.1);• the undecidability (and semidecidability) of the problem “is a closed λ-term t a storage operator for a finite set of closed normal λ-terms?” (Theorems 5.2.2 and 5.2.3);• the existence of storage operators for every finite set of closed normal λ-terms (Theorem 5.4.3);• the computation time of the “storage operation” (Theorem 5.5.2).


2006 ◽  
Vol 16 (4-5) ◽  
pp. 451-483 ◽  
Author(s):  
RALF HINZE

A generic function is a function that can be instantiated on many data types to obtain data type specific functionality. Examples of generic functions are the functions that can be derived in Haskell, such as show, read, and ‘==’. The recent years have seen a number of proposals that support the definition of generic functions. Some of the proposals define new languages, some define extensions to existing languages. As a common characteristic none of the proposals can be made to work within Haskell 98: they all require something extra, either a more sophisticated type system or an additional language construct. The purpose of this paper is to show that one can, in fact, program generically within Haskell 98 obviating to some extent the need for fancy type systems or separate tools. Haskell's type classes are at the heart of this approach: they ensure that generic functions can be defined succinctly and, in particular, that they can be used painlessly. We detail three different implementations of generics both from a practical and from a theoretical perspective.


Cognition ◽  
2021 ◽  
Vol 214 ◽  
pp. 104806
Author(s):  
Tadeg Quillien ◽  
Tamsin C. German

2020 ◽  
Vol 21 (24) ◽  
pp. 9461
Author(s):  
Aurora Savino ◽  
Paolo Provero ◽  
Valeria Poli

Biological systems respond to perturbations through the rewiring of molecular interactions, organised in gene regulatory networks (GRNs). Among these, the increasingly high availability of transcriptomic data makes gene co-expression networks the most exploited ones. Differential co-expression networks are useful tools to identify changes in response to an external perturbation, such as mutations predisposing to cancer development, and leading to changes in the activity of gene expression regulators or signalling. They can help explain the robustness of cancer cells to perturbations and identify promising candidates for targeted therapy, moreover providing higher specificity with respect to standard co-expression methods. Here, we comprehensively review the literature about the methods developed to assess differential co-expression and their applications to cancer biology. Via the comparison of normal and diseased conditions and of different tumour stages, studies based on these methods led to the definition of pathways involved in gene network reorganisation upon oncogenes’ mutations and tumour progression, often converging on immune system signalling. A relevant implementation still lagging behind is the integration of different data types, which would greatly improve network interpretability. Most importantly, performance and predictivity evaluation of the large variety of mathematical models proposed would urgently require experimental validations and systematic comparisons. We believe that future work on differential gene co-expression networks, complemented with additional omics data and experimentally tested, will considerably improve our insights into the biology of tumours.


2011 ◽  
Vol 314-316 ◽  
pp. 2152-2157
Author(s):  
Huan Gu

This document explains and demonstrates how to construct JDF data agent tools on .NET Linq platform. This Agent has the ability to create a Job, to add Nodes to an existing Job, and to modify existing Nodes. It is based on the structure of JDF standard and the definition of markup, and packages the node of each layer and its complicated parameters and data type into the object, forming a programming language model that is based on JDF markup object, and reducing the complexity of developing the printing digital process software basing-on JDFXML standard, providing a reference for developing the same distributed digital system basing-on XML driver.


Sign in / Sign up

Export Citation Format

Share Document