Execute a Markov algorithm: Difference between revisions
Content added Content deleted
(C) |
m (→{{header|J}}) |
||
Line 412: | Line 412: | ||
'''Solution''':<lang j>require'strings regex' |
'''Solution''':<lang j>require'strings regex' |
||
markovLexer |
markovLexer =: verb define |
||
rules =. LF cut TAB&=`(,:&' ')}y |
rules =. LF cut TAB&=`(,:&' ')}y |
||
rules =. a: -.~ (dltb@:{.~ i:&'#')&.> rules |
rules =. a: -.~ (dltb@:{.~ i:&'#')&.> rules |
||
Line 420: | Line 420: | ||
replace |
replace =: dyad define |
||
'index patternLength replacement'=. x |
'index patternLength replacement'=. x |
||
'head tail' =. index split y |
'head tail' =. index split y |
||
Line 426: | Line 426: | ||
) |
) |
||
matches |
matches =: E. i. 1: |
||
markov =: dyad define |
|||
ruleIdx =. 0 [ rules =. markovLexer x |
ruleIdx =. 0 [ rules =. markovLexer x |
||
while. ruleIdx < #rules do. |
while. ruleIdx < #rules do. |