Listrando todas as classes do classpath que iniciam com P

Em smalltalk isso já funciona :D


| filtered |
filtered := Behavior allClassNames select: [:cada |
cada beginsWithIgnoreCase: 'P'
].

filtered sort do: [:cada |
cada out.
]


E na sua linguagem preferida, com quantas linhas você reproduz esta funcionalidade?

Smalltalk realmente é uma linguagem poderosa, na minha opnião o problema é a sua arquitetura que deixa a desejar, mas... fica ai a pergunta, porque uma linguagem tão poderosa não vingou?