Desde que eu embarquei nessa louca raquete em 1970, vi exatamente um módulo que realmente precisava para ser mais do que uma página impressa (cerca de 60 linhas). Eu vi muitos módulos que eram mais longos.
Por falar nisso, eu escrevi módulos que eram mais longos, mas eles eram geralmente grandes máquinas de estados finitos, escritas como grandes declarações de switch.
Parte do problema parece ser que os programadores atualmente não são ensinados a modularizar as coisas.
Padrões de codificação que maximizam o desperdício de espaço vertical também parecem fazer parte do problema. (Eu tenho ainda para conhecer um gerente de software que leu href="https://en.wikipedia.org/wiki/Gerald_Weinberg#Publications"> Psicologia da Programação de Computadores ". Weinberg aponta que vários estudos têm mostrado que a compreensão do programador é essencialmente limitada ao que o programador pode ver em um determinado momento. Se o programador tiver que rolar ou virar uma página, sua compreensão cai significativamente: eles precisam se lembrar e abstrair.)
Continuo convencido de que muitos dos ganhos de produtividade do programador bem documentados de FORTH foram devidos a o sistema FORTH "block" para o código-fonte: os módulos eram limitados a um máximo absoluto de 16 linhas de 64 caracteres. Você poderia fatorar infinitamente, mas você não poderia, sob nenhuma circunstância, escrever uma rotina de 17 linhas.