EiffelBase: The ultimate in reusability
EiffelBase, covered by the open-source IFFEL license,
is one of the principal contributions of Eiffel: a library of
fundamental structures and algorithms covering the basics of computing,
and resulting from a "Linnaean" effort at a general-purpose taxonomy of
computing structures. EiffelBase is one of the most carefully designed and
extensively used libraries in the object-oriented industry.
The library and its design principles are described in detail in the
book
Reusable Software: The Base
Object-Oriented Component Libraries.
Kernel
The Kernel library covers the most common needs:
Universal classes providing facilities potentially useful for
all classes: ANY and GENERAL. Every class is a descendant of
these classes.
Fine control of the exception handling mechanism.
Arrays and strings.
Elements on which standard arithmetic operations are
available.
Hashable elements, for use with hash tables.
Basic arithmetic conversions.
Fundamental structures and algorithms
Abstract structures, describing broad categories
Lists in their various forms
List elements
Circular chains
Sets and lists kept sorted
Various trees and binary trees
Cursor trees
Hash tables (dictionaries)
Dispensers: stacks, queues, priority queues
EiffelBase Basic Libraries
-
Support Library
-
The Support Library provides a number of classes that extend the
language and environment facilities, enabling programmers to develop
advanced uses of Eiffel: class STORABLE provides a way to produce a
logical image of an entire data structure in a file; class MEMORY for
fine tuning of the memory management mechanism; and more.
-
Data Structure Library
-
The Data Structure Library provides implementations of fundamental
data structures and algorithms: Abstract structures, describing broad
categories; lists in their various forms; list elements; circular chains;
sorted sets and lists; various trees and binary trees; cursor trees; hash
tables (dictionaries); various stacks, queues and priority queues; and more.
-
Iterations Library
-
The Iterations Library provides high-level templates that avoid using
control structures such as loops and facilitates writing features so that
control structures are more easily modified in descendant classes.
|