/* Spelling Bee solver in Pop-11. This Pop-11 program was created by Hakan Kjellerstrand (hakank@gmail.com) See also my Pop-11/Poplog page: http://www.hakank.org/poplog/ */ compile('/home/hakank/Poplib/init.p'); lvars wordlist = 'words_alpha.txt'; lvars nextline = vedfile_line_repeater(wordlist, true); lvars line, words = [%for line from_repeater nextline do line endfor%]; lvars center = `o`, letters = 'odteuqn'; ;;; [center ^center letters ^letters]=>; lvars lettersexp = [% letters.explode %]; lvars c, word, wordexp, ok; for word in words do [% word.explode %] -> wordexp; true -> ok; if word.length >= 4 and member(center,wordexp) do for c in wordexp do if not(member(c,lettersexp)) do false -> ok; quitloop(1); endif; endfor; if ok do word=>; endif; endif; endfor;