March Game - WORDLE

Know what? I'm stealing it. I'm stealing the Wordle game for myself!

​

Well, in truth I'm stealing it for you, too.

​

HOW TO PLAY:

  • Like this post to follow it
  • Each week of March, I will post a new puzzle in the comments. Each puzzle is a 5 letter word that you have to guess. To give everyone a hint, we'll start off with one letter completed.
  • Email your first guess to Community@progress.com
    • Each guess must be a valid 5-letter word
  • I will reply to you with a colored version of your guess. The colors of the tiles will change to show how close your guess was to the correct word. (See image below)
  • You have 6 guesses to get it right

​

Color Example​

You get:

  • 3 points if you play a puzzle
  • 5 points if you get it right
  • 10 points if you get it right on the first try

​

Good luck!!

​

​

(No illustration this time around. My Spawn tweaked my pointer finger into a sprain, so I can't paint. Maybe you don't miss my little illustrations, but I do!!😭)


  • Patrice Perrot (PROGINOV)

    Hi

    My skills in English wasn't enough to find all the words, luckily I have other skills.

    Thanks @Tom Bascom (White Star Software LLC)​ s trick for /usr/share/dict/linux.words

     

    1. define temp-table letter-position no-undo
    2. field letter as character
    3. field position-allowed as char
    4. field typ-constr as char
    5. index i1 letter .
    6. create letter-position.
    7. assign letter-position.letter = "E"
    8. letter-position.position-allowed = "4"
    9. letter-position.typ-constr = "EQ" .
    10.  
    11. create letter-position.
    12. assign letter-position.letter = "V"
    13. letter-position.position-allowed = "3"
    14. letter-position.typ-constr = "NO" .
    15. create letter-position.
    16. assign letter-position.letter = "I"
    17. letter-position.position-allowed = "3"
    18. letter-position.typ-constr = "NO" .
    19. create letter-position.
    20. assign letter-position.letter = "B"
    21. letter-position.position-allowed = "3"
    22. letter-position.typ-constr = "NO" .
    23. create letter-position.
    24. assign letter-position.letter = "S"
    25. letter-position.position-allowed = "3"
    26. letter-position.typ-constr = "NO" .
    27. create letter-position.
    28. assign letter-position.letter = "A"
    29. letter-position.position-allowed = "1"
    30. letter-position.typ-constr = "EQ" .
    31.  
    32. create letter-position.
    33. assign letter-position.letter = "G"
    34. letter-position.position-allowed = "3,5"
    35. letter-position.typ-constr = "NO" .
    36.  
    37. define temp-table wordList no-undo
    38. field word as character
    39. field nbletter as int
    40. index word-idx as primary unique word
    41. index i2 nbletter word.
    42.  
    43. define variable word as character no-undo format "x(30)".
    44. define variable ii as integer no-undo.
    45. define variable jj as integer no-undo.
    46. define variable kk as integer no-undo.
    47. define variable nn as integer no-undo.
    48. define variable yy as integer no-undo.
    49. define variable zz as integer no-undo.
    50. define variable can-create as logical no-undo.
    51.  
    52. input from value( "/usr/share/dict/linux.words" ).
    53. do on endkey undo, leave while true:
    54. import word.
    55. ii = ii + 1.
    56. if ii modulo 10000 = 0 then display ii with frame a down.
    57. zz = length( word ).
    58. if zz = 5 then
    59. do:
    60. jj = jj + 1.
    61. if jj modulo 1000 = 0 then
    62. display jj with frame a down.
    63. can-create = ? .
    64. for each letter-position no-lock :
    65. if letter-position.typ-constr = "EQ" then
    66. do:
    67. if substring( word , INT(letter-position.position-allowed) , 1 ) <> letter-position.letter
    68. then can-create = FALSE .
    69. end.
    70. if letter-position.typ-constr = "NO" then
    71. do:
    72. if word matches "*" + letter-position.letter + "*"
    73. then can-create = FALSE .
    74. end.
    75. if letter-position.typ-constr = "IN" then
    76. DO:
    77. if not word matches "*" + letter-position.letter + "*"
    78. then can-create = FALSE .
    79. ELSE do:
    80. DO nn = 1 to 5 :
    81. if substring(word , nn , 1) = letter-position.letter and
    82. index ( letter-position.position-allowed , string(nn) ) = 0
    83. then can-create = FALSE .
    84. end.
    85. end.
    86. end.
    87.  
    88. end.
    89. if can-create = ? then do:
    90. find wordList where wordList.word = word no-error.
    91. if not available wordList THEN DO:
    92. create wordList.
    93. wordList.word = word.
    94.  
    95. if substring(word, 1 , 1 ) <> substring(word , 2 , 1 )
    96. and substring(word , 1 , 1 ) <> substring(word , 3 , 1 )
    97. and substring(word , 1 , 1 ) <> substring(word , 4 , 1 )
    98. and substring(word , 1 , 1 ) <> substring(word , 5 , 1 )
    99. then wordList.nbletter = wordList.nbletter + 1 .
    100. if substring(word , 2 , 1 ) <> substring(word , 1 , 1 )
    101. and substring(word , 2 , 1 ) <> substring(word , 3 , 1 )
    102. and substring(word , 2 , 1 ) <> substring(word , 4 , 1 )
    103. and substring(word , 2 , 1 ) <> substring(word , 5 , 1 )
    104. then wordList.nbletter = wordList.nbletter + 1 .
    105. if substring(word , 3 , 1 ) <> substring(word , 1 , 1 )
    106. and substring(word , 3 , 1 ) <> substring(word , 2 , 1 )
    107. and substring(word , 3 , 1 ) <> substring(word , 4 , 1 )
    108. and substring(word , 3 , 1 ) <> substring(word , 5 , 1 )
    109. then wordList.nbletter = wordList.nbletter + 1 .
    110. if substring(word , 4 , 1 ) <> substring(word , 1 , 1 )
    111. and substring(word , 4 , 1 ) <> substring(word , 2 , 1 )
    112. and substring(word , 4 , 1 ) <> substring(word , 3 , 1 )
    113. and substring(word , 4 , 1 ) <> substring(word , 5 , 1 )
    114. then wordList.nbletter = wordList.nbletter + 1 .
    115. if substring(word , 5 , 1 ) <> substring(word , 1 , 1 )
    116. and substring(word , 5 , 1 ) <> substring(word , 2 , 1 )
    117. and substring(word , 5 , 1 ) <> substring(word , 4 , 1 )
    118. and substring(word , 5 , 1 ) <> substring(word , 3 , 1 )
    119. then wordList.nbletter = wordList.nbletter + 1 .
    120. kk = kk + 1 .
    121. end.
    122. end.
    123. end.
    124. end.
    125. input close.
    126. display ii jj kk with frame a.
    127. pause.
    128. output to value( "/backup/ppe/community/" +
    129. string(day(today), "99") + "-" +
    130. replace(string(time, "hh:mm:ss") , ":" , "_") + "-" +
    131. "pangram.txt" ).
    132. for each wordList use-index i2:
    133. put unformatted wordList.word " " wordlist.nbletter skip.
    134. end.
    135. output close.
    136. quit.

     

    Kind regards

    Patrice

     

    Selected as Best
    • Nichol Goldstein (Progress)

      OKAY!! The stragglers have caught up and Puzzle One is complete! For those of you who didn't get it right, the answer was:

       

      HappySpecial shout outs to those who guessed it in one try: @Patrice Perrot (PROGINOV)​, @Eduardo Soto (Progress Software)​, and @Andrea Drees (Progress Software)​ 

       

      More shout outs to the most obscure word guess! @Gilles Querret (Riverside Software)​ with:

       

      CAPON

      A castrated male chicken fattened for eating.

      CaponI learned a word!

10 of 27