Execute a Markov algorithm: Difference between revisions

m
→‎{{header|PureBasic}}: Changed text labels
(→‎{{header|PicoLisp}}: Added PureBasic)
m (→‎{{header|PureBasic}}: Changed text labels)
Line 924:
-> "00011H1111000"</pre>
=={{header|PureBasic}}==
The GUI used here allows rulesa ruleset to be loaded from a text file or manually added one rule at a time. Symbol input can be tested anytime by selecting 'Test RulesInterpret'.
<lang PureBasic>Structure mRule
pattern.s
Line 975:
EndProcedure
Procedure.s execMarkovinterpretMarkov(text.s, List rules.mRule())
Repeat
madeReplacement = #False
Line 998:
EndProcedure
 
OpenWindow(0, 0, 0, 350, 300, "Markov RuleAlgorithm Interpreter", #PB_Window_SystemMenu)
ButtonGadget(0, 45, 10, 6575, 20, "Load RulesRuleset")
ButtonGadget(1, 163, 10, 65, 20, "Add Rule")
ButtonGadget(2, 280, 10, 65, 20, "Interpret")
Line 1,017:
Case 0
Define file.s, rule.s
file = OpenFileRequester("Select Markov Rulerule set", "*.txt", "Text (*.txt)|*.txt", 0)
If file
ClearList(rules())
Line 1,030:
Case 2
text = GetGadgetText(4): AddGadgetItem(7, -1, "Interpret: " + #DQUOTE$ + text + #DQUOTE$)
AddGadgetItem(7, -1, "Result: " + #DQUOTE$ + execMarkovinterpretMarkov(text, rules()) + #DQUOTE$): AddGadgetItem(7, -1, "")
Case 6
ClearGadgetItems(7)
Line 1,037:
isDone = #True
EndSelect
Until isDone</lang>
</lang>
Sample output from loading Ruleset 1 and interpreting a symbol:
<pre>Comment: "# This rules file is extracted from Wikipedia:"
Anonymous user