% Pick according to a frequency table go3 => _ = random2(), Max = 17, S = letter_freq_wheel(), foreach(_ in 1..10) println([choice(S) : _ in 1..1+choice(Max)]) end, nl. % Frequencies of letters converted to a "roulette wheel". letter_freq_wheel = Chars => Freq = [ [e,12.02],[t,9.10],[a,8.12],[o,7.68],[i,7.31],[n,6.95],[s,6.28], [r,6.02],[h,5.92],[d,4.32],[l,3.98],[u,2.88],[c,2.71],[m,2.61], [f,2.30],[y,2.11],[w,2.09],[g,2.03],[p,1.82],[b,1.49],[v,1.11], [k,0.69],[x,0.17],[q,0.11],[j,0.10],[z,0.07] ], Chars = [], foreach([C,F] in Freq) Chars := Chars ++ [C : _ in 1..ceiling(10*F)] end, nl.