Library interface

From Liberty Eiffel Wiki
Revision as of 13:28, 16 June 2005 by Cadrian (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Note: this documentation is not meant to replace the eiffeldoc pages.


The existing libraries in 2.1

  • lib/kernel: the few classes that the compiler directly depend upon
  • lib/abilities: add features to your classes that other library classes may depend upon
  • lib/io: the input-output system, complete with some back-ends and a filter system
  • lib/storage: the many containers (collections, lists, sets and so on)
  • lib/iterator: the design pattern that allows container traversal
  • lib/sorting: to sort containers
  • lib/numeric: anything about numbers: computer-oriented (INTEGER) or real math-oriented (NUMBER)
  • lib/random: to generate random numbers
  • lib/string: 8-bit and unicode characters and strings
  • lib/unicode: unicode parsing
  • lib/time: what time is it?
  • lib/sequencer: interleaving computations (no threads involved)
  • lib/signal: using agents to signal events
  • lib/vision: graphical interfaces
  • lib/misc: miscellany

The upcoming libraries in 2.2

All the 2.1 libraries, plus:

  • lib/abilities: new abilities (including STORABLE)
  • lib/storage: a new storage system: repositories that can store/retrieve STORABLEs
  • lib/net: network access; write an HTTP server in a few lines
  • lib/html: HTML input-output
  • lib/xml: an XML parser
  • lib/exec: start and control an external process, complete with its standard streams
  • lib/design_patterns: some easily coded design patterns (not sure this one will stay as is)