The Generic Graphics Library (GEGL) is a programming library under development for image processing applications. It is mainly developed for GIMP in order to add support for higher bit depth images, and non-destructive editing. It was partially implemented in GIMP 2.6, will be used directly in 2.10, and may be used by other software too.
Historically, the GEGL mascot, a five-legged goat created by George (Jiří) Lebl, found life as an easter egg in GNOME desktops.
GEGL is modelled after a directed acyclic graph, where each node represents an image operation (called "operators" or "ops"), and each edge represents an image. Operations can in general take several input images and give several output images, which corresponds to having several incoming edges (images) and several outgoing edges (images) at a given node (operation). The system uses an on-demand model, doing work only as required. This allows features such as having very quick previews while editing, and once the user has finished making changes, GEGL will repeat the same operations in full resolution for the final image in the background.