allNameStrings :: [String]
-- Infinite list of a,b,c...z, aa, ab, ac, ... etc
allNameStrings = [ c:cs | cs <- "" : allNameStrings, c <- ['a'..'z'] ]
allNameStrings :: [String]
allNameStrings = [ c:cs | cs <- "" : allNameStrings, c <- ['a'..'z'] ]
allNameStrings = [ c:cs | cs <- "" : allNameStrings, c <- ['a'..'z'] ]