Code golf: encontre todos os anagramas

Uma palavra é umaanagrama se as letras nessa palavra puderem ser reorganizadas para formar uma palavra diferente.

Tarefa:O menor código fonte por contagem de caracteres para encontrar todos os conjuntos de anagramas, com uma lista de palavras.Espaços e novas linhas devem ser contados como caracteres

Use a régua de código

--------- 10 -------- 20 -------- 30 -------- 40 -------- 50 ---- ---- 60 -------- 70 -------- 80 -------- 90 -------- 100 ------- 110- ------ 120

Entrada:

a lista de palavras de stdin com cada palavra separada por uma nova linha.

por exemplo.

A
A's
AOL
AOL's
Aachen
Aachen's
Aaliyah
Aaliyah's
Aaron
Aaron's
Abbas
Abbasid
Abbasid's
Resultado:

Todos os conjuntos de anagramas, com cada conjunto separado por uma linha separada.

Exemplo de execução:

./anagram < words
marcos caroms macros
lump's plum's
dewar's wader's
postman tampons
dent tend
macho mocha
stoker's stroke's
hops posh shop
chasity scythia
...

Eu tenho uma solução de 149 char perl que postarei assim que mais algumas pessoas postarem :)

Diverta-se!

EDIT: EsclarecimentosSuponha que os anagramas não diferenciam maiúsculas de minúsculas (ou seja, letras maiúsculas e minúsculas são equivalentes)Apenas conjuntos com mais de 1 item devem ser impressosCada conjunto de anagramas deve ser impresso apenas uma vezCada palavra em um conjunto de anagramas deve ocorrer apenas uma vezEDIT2: Mais esclarecimentosSe duas palavras diferirem apenas em maiúsculas, elas devem ser recolhidas com a mesma palavra, e cabe a você decidir qual esquema de capitalização usar para a palavra recolhidaos conjuntos de palavras só precisam terminar em uma nova linha, desde que cada palavra seja separada de alguma forma, por exemplo separado por vírgula ou espaço separado é válido. Entendo que algumas linguagens possuem métodos de impressão de matriz rápida integrados, portanto, isso deve permitir que você aproveite isso se não gerar matrizes separadas por espaço.

questionAnswers(8)

yourAnswerToTheQuestion