Accanto alle librerie create man mano dal programmatore ci possono essere librerie di sistema, spesso parte integrante del linguaggio, di cui ne estendono le funzionalità.
Le procedure limitano la ridondanza del codice, ne migliorano la chiarezza e ne facilitano il riutilizzo: una procedura dalle competenze ben definite, definita nell’ambito di un programma, può servire anche in un altro programma. Questa pratica è molto diffusa. Le procedure il cui riutilizzo appare più probabile sono in genere raccolte in librerie (termine derivato da un’errata traduzione del termine inglese library, che letteralmente significa biblioteca). Accanto alle librerie create man mano dal programmatore ci possono essere librerie di sistema, spesso parte integrante del linguaggio, di cui ne estendono le funzionalità.