Filters








3,367 Hits in 5.0 sec

An ML-style record calculus with extensible records [article]

Sandra Alves, Miguel Ramos
2021 arXiv   pre-print
Most ML-style polymorphic record calculi that support extensible records are based on row variables.  ...  In this work, we develop a polymorphic record calculus with extensible records. Extensible records are records that can have new fields added to them, or preexisting fields removed from them.  ...  An ML-style Record Calculus with Extensible Records In this section we introduce an ML-style record calculus with extensible records.  ... 
arXiv:2108.06296v1 fatcat:kpbrodknxvh2lgzeumt6da47pe

An interoperable calculus for external object access

Atsushi Ohori, Kiyoshi Yamatodani
2002 Proceedings of the seventh ACM SIGPLAN international conference on Functional programming - ICFP '02  
By extending an ML-style type system with record polymorphism, recursive type definition, and an ordering relation induced by field inclusion, it is possible to achieve seamless and type safe interoperability  ...  This calculus enjoys the features of both higher-order programming with ML polymorphism and class-based object-oriented programming with dynamic method dispatch.  ...  In the present work, we take an alternative approach of developing an ML-style language with a minimum extension for interfacing with a class-based object-oriented language.  ... 
doi:10.1145/581478.581485 dblp:conf/icfp/OhoriY02 fatcat:jsbsugltyzhyfjbofoz3eqql2m

The typed polymorphic label-selective λ-calculus

Jacques Garrigue, Hassan Aït-Kaci
1994 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '94  
extension of ML obviating the need of records.  ...  In this paper, we propose a simply typed version of the calculus, then extend it to one with ML-like polymorphic types.  ...  October 1993 Digital PRL The Typed Polymorphic Label-Selective -Calculus 25  ... 
doi:10.1145/174675.174434 dblp:conf/popl/GarrigueA94 fatcat:yjchufqfwvclzlkihrahmddgne

A compilation method for ML-style polymorphic record calculi

Atsushi Ohori
1992 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '92  
We define a polymorphic record calculus as an extension of Damas and Milner's proof system for ML.  ...  There seems to be, however, no established method to compile an ML-style polymorphic record calculus into efficient code. The purpose of this paper is to present one such method.  ...  examples of compiling an ML-style type inference session.  ... 
doi:10.1145/143165.143200 dblp:conf/popl/Ohori92 fatcat:hzkyheuclzg4zjcgjfklg3z2xa

A polymorphic record calculus and its compilation

Atsushi Ohori
1995 ACM Transactions on Programming Languages and Systems  
We then develop an ML-style type inference algorithm for a predicative subset of the second-order record calculus.  ...  We define a second-order, polymorphic record calculus as an extension of Girard-Reynolds polymorphic lambda calculus.  ...  CONCLUSIONS We have given a polymorphic type discipline for records and variants as an extension of the Girard-Reynolds second-order lambda calculus and have defined an ML-style polymorphic record calculus  ... 
doi:10.1145/218570.218572 fatcat:llr6ov3mdjew3ey7kb6kh7h4tq

Type inference for record concatenation and multiple inheritance

Mitchell Wand
1991 Information and Computation  
We show that the type inference problem for a lambda calculus with records, including a record concatenation operator, is decidable.  ...  We show that this calculus does not have principal types, but does have finite complete sets of types: that is, for any term M in the calculus, there exists an effectively generable finite set of type  ...  CONCLUSIONS We have presented an algorithm for doing type inference for the lambda calculus with records and record concatenation.  ... 
doi:10.1016/0890-5401(91)90050-c fatcat:asxeuqazbrcoforptpgehhpk7a

Toward a typed foundation for method specialization and inheritance

John C. Mitchell
1990 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '90  
The soundness of the typing rules (without subtyping) is suggested by a translation into a more traditiona. calculus with recursively-defined record types.  ...  A typed function calculus of objeck and classes is presented, featuring method specialization when methods are added or redefined.  ...  B Summary of full typed calculus B. 1 Overview The basic calculus we use is a higher-order typed lambda calculus, 'in the general style of Girard's F, [Gir71, Gir72] d an many subsequent systems.  ... 
doi:10.1145/96709.96719 dblp:conf/popl/Mitchell90 fatcat:mgxb6om6gjggnh4ryitghetwgy

Type system for specializing polymorphism [chapter]

Atsushi Ohori
1997 Lecture Notes in Computer Science  
We first present a method for coherent transformation of an ML style polymorphic language into an explicitly typed calculus.  ...  We then analyze the existing methods for compiling record calculus and unboxed calculus, extract their common structure, and develop a framework for type based specialization of polymorphism.  ...  We write d{x = e} for the extension of d with x = e.  ... 
doi:10.1007/bfb0014549 fatcat:wljwa33z2bgnvg7lxwpqnzgyye

Extensible programming with first-class cases

Matthias Blume, Umut A. Acar, Wonseok Chae
2006 Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming - ICFP '06  
We give a type system for the language and provide rules for a 2-phase transformation: first into an explicitly typed λ-calculus with record polymorphism, and finally to efficient index-passing code.  ...  We present language mechanisms for polymorphic, extensible records and their exact dual, polymorphic sums with extensible first-class cases.  ...  , then into an untyped λ-calculus LRec where records are represented as vectors with numeric indices.  ... 
doi:10.1145/1159803.1159836 dblp:conf/icfp/BlumeAC06 fatcat:mm43vfniz5eovgew2ghil5q4ka

Extensible programming with first-class cases

Matthias Blume, Umut A. Acar, Wonseok Chae
2006 SIGPLAN notices  
We give a type system for the language and provide rules for a 2-phase transformation: first into an explicitly typed λ-calculus with record polymorphism, and finally to efficient index-passing code.  ...  We present language mechanisms for polymorphic, extensible records and their exact dual, polymorphic sums with extensible first-class cases.  ...  , then into an untyped λ-calculus LRec where records are represented as vectors with numeric indices.  ... 
doi:10.1145/1160074.1159836 fatcat:nxza4vp2p5c4ja5q3rfjqogakm

An Interpretation of Typed Concurrent Objects in the Blue Calculus [chapter]

Silvano Dal Zilio
2000 Lecture Notes in Computer Science  
The target of our interpretation is a version of the blue calculus, a variant of the π-calculus that directly contains functions, with record and firstorder types.  ...  We propose an interpretation of a typed concurrent calculus of objects based on the imperative object calculus of Abadi and Cardelli.  ...  I had useful converstions with Andrew Gordon, Paul Hankin, Massimo Merro and Davide Sangiorgi.  ... 
doi:10.1007/3-540-44929-9_29 fatcat:n7gnrdh4tzejnkufx7yguyx77i

Should ML be Object-Oriented?

David MacQueen
2002 Formal Aspects of Computing  
We argue that while some of the simpler aspects of object-oriented languages are compatible with ML, adding a full-fledged class-based object system to ML leads to an excessively complex type system and  ...  relatively little expressive gain, especially if we aim to preserve that mostly functional style of programming that is a major advantage of ML.  ...  The semantics of such an extension is complex, and it is a major departure from the traditional lambda calculus-derived semantics of ML.  ... 
doi:10.1007/s001650200010 fatcat:ksfyslgzrfhcfd6viuxiym2nsa

Type-theoretic foundations for concurrent object-oriented programing

Naoki Kobayashi, Akinori Yonezawa
1994 SIGPLAN notices  
Based on an analogous view "concurrent object-oriented programming = concurrent calculus + record," we develop a static type system for concurrent objectoriented programming.  ...  The view that lies common is "object-oriented programming = X-calculus + record."  ...  This line of our work has been much improved by conversations with many people including Atsushi Ohori, Jean-Marc Andreoli, Remo Pareschi, Dale Miller, Vijay Saraswat, Samson Abramsky, Simon Gay, and Vasco  ... 
doi:10.1145/191081.191088 fatcat:7kcexsy7wvgg7buqpbpmojjbnq

The Theory of Classification, Part 11: Adding Class Types to Object Implementations

Anthony J.H. Simons
2004 Journal of Object Technology  
So, on the left-hand side, we have a base record with the (more detailed, record) type: { x : → Integer, y : → Integer, equal : σ → Boolean} and on the right-hand side, we have an extension record with  ...  TYPE SOUNDNESS OF INHERITANCE We now want to satisfy ourselves that the record combination expression with ⊕, which models the extension of an object by inheritance, is itself type sound.  ... 
doi:10.5381/jot.2004.3.3.c1 fatcat:jumg6veezjbazpiqlu6aw5ernu

Page 8116 of Mathematical Reviews Vol. , Issue 2000k [page]

2000 Mathematical Reviews  
Summary: “In this paper we present an extension of logic program- ming (LP) that is suitable not only for the ‘rational’ component of a single agent but also for the ‘reactive’ component and that can encompass  ...  We modify an earlier abductive proof procedure and embed it within an agent cycle.  ... 
« Previous Showing results 1 — 15 out of 3,367 results