Contents Next

Chapter 1   Introduction

Edison is a library of efficient data structures suitable for implementation and use in functional programming languages. It is named after Thomas Alva Edison and for the mnemonic value of EDiSon (Efficient Data Strucutres). The current version of the library supports Haskell. Future versions of the library will also support Standard ML and possibly Scheme.

Edison provides several families of abstractions, each with multiple implementations, along with guidance on how to choose the best implementation for your particular application. The main abstractions currently supported by Edison are Note that, in its current state, the library is mostly a framework. That is, I provide signatures, but not yet very many implementations. I intend to populate this framework over time, adding a new module every few weeks. Thus, the library is extremely unstable in the sense that I will continually be modifying existing data structures and adding new ones. However, I hope that the signatures will remain fairly stable over time, making these changes to the implementations mostly transparent to users of the library.

If you wish to request a particular data structure or volunteer to provide an implementation, send me email at cdo@cs.columbia.edu.


Contents Next