37 lines
803 B
Text
37 lines
803 B
Text
import system'routines;
|
|
import system'io;
|
|
import system'collections;
|
|
import extensions;
|
|
import extensions'routines;
|
|
import extensions'text;
|
|
|
|
extension op
|
|
{
|
|
string normalized()
|
|
= self.toArray().ascendant().summarize(new StringWriter());
|
|
}
|
|
|
|
public program()
|
|
{
|
|
auto dictionary := new Map<string,object>();
|
|
|
|
File.assign("unixdict.txt").forEachLine:(word)
|
|
{
|
|
var key := word.normalized();
|
|
var item := dictionary[key];
|
|
if (nil == item)
|
|
{
|
|
item := new ArrayList();
|
|
dictionary[key] := item
|
|
};
|
|
|
|
item.append:word
|
|
};
|
|
|
|
dictionary.Values
|
|
.sort:(former,later => former.Item2.Length > later.Item2.Length )
|
|
.top:20
|
|
.forEach:(pair){ console.printLine(pair.Item2) };
|
|
|
|
console.readChar()
|
|
}
|