FWIW, I haven’t got into Wordle yet, although, by coincidence, neighbours were chatting about it during yesterday morning’s rehearsal for the afternoon concert!
Anyway, my “anag” APL workspace has become a J script with ~285000 words and phrases, of which ~12700 are of 5 letters*. These include plurals; I don’t know if Wordle admits these. I’d be happy to share them if anyone’s interested. (I use the w/s and/or script to help with those Times Listener crosswords that I keep banging on about - the wordy ones rather the numericals, which only appear quarterly.) Cheers, Mike * #matchlength 5 12706 #BXWORDS 284492 Sent from my iPad > On 24 Jan 2022, at 16:39, Raul Miller <[email protected]> wrote: > > I should add: > > (1) If you do not have a /usr/share/dict/words, you can google for > that and find plenty of examples. > > (2) There's also a wordle specific words list -- you can just pull it > out of the javascript for the page, like greg heil mentioned (and > since those are in sequential order, solving one wordle would give you > the next day's wordle solution also -- but where's the fun in that?). > Or, you could use something like > https://gist.github.com/cfreshman/a03ef2cba789d8cf00c08f767e0fad7b > > (3) I could have done a better job of picking a next guess. But I > haven't thought through enough about the entropy associated with the > possibilities. Conceptually, each guess creates a partition on the > possible answers and we probably want to minimize the size of the > largest element of that partition. The largest partition is probably > going to be the partition with the maximum number of grey letters (or > maybe with one yellow letter). But just guessing arbitrarily seems to > work. > > That said, this might be a better guesser: > > goodGuess=: {{ > abc=. /:~~.,y > weights=.+/(abc i.|:y) {"1 #/."1~abc,"1|:y > y{~ (0,+/\weights) I. ?+/weights > }} > > Basically, goodGuess would replace ({~ ?@#) and it tends to favor > words with commonly occurring letters. > > Thanks, > > -- > Raul > > >> On Mon, Jan 24, 2022 at 10:38 AM Raul Miller <[email protected]> wrote: >> >> One issue here is the wordle word list. >> >> For example, 'peasy' is an english word, but wordle will not give any >> information about matching letters if you try that word. Since wordle >> only uses about a quarter of the english language five letter words, >> this is a significant constraint. Fortunately, though, wordle will let >> you backspace over any such attempt so those do not count against your >> guess count. >> >> Anyways, it's possible to provide a cleaner user interface here, but this >> works: >> >> fives=: ~.(#~ ] -:"1 tolower"1)>(#~ 5=#@>) <;._2 fread >> '/usr/share/dict/words' >> >> wordle=: {{ >> possible=. fives >> for_try.y do. >> 'guess match'=. try >> possible=. possible #~ (guess="1 possible)*/ .= match=2 >> t=. (guess e."1 possible)="1 match =1 >> t=. t+.(guess="1 possible)*"1 match=2 >> t=. t*(guess ="1 possible)="1 match=2 >> possible=. possible #~ */"1 t >> end. >> echo #possible >> echo 'try ',({~ ?@#) possible >> }} >> >> If you do >> wordle '' >> >> It will pick a random possible word. >> >> You then need to construct an argument which represents that word and >> a five number list with 0 for grey, 1 for yellow and 2 for green for >> each character in that letter. >> >> So, successive tries would look like: >> >> wordle ,:'guess';abcde >> wordle ('fghij';klmno),:'guess';abcde >> wordle ('pqrst';wxyzA),('fghij';klmno),:'guess';abcde >> ... >> >> -- >> Raul >> >>> On Mon, Jan 24, 2022 at 9:09 AM bill lam <[email protected]> wrote: >>> >>> The game wordle in the website. >>> >>> https://www.powerlanguage.co.uk/wordle/ >>> >>> Any idea of how to generate a list of candidates words after new >>> information from each row? >>> >>> Eg, >>> >>> T H I E F # all wrong >>> R A D O N # O and N are there but misplaced >>> >>> what is the list of words for the 3rd row? >>> ---------------------------------------------------------------------- >>> For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
