|
-
Dancing Trees in the Reiser4 Filesystem [reiser04:tree]
Hans Reiser (The Naming System Venture), 2004
-
Purely Functional System Configuration Management [dolstra07:purely]
Eelco Dolstra, Armijn Hemel, Proceedings of the Workshop on Hot Topics in
Operating Systems (HotOS XI), May 2007About the ``purely functional'' Nix package management system.
-
Naming and Binding of Objects [saltzer78:naming]
Jerome Howard Saltzer (Massachusetts Institute of Technology, Cambridge,
MA, USA), Operating Systems, An Advanced Course, 1978This paper discusses concepts related to naming in computer science (operating systems and programming
languages), notably closures.
-
GNU Guile: GNU's Ubiquitous Intelligent Language for
Extension [jaffer96:guile]
Aubrey Jaffer, Thomas Lord, Jim Blandy, Marius Vollmer,
Mikael Djurfeldt (GNU Project), 1996Project GNU's embeddable Scheme implementation.
-
Design Issues for Persistent Java: A Type-Safe,
Object-Oriented, Orthogonally Persistent System [atkinson96:design]
Malcom P. Atkinson, Mick Jordan, Laurent Dayn?s, Susan
Spence, Proceedings of the 7th Workshop on Persistent Object
Systems, May 1996This allows transactions to be requested by users,
making it similar to the new object prevalence trend prevayler06:web.
-
A Technique for Drawing Directed Graphs [gansner93:technique]
Emden R. Gansner, Eleftherios Koutsofios, Stephen
C. North, Kiem-Phong Vo (AT&T Bell Laboratories, NJ, USA), appeared in IEEE Transactions on Software Engineering, March 1993A presentation of the graph layout algorithms used by
dot, part of Graphviz.
-
Valgrind: A Framework for Heavyweight Dynamic Binary
Instrumentation [nethercote07:valgrind]
Nicholas Nethercote, Julian Seward (National ICT Australia, Melbourne, Australia), Proceedings of the ACM SIGPLAN Conference on
Programming Language Design and Implementation (PLDI), 2007
-
SRFI-1 --- List Library [shivers99:srfi-1]
Olin Shivers (Massachusetts Institute of Technology, Cambridge,
MA, USA), October 1999
-
Design Patterns---Elements of Reusable Object-Oriented
Software [gamma95:design]
Erich Gamma, Richard Helm, Ralph Johnson, John
Vlissides, 1995Not a very functionalish reference but one that is
nevertheless useful at times. ;-)
-
Can Programming Be Liberated from the von Neumann Style?
A Functional Style and Its Algebra of Programs [backus78:liberated]
John Backus (IBM Research Laboratory, San Jose, CA, USA), appeared in Communications of the ACM, August 1978An ode to functional languages. The paper contains an
interesting comparison of ``von Neumann'' (i.e., imperative) languages
and of functional languages, with an analysis of the ease of reasoning
each on each of them, their ``composability'', and their mathematical
properties (or lack thereof). Backus notably insists on function
currying and combinators.
-
Libckpt: Transparent Checkpointing Under Unix [plank95:libckpt]
James S. Plank, Micah Beck, Gerry Kingsley (University of Tennessee, Knoxville, USA), Proceedings of the USENIX Annual Technical
Conference, January 1995A simple checkpointing library for Unix. The
checkpoints are not portable, unlike those produced by Pego. It supports
both automatic, periodic checkpointing and user-directed
checkpointing.
-
Compact Encodings of List Structure [bobrow79:compact]
Daniel G. Bobrow, Douglas W. Clark (Xerox Palo Alto Research Center, CA, USA), appeared in ACM Transactions on Programming Languages and
Systems, October 1979Compact encoding of list structures in Lisp. The basic
idea is to remove the pointer indirection in a pair's car (and
cdr?) when the datum that has to be stored in there is small
enough (e.g., small number, nil). This is the basic strategy
that has been used, I guess, by most Lisp and Scheme implementations
since then. It's sometimes referred to as type tagging or
some such.
-
Hibernate: Relational Persistence for Java and .NET [redhat07:hibernate]
Red Hat, Inc., 2007So-called object-relational mapping, which
turns out to be comparable to ``object prevalence'' [?bib prevayler06:web]. Hibernate is actually kind of awful, since it
requires human beings to describe the mapping in XML (!), as
can be seen in the tutorial.
Implementations are available for Common Lisp, Python, Ruby, etc., and
chances are that they are not XML-bloated.
-
On Programming of Arithmetic Operations [ershov58:on-programming]
A. P. Ershov (Moscow University, Moscow, USSR), Communications of the ACM, August 1958Apparently the first reference to hash-consing
(although the term isn't used). This is pretty hard to read (at best),
as stated in the intro.
-
FUSE: Filesystem in User-Space for Linux [fuse:web]
Miklos Szeredi, 2005A Linux driver that makes it possible to implement
filesystems in user-space ? la
GNU/Hurd translators or
Plan 9
filesystem servers. Several filesystems including
Wayback are
built on top of FUSE.
-
The Trivial Database [tridgell99:tdb]
Adrew Tridgell, Paul Russel, Jeremy Allison, 1999
-
Revised5 Report on the Algorithmic Language
Scheme [kelsey98:r5rs]
Richard Kelsey, William Clinger, Jonathan Rees, appeared in Higher-Order and Symbolic Computation, August 1998
-
Prevayler, a Java Implementation of ``Object
Prevalence'' [prevayler06:web]
Prevayler.Org, 2006``Object prevalence'', i.e., transactional semantics at
the programming language-level, as was previously envisioned in
gray81:transaction and birrell87:small-db. Implementations also exist for Common Lisp, Haskell, Ruby, etc.
-
Using Sparse Capabilities in a Distributed Operating
System [tanenbaum86:sparse]
Andrew S. Tanenbaum, Sape J. Mullender, Robbert van
Renesse (Vrije Universiteit, Amsterdam, The Netherlands), Proceedings of the International Conference on
Distributed Computing Systems (ICDCS), May 1986
-
A Persistent System in Real Use --- Experiences of the
First 13 Years [liedtke93:persistent]
Jochen Liedtke (German National Research Center for Computer
Science), Proceedings of the International Workshop on
Object-Orientation in Operating Systems (I-WOOOS), December 1993Experience with the Eumel and L3 persistent OSes.
-
Design Evolution of the EROS Single-Level Store [shapiro02:store]
Jonathan S. Shapiro, Jonathan Adams (Johns Hopkins University, University of
Pennsylvania), Proceedings of the USENIX Annual Technical
Conference, May 2002
-
A toolkit for user-level file systems [mazieres01:fstk]
David Mazi?res (Department of Computer Science, NYU), Proceedings of the 2001 USENIX Technical
Conference, June 2001
|