frequency = words + table ->
  nlog2n = max + n ->
    n = max

    do {2..max} i ->
      if (i * (log2 i) < max) -> n = i, iterate
      else leave
    ;
  ;

  table : [length] = {} ..
  ' length = nlog2n words._

  for words word ->
    if table.!word -> table:word = 1    
    else table:word ++
  ;
_
  text : array : string
  table : list : string <- integer
;
