The reusable library known as the GNAT Component Collection (GNATColl) is based on one main principle: general-purpose packages that are part of the GNAT technology should also be available to user application code. The compiler front end, the GNAT Programming Studio (GPS) Interactive Development Environment, and the GNAT Tracker web-based interface all served as sources for the components. The GNATColl components complement the predefined Ada and GNAT libraries and deal with a range of common programming issues including string and text processing, memory management, and file handling. Several of the components are especially useful in enterprise applications. * Scripts: Embedding script languages * Traces: Logging information * Memory: Monitoring memory usage * Mmap: Reading and writing files * Boyer-Moore: Searching strings * Paragraph filling: Formatting text * Templates: Generating text * Email: Processing email messages * Ravenscar: Patterns for multitasking * VFS: Manipulating files * Storage Pools: Controlling memory mgmt * Tribooleans: Three-state logic * Geometry: Primitive geometric ops * Refcount: Reference counting * Projects: Manipulating ``gpr`` files * Config: Parsing configuration files * Pools: Controlling access to resources * JSON: JavaScript Object Notation * SQL: Database interface WWW: http://libre.adacore.com/tools/gnat-component-collection