A flexibilidade tal como é apresentada acima diz respeito à construção da ferramenta e ao processamento genérico da linguagem, sem, contudo, se referir à programação da aplicação em si. Este ponto está relacionado com a ligação de módulos funcionais, pertencentes ao nível de suporte e de ligação, com o nível de programa e com a capacidade de a ferramenta lidar com as possíveis necessidades de módulos genéricos.
No caso de uma ferramenta dedicada, o programador da ferramenta é capaz de definir uma interface para ser utilizada pelo programador de módulos, tal como ser viu na secção 4.2.2.2. A adição pode ser prevista no desenho inicial da ferramenta, por forma a que esteja perfeitamente integrada no seu funcionamento. A alteração de um compilador pode não ser tão simples de harmonizar com as necessidades de programação: a informação necessária para uma dada acção pode não estar disponível quando e onde a arquitectura do compilador a comporta.