1,066 papers · page 52 of 54
Michael W. Hicks, Jonathan T. Moore, Scott Nettles
We examine the costs and benefits of a variety of copying garbage collection (GC) mechanisms across multiple architectures and programming languages. Our study covers both low-level object representation and copying issues as well as the mechanisms needed to support more advanced…
Zhenjiang Hu, Hideya Iwasaki, Masato Takeichi, Akihiko Takano
Tupling is a well-known transformation tactic to obtain new efficient recursive functions by grouping some recursive functions into a tuple. It may be applied to eliminate multiple traversals over the common data structure. The major difficulty in tupling transformation is to fin…
Koji Kagawa
We introduce the notion of compositional references into the framework of monadic functional programming and propose a set of new primitives based on this notion. They enable us to use a wide range of mutable data structures. There, references may be passed around explicitly, or …
Natalio Krasnogor, Pablo E. Martínez López, Pablo Mocciola, David A. Pelta
No abstract available.
Natalio Krasnogor, Pablo E. Martínez López, Pablo Mocciola, David A. Pelta
No abstract available.
Eero Lassila
No abstract available.
John Launchbury, Amr Sabry
Type safety of imperative programs is an area fraught with difficulty and requiring great care. The SML solution to the problem, originally involving imperative type variables, has been recently simplified to the syntactic-value restriction. In Haskell, the problem is addressed i…
Julia L. Lawall, Harry G. Mairson
Optimal graph reduction technology for the λ-calculus, as developed by Lamping, with modifications by Asperti, Gonthier, Abadl, and Lévy, has a well-understood local dynamics based on a standard menagerie of reduction rules, as well as a global context semantics based on Girard's…
Simon Marlow, Philip Wadler
We present a type system for the programming language Erlang. The type system supports subtyping and declaration-free recursive types, using subtyping constraints. Our system is similar to one explored by Aiken and Wimmers, though it sacrifices expressive power in favour of simpl…
Bruce J. McAdam
No abstract available.
Chris Okasaki
Catenable double-ended queues are double-ended queues (deques) that support catenation (i.e., append) efficiently without sacrificing the efficiency of other operations. We present a purely functional implementation of catenable deques for which every operation, including catenat…
Bjarte M. Østvold
Cristóbal Pareja-Flores, J. Ángel Velázquez-Iturbide
No abstract available.
Gilles Richard, Frédéric Saubion, A. Tellez-Arenas
No abstract available.
Viktor K. Sabelfeld, Andrei Sabelfeld
No abstract available.
Zhong Shao
Statically typed languages with Hindley-Milner polymorphism have long been compiled using inefficient and fully boxed data representations. Recently, several new compilation methods have been proposed to support more efficient and unboxed multi-word representations. Unfortunately…
Olin Shivers
One of the attractive features of functional programming languages is that they provide automatic management of the store, in the form of garbage collection. However, the benefits of automatic resource management can be applied to other resources as well. Scsh, a systems-programm…
Eleni Spiliopoulou, Ian Holyer, Neil Davies
No abstract available.
Walid Taha, Tim Sheard
No abstract available.
Cristian Ungureanu, Benjamin Goldberg
We develop am abstract model of memory management in distributed systems. The model is low-level enough so that we can express communication, allocation and garbage collection, but otherwise hides many of the lower-level details of an actual implementation.Recently, such formal m…