WHAT 1.2 Release Notes |
WHAT, Wolfberg's Helpful Anagramming Tool, is really a toolbox of integrated powerful tools, with many facilities. From time to time, the program is updated with bug fixes and the support of new features. This page outlines changes made in 2009 through 2011 for WHAT Version 1.2.
15(+)This is now fixed.
fooyou were shown an answer of "(nothing)" in red. But then if you issued a command of an apostrophe, which means to show the slate, nothing at all was shown. We do not now think of why this behavior was chosen. With this release, in such a case, you are shown the "(nothing)" message for such a command. If you think of a reason why this change should not have been made, please let us know.
abc # defsuch that WHAT hung after echoing the second line of the file.
- /1FCand you saw as output:
WHAT?: ABC WHAT?: ABC CAB WHAT?:where the second query line shows ABC in green. Now that the bug has been fixed, output is:
---------------------------------------------------------------------------- WHAT?: ABC CAB WHAT?:where the query line shows ABC in green.
/.PThe existing kind (Patterns with Blank Additions) is specified with
/+PFor example:
LEE /.Pyields only LEKE, whereas
LEE /+Pyields 8 words.
10(QWERTYUIOP)WHAT takes a long time to then find the answer, but it was not issuing any indication that was working. For some long computations, it shows a progress indicator in the status line, but for this kind of query, WHAT was not announcing such progress. This has been fixed.
When a query produces answers where one of more blanks are matched by letters, WHAT notes which letters were matched. Usually, in such a case, there is one letter matched by a blank, and then the equal sign subcommand indicates the output shown is that set of letters; it is called the blank-matching set. WHAT also makes note when there are two letters in an answer which were matched by blanks. It was recently noticed that there can be queries which can produce some answers using one blank and other answers using two blanks, etc. In these cases, presentations using the blank-matching format (as specified with a colon) were confusing and wrong. This has been repaired by requiring that all answers in a query must have the same number of letters matched by blanks in order to then be used as the basis for presntations based on blanks. An example which demonstrates this is:
.AJ*:The output for this is now an error message indicating the query did not consistently have 1 or 2 blanks matched by letters/tiles. Previously, WHAT tried to output using this format, and it was very confusing and misleading.
/>1AAUQ /1] [] /A /#1 /QSand this has been fixed.
/>1AZZ. /1[ [] /#1This query had been finding nothing. It is testing that the one word in wordlist 1 when considered as a pattern yields at least one word. After the bug fix, the correct answer of ZZ. is the result, but the following change also had to be made.
/SD<search-string>where the search string is enclosed within quotation marks. As with the filtering subcommand for definitions including a given string, WHAT virtually appends a space to the end of each definition. WHAT is surrounding your given search string within single spaces. You can inhibit these assumed spaces before or after the string by including a vertical bar there.
/>3Acat // put CAT into wordlist 3 /3[ [] /#=1 /Q;SThis query had been finding nothing. It is testing that the one word in wordlist 3 when considered as a pattern yields one word, and the result is to be output as a canonically-ordered string. After the bug fix, the correct answer of ACT is the result.
A major new feature is the support for a Word-Building Game which is based on a game found on old TIVO devices. It is called Wordsmith there, and this is a game in which you choose among letters at the top of each of 12 columns to build up words of length 3 through 12 tiles. You try to get the highest score for all your built words, and words are scored by multiplying the length times the total of the individual scores of the tiles in the word.
You will usually ask WHAT to make a random grid of candidate tiles, but you may provide your own, similar to the way BOGGLE works in WHAT. Although WHAT can solve a BOGGLE grid completely, it is not yet equipped to solve the Word-Building Game, but this will be provided in a future release.
There is support for remembering games you want to remember in a history.
This game is supported for both English and Spanish. BOGGLE is supported only for English at this time.
/@W
A major new feature has been added which is usable only for English, since it
is based on the existence of definitions, and there are no definitions yet supported
for Spanish. You can now have a filter for a query which constrains words to have
a given string found (or not found) in its definition. For example,
/"dog"
will require that a word have the 5 characters " dog " in its definition.
When more than one such subcommand is given only the final one in a query pertains.
So if you want to find queries which contain both " dog " and
" v ", which indicates the word is a verb, you have a make a second query
using the results of the first query as the basis of the words. For example:
* /"dog" \
[] /"v" "
The final quote on the above line indicates
WHAT should present definitions.
To help in searching for individual words, WHAT virtually appends a space to the end of each definition.
WHAT is surrounding your given string within single spaces. You can inhibit these assumed spaces before or after the string by including a vertical bar there.
To filter for words which do not contain a given string in their definition, start your string (after the opening quote) with an exclamation point. At least for now, the definitions file includes no exclamation points.
As with other filtering commands:
/"-
turns off definition filtering.
Filtering based on definitions is optimized for queries which are only an asterisk, either an anagramming or pattern match query. It is much quicker to do:
* /"dog" /|=7
than to run a pattern match query
7. /"dog"
This matters when there are a lot of words to be considered, such as with
this example.
Section 13.7.5 has been added to the What User Guide to describe this feature.
/"but it is now:"
/PW
If you make this query when using a Spanish lexicon:
LILIIII /QS
WHAT outputs
IIIIILL
and when that is used futher it appears to have the
LL
character instead of two
Ls.
This is a bug which is fixed. WHAT will alternate the case of successive characters to avoid ambiguity. This applies also to RR and CH.
/($)=(AEIOU) CASA /$=3 /QS
.u,? /<$ $ /Z /@5B.
A new command has been added which causes
WHAT to output a given number of random racks to a specified
wordlist. It appends the racks, allowing for duplicates in the output. As with
creating random racks in the workspace, when the lexicon is a Spanish one,
spaces are used to separate the tiles. This is the form of the command:
/. <#-racks> >
The extra spaces are optional.
There is GUI access to this command both on the Random Racks tab at the upper right and on the Command menu.
Another new command has been added which allows you to append an arbitrary
line to a wordlist. This can be useful in making flashcards. The form of this
command is:
/> <wordlist-#> A<arbirary-text>
There is no GUI access to creating this command.
Having added the feature to produce random racks into a wordlist, you can now
run a sequence of commands and see the percentage of racks which produce bingos:
/.10000>1A // append 10,000 random racks to wordlist 1
/1[ [] /A /#1 # // using wordlist 1, count the number of racks which produce bingos
/1D // delete wordlist 1
Here are the results of 6 runs when using the Spanish lexicon: 2192, 2143, 2114, 2203, 2233, 2192.
Command scanning has been modified to allow for spaces among the arguments of the yield command (/Y...).
Spaces are also now optional after /< and /> as the start of commands.
WHAT had problems highlighting the correct characters in green
when outputting long lines when using a Spanish lexicon.
Here is an example demonstrating the bug:
WHAT?: emborracha
EMBORRACHA
WHAT?: *[]*/|=15 3'
(first 3 items only)
DESEMBORRACHABAIS DESEMBORRACHARAIS DESEMBORRACHAREIS
On the above line the 1st word has green DES and BAIS; 2nd word has green DE and ARAIS; 3rd word has green D and HARE. You can see by looking at the slate that des is lowercase, the next 8 tiles are uppercase and the final 4 are lowercase, so the bug is in how WHAT decides which letters to change to green.
The bug turned out to be based on presenting a word length of greater than 15, which happens when a 15-tile word has any digram tiles. The longest word length for presentation is 18 and not 15. The FISE lexicon is therefore being updated (since the lexicon file includes a field which indicates the longest word), but meanwhile there is a code change in WHAT such that even with the old (current) FISE lexicon, the longest word length is being repaired. At least this word has 3 digrams: ACHICHARRONARIAMOS
When filtering by the number of words, WHAT was ignoring the
setting to augment the slate; instead it was replacing the slate. Filtering by score
was not doing this. Here is an example:
ARC /1W
CAB
/1[! /+S!
[1-2] /#=1
The result does not include CAB - it's just ARC.
This bug was specific to when a wordlist other than the slate is being used as the basis of word references (as specificed above by /1[). This bug was fixed.
With this bug fixed, the faster method of finding 15s with imbedded 8s
can be done in fewer steps:
15. #
/15W // save all the 15-letter words in wordlist 15
/15[! // use wordlist 15 as the basis of word references
/CS // clears the slate
/+S! // augment the slate with query results long-term
[2-9] /#=1 # // note those 15s whose 2nd-9th letters are words
[3-10] /#=1 # // continue for other subwords
[4-11] /#=1 #
[5-12] /#=1 #
[6-13] /#=1 #
[7-14] /#=1 #
The resulting 4581 words are on the slate.
/>5AM A L C H I N E /5[ [] /A or /5[ [] /A /#1
If a wordlist has a line which includes a slash, such as
xyz/s
and there are lowercase letters, when the line is presented in the workspace,
what is shown in green was wrong. In this case three characters in green started
at the
Z
and not at the
X.
This has been fixed. This does show that flashcards are better prepared with
uppercase letters to avoid having green letters.
Along with this fixed bug is a related one in that if a flashcard in Spanish has a lowercase tilde-N, it was not being handled correctly.
Both of these bugs are fixed.
If a wordlist, such as wordlist 5 had these two lines:
C O O E E T ?
L D R S A C E
When you ran the command:
/5[ [] /A
the answer had been 20 words which answer
LDRSACE?,
but there was no blank on the second line, and any results of the first word in
the wordlist was missing - it should have been 8 other words.
If only the first word is in the wordlist, nothing is found, as if the question mark became part of the next line.
This bug (or group of bugs) was fixed. It is a bit strange to have question marks in a wordlist, and as such, this was not supported until now. It is still not fully supported (for all kinds of queries), but it can at least be used for an anagramming query to see what words of a wordlist lead to any results.
E A D Ñ A T S E A D S S S Uand we run
/13[ [] /A /#1only the first "word" is in the result:
E.A.D.Ñ.A.T.SBut the second one should also be there.
This bug was fixed by fixing the my_stricmp function in the code, so that it can compare strings which include spaces.
7. />% /%>0 % 25'There had been words shown with probability of 0, but the quesy is seeking words with a probability greater than 0. This is fixed. Also, you can now see there are 592 7-letter words in the lexicon with a "probability" of 0.
8./&1\
[]/a/|=7/#=0#
JUDY/-"OWL2"?You can then see if it is in CSW (Collins for British play):
JUDY/-"CSW"?
Releases 69-65 are for WHAT Version 1.2, which is where support for Spanish began. A few Spanish users were helpful in making early use of the new support, and they helped uncover several problems which were then fixed. There are no details available for exactly what was being done in each of these early releases to support Spanish. Here are the various release dates: