32 citations found. Retrieving documents...
J. C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science, pages 42--51, Philadelphia, Pennsylvania, June 1990.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Once Upon a Type - Turner, Wadler, Mossin (1997)   (71 citations)  (Correct)

....well formedness condition on list types: The type [ is well formed only if Theta j j. In other words, if a list can be accessed many times, then its elements also might be accessed many times (through the list) A similar restriction appears in the type systems of Guzm an and Hudak [GH90] and Wadler [Wad90b, Wad91] 8 3.3 Contexts A context associates a type with each variable that may appear in a term, and is represented by a list of entries of the form x : Contexts Gamma; Delta : x 1 : 1 ; x n : n Each variable in a context must be distinct. If x : is in ....

....which may explain why the authors of these systems were willing to settle for a call by name analysis. 8. 4 Data structure update A number of analyses for in place update of data structures have been proposed, including those by Schmidt [Sch85] Hudak [Hud86] Baker [Bak90] Guzm an and Hudak [GH90], 33 Wadler [Wad90b, Wad91] and Barendsen and Smetsers [BS93] In such analyses it is sufficient to check that there can be at most one live pointer to a data structure. For example, in the following expression the then and else clauses can only be executed after the predicate p(x) has ....

J. Guzm'an and P. Hudak, Single-threaded polymorphic lambda calculus. In Proceedings 5'th IEEE Symposium on Logic in Computer Science, Philadelphia, Pa., June 1990.


Alias Types for Recursive Data Structures - Walker, Morrisett (2000)   (67 citations)  (Correct)

....(e.g. fold and unfold) are sucient to do some programming tasks, but are by no means complete. 6. 2 Related Work Our type system builds upon foundational work by other groups on syntactic control of interference [31] linear logic [13] and linear type systems in functional programming languages [20, 42, 1, 15, 3, 8, 40]. Our research also has much in common with e orts to de ne program logics for reasoning about aliasing [6, 9, 26, 32, 17] In particular, if we view propositions as types, there are striking similarities with recent work by Reynolds [32] who builds on earlier research by Burstall [6] Reynolds ....

Juan C. Guzman and Paul Hudak. Single-threaded polymorphic lambda calculus. In Symposium on Logic in Computer Science, pages 333-343, Philadelphia, June 1990. IEEE Computer Society Press.


Alias Types for Recursive Data Structures - Walker, Morrisett (2000)   (67 citations)  (Correct)

....a theorem prover into our language in order to decide the validity of the logical formulae. 6. 2 Related Work Our type system builds upon foundational work by other groups on syntactic control of interference [31] linear logic [13] and linear type systems in functional programming languages [20, 42, 1, 15, 3, 8, 40]. Our research also has much in common with efforts to define program logics for reasoning about aliasing [6, 9, 26, 32, 17] In particular, if we view propositions as types, there are striking similarities with recent work by Reynolds [32] who builds on earlier research by Burstall [6] ....

Juan C. Guzm'an and Paul Hudak. Single-threaded polymorphic lambda calculus. In Symposium on Logic in Computer Science, pages 333--343, Philadelphia, June 1990. IEEE Computer Society Press. 13


Garbage Collection Based on a Linear Type System - Igarashi, Kobayashi (2000)   (7 citations)  (Correct)

....Moreover, a traditional tracing garbage collector cannot reclaim memory space that is semantically garbage but reachable from the stack or registers. To reuse memory space more eagerly, several techniques have been proposed based on region inference [TT94, AFL95,BTV96] or linear type systems 1 [GH90, Wad90,CGR92,TWM95, Iga97, Mog97, IK00b, Kob99, WJ99]. We follow the latter approach here. Linear (more precisely, ane linear) type systems can guarantee that certain values (called linear values) are used at most once, so we can reclaim memory space for such linear values immediately after they are used. The basic idea of linear type systems is to ....

Juan C. Guzman and Paul Hudak. Single-threaded polymorphic lambda calculus. In Proceedings of the 5th IEEE Symposium on Logic in Computer Science (LICS), pages 333-343, Philadelphia, PA, June 1990.


Quasi-Linear Types - Kobayashi (1999)   (49 citations)  (Correct)

.... order is call byneed, 4 their type system does not have ffi type of values that must be used up locally, and instead it relies on a separate analysis for analyzing the order of memory access (so, the analysis is not integrated as a use type system, and it is rather complex) Guzm an and Hudak [7] and Odersky [17] also proposed a kind of an extension of a linear type system, which can take an evaluation order into account and check that destructive operations on arrays or lists are safely used. Unlike ours, their approach is to let programmers explicitly declare where destructive ....

Juan G. Guzm'an and Paul Hudak. Single-threaded polymorphic lambda calculus. In Proceedings of IEEE Symposium on Logic in Computer Science, pages 333--343, 1990.


A Brief Guide to Linear Logic - Scedrov (1993)   (48 citations)  (Correct)

.... in which garbage collection was replaced by explicit duplication operations based on linear logic [63] Another possible application in functional programming is in optimization of copying in lazy functional programming language implementation ( singlethreadedness ) studied by Guzm an and Hudak [58]. Recent topics involve linear lambda calculus and memory allocation, investigated by Lincoln and Mitchell [70] Chirimar et al. 33, 34] Wadler [90] Mackie [77] and Benton et al. 24] A strong relationship of the multiplicative fragment of linear logic to Petri nets has been demonstrated by ....

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proc. 5-th IEEE Symp. on Logic in Computer Science, Philadelphia, June 1990.


Fully Persistent Arrays for Efficient Incremental Updates and.. - Chuang   (Correct)

....These restrictions are usually expressed in terms of type rules. Therefore, for well typed programs, no compile time analysis for detecting destructible updates is ever needed and all array updates can be done destructively and efficiently. This approach has been explored by Guzm an Hudak [14] and Wadler [25,26] The remaining task is to check, at compile time, whether or not a program is well typed with respect to the single threading type scheme. The type checking algorithms are usually complicated. A common drawback of the compile time analysis approach and the language ....

Juan C. Guzm'an and Paul Hudak. Single--threaded polymorphic lambda calculus. In Proceedings of 5th Annual IEEE Symposium on Logic in Computer Science, pages 333--343. I.E.E.E., June 1990.


Calculi for Functional Programming Languages with Assignment - Rabin (1996)   (5 citations)  (Correct)

....it must be determined that the use of the state object is actually single threaded and thus that it is safe to implement state mutations via in place update of data structures. Schmidt [Schmidt, 1985] 9 and Fradet [Fradet, 1991] give syntactic criteria for proving single threadedness; Guzman [Guzman and Hudak, 1990; Guzman, 1993] gives a type system in which well typed programs possessing certain designated types are thereby proved to be single threaded; another approach based on abstract interpretation is presented in [Odersky, 1991] Wadler has investigated the use of type systems based on linear logic ....

Juan Guzman and Paul Hudak. Single-threaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science, Philadelphia, Pennsylvania, pages 333--343, Los Alamitos, California, June 1990. IEEE Computer Society Press.


Proving Memory Management Invariants for a Language.. - Chirimar, Gunter, Riecke (1992)   (16 citations)  (Correct)

....in developing such lower level operational semantics is to test theses about type systems and memory management. Many new type systems based on linear logic [15, 16] have been proposed that hypothesize simpler garbage collection or in place updating. Others have proposed related type systems [10, 26]. The particular language we study is essentially the linear logic based language of [1, 2] enhanced with the operations of PCF [9, 23] Types are formulas in a fragment of linear logic, and terms encode proofs in the sequent calculus for this fragment (cf. 8, 12] We define two operational ....

Juan C. Guzm'an and Paul Hudak. Singlethreaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science, pages 333--343, 1990.


Arrays in Imperative Lambda Calculus - Kamin, Reddy (1992)   (Correct)

....functions and lazy evaluation, now become available with references and observers as well. So, imperative programming in ILC is much richer than that in conventional imperative languages like Pascal. It is also richer than value oriented (purely functional) solutions to in place updates such as [5, 15, 16]. Our notion of arrays is the following. An array is an indexed collection of references. Since references are dynamic objects, an array becomes a dynamic structure. One can define and use various operations to manipulate arrays such as extracting subarrays, transposing matrices etc. All such ....

.... [ i,1) m (i,1) i [2. n] i,j) m1 (i,j) i,j [2. n] Thus, the argument can be made that the imperative version of this code is actually simpler than the purely functional. However, the truer comparison is with a single threaded functional language, like those in [5, 15, 16]. We take the single threaded lambda calculus, st [5] as a typical example. There are two major differences between the treatment of LUD in st versus ILC. First, there is no type cmd in st only the normal functional types exist (sometimes decorated to indicate single threadedness, but ....

[Article contains additional citation context not shown here]

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Fifth Ann. Symp. on Logic in Comp. Science. IEEE Computer Society, 1990.


Chapter 5: On the Orthogonality of Assignments and.. - Felleisen, Weeks (1996)   (Correct)

....to eliminate procedure calls. Then the resulting simple imperative program is executed. 18, p. 3] Given the recent interest in integrating variations of assignment statements into functional programming languages in a controlled manner and in the design of simple logics for such mixed languages [2, 8, 9, 11, 12, 15, 21], these folklore claims about Algol s design clearly deserve a rigorous analysis. On one hand, such an analysis enhances our understanding of the role of #orthogonality # in Algol. 1 On the other hand, the results improve our understanding of the simple equational logics for mixed ....

.... several programming languages that mix functional and imperative features, i.e. Russell [3] Scheme (Lisp) 2, 7, 8, 11, 12] and ML [22] A recently discovered alternative to mixing functional and fully imperative languages is the addition of a weakened form of assignment to functional languages [9, 15]. None of these languages or calculi is comparable to IA with respect to (imperative) expressive power [5] We suspect that most of these languages satisfy postponement and strong normalization theorems, but it is not clear whether this is relevant given the weakness of their assignment ....

Juan C. Guzman and Paul Hudak. Single-threaded polymorphic lambda-calculus. In Proceedings of the Symposium on Logic in Computer Science, pages 333#345, 1990.


Imperative Lambda Calculus Revisited - Yang, Reddy (1997)   (1 citation)  (Correct)

....system for syntactic control of interference. The promotion and dereliction operations are explicitly represented in the term syntax. In contrast, we make them implicit which gives rise to a harder type inference problem. Some features of our work resemble linear logic based type systems [Wad91, GH90], and effect systems [LG88, TJ94] There are also close connections to subtyping systems [Mit91, FM90] Reynolds [Rey89] has devised an alternative type system for syntactic control of interference using conjunctive types. These ideas could also be used in the context of ilc, though we do not ....

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science [IEE90], pages 333--343.


Quasi-Linear Types - Kobayashi (1999)   (49 citations)  (Correct)

....counting value access: without knowing the value of b, our analysis can only find that both x and y may be used at most once (if the result is used once) and therefore, it infers that z may be used twice. 8. 3 Single threaded lambda calculus Guzm an and Hudak s single threaded lambda calculus [7] also seems to be related with our type system. They proposed a type system to check that destructive updates do not destroy the referential transparency of functional languages. For the type system, they introduced a use, which is similar to but somewhat more general than our use. Major ....

Juan G. Guzm'an and Paul Hudak. Single-threaded polymorphic lambda calculus. In Proceedings of IEEE Symposium on Logic in Computer Science, pages 333--343, 1990.


Linear Logic - Lincoln (1992)   (Correct)

.... in which garbage collection was replaced by explicit duplication operations based on linear logic [21] More recent work has attempted to find a linear logical basis for many optimizations in (lazy) functional programming language implementations by concentrating on linear logic as a type system [1, 15, 39, 40, 25, 8, 29, 41]. Other applications include analyzing the control structure of logic programs [7] generalized logic programming [4, 16] and natural language processing [23] A natural characterization of polynomial time computations can be given in a bounded version of linear logic [13] obtained by limiting ....

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proc. 5-th IEEE Symp. on Logic in Computer Science, Philadelphia, June 1990.


Reference Counting as a Computational Interpretation of.. - Chirimar, Gunter, Riecke (1996)   (35 citations)  (Correct)

.... There are those that use some analog of the Curry Howard correspondence [How80] as the basis for the design of a language based on linear logic [Abr, Hol88, Laf88, LM92, Mac91] and those that consider systems similar to linear logic (hereafter called LL ) for specific applications (for instance, [GH90] and [Wad91b] consider systems to detect single threading) The system presented in this paper falls into the former category, except to the extent that we have added some additional constructs, such as recursive functions, that bring us closer to traditional functional programming languages. To ....

Juan C. Guzm'an and Paul Hudak. Single-threaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science, pages 333--343, 1990. Proofs of the Main Theorems 51


A Partial Rehabilitation of Side-Effecting I/O.. - Schmidt-Schauß (1996)   (Correct)

....shall have a criterion for recognising the correct program transformations thus avoiding pitfalls and incorrect program transformations for compiler optimisations. There are several papers discussing a modelling of sharing in functional languages and calculus [AFM 95, Lau93, PS92, Yos93, GH90] A difference to these works is that our approach is based on a calculus of supercombinators. We model sharing using an environment like [Lau93] and reduction as in the G machine [PJ87, Aug84, Joh84] Our first main result concerns nondeterministic I O without memory, like a call to a random ....

....execution. It may be interesting to investigate the compatibility of the approaches. In the rest of this section, we compare our approach only with proposals for modern (higher order, polymorphic, non strict, lazy) functional languages. The single threaded polymorphic lambda calculus proposed in [GH90] is similar to ours, it also uses sharing of nodes in the reduction, and it proves ChurchRosser properties if the programs are well typed w.r.t. to a single threaded polymorphic type system. They do not consider cyclic graphs nor memoryless interfacing. Predetermining the sequence of external ....

[Article contains additional citation context not shown here]

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda-calculus. In Proc. of 5th IEEE Symposium on Logic in Computer Science, pages 333--343, 1990.


Witnessing Side-Effects - Terauchi, Aiken   (Correct)

No context found.

J. C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proceedings, Fifth Annual IEEE Symposium on Logic in Computer Science, pages 42--51, Philadelphia, Pennsylvania, June 1990.


Decision Problems for Propositional Linear Logic - Patrick Lincoln John (1992)   (67 citations)  (Correct)

No context found.

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proc. 5-th IEEE Symp. on Logic in Computer Science, Philadelphia, June 1990.


Decision Problems for Propositional Linear Logic - Patrick Lincoln John (1992)   (67 citations)  (Correct)

No context found.

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proc. 5-th IEEE Symp. on Logic in Computer Science, Philadelphia, June 1990.


Decision Problems for Propositional Linear Logic - Patrick Lincoln John (1992)   (67 citations)  (Correct)

No context found.

J.C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proc. 5-th IEEE Symp. on Logic in Computer Science, Philadelphia, June 1990.


Is There a Use for Linear Logic? - Wadler (1991)   (5 citations)  (Correct)

No context found.

J. Guzm'an and P. Hudak, Single-threaded polymorphic lambda calculus. In Proceedings 5'th IEEE Symposium on Logic in Computer Science, Philadelphia, Pa., June 1990.


Quasi-Linear Types - Kobayashi (1999)   (49 citations)  (Correct)

No context found.

J. G. Guzm'an and P. Hudak. Single-threaded polymorphic lambda calculus. In Proceedings of IEEE Symposium on Logic in Computer Science, pages 333--343, 1990.


Names and Higher-Order Functions - Stark (1995)   (29 citations)  (Correct)

No context found.

J. C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In Proceedings of the Fifth Annual IEEE Symposium on Logic in Computer Science,


A Functional Representation of Data Structures with a Hole - Yasuhiko Minamide Research (1998)   (7 citations)  (Correct)

No context found.

J. C. Guzman and P. Hudak. Single-threaded polymorphic lambda calculus. In IEEE Symp. on Logic in Computer Science, 1990.


Aspects Theoriques Et Pratiques De L'inferences De Type Et Effets - Talpin (1993)   (Correct)

No context found.

Guzman, J.C., and Hudak, P. Single-Threaded Polymorphic Lambda Calculus. In Proceedings of the IEEE Symposium on Logic in Computer Science. June 1990.

First 50 documents

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC