By Robert Apeldorn Generate statistical random texts that can be read well Allow for the output texts to be created quickly regardless the size of the input text The markov chain algorithm emits output phrases by randomly choosing a suffix that follows the prefix Suppose we have the text Show your flowcharts and conceal your tables and I will be mystified Show your tables and your flowcharts will be obvious end Input Prefix Suffix words that follow Show your flowcharts tables your flowcharts and will flowcharts and conceal flowcharts will be your tables and and will be mystified obvious be mystified Show be obvious end As I started up the undershirt onto his chest black and big stomach muscles bulging under the light You see them Below the line where his ribs stopped were tow raised white welts See on the forehead Oh Brett I love you Lets not talk Talking s all bilge I m going away tomorrow Tomorrow Yes Didn t I say so I am Let s have a drink then Use an anonymous array to keep track of the suffixes Use a multiple assignment method to update the prefix Special characters needed for scalar for indexed array use brackets to index Use brackets to index hashes markov pl markov chain algorithm for 2 word prefixes MAXGEN 10000 NONWORD n w1 w2 NONWORD initial state while read each line of input foreach split push statetab w1 w2 w1 w2 w2 multiple assignment push statetab w1 w2 NONWORD add tail w1 w2 NONWORD for i 0 i MAXGEN i suf statetab w1 w2 array reference r int rand suf suf is number of elems exit if t suf r eq NONWORD print t n w1 w2 w2 t advance chain Programming Language Time seconds Lines of source code 0 30 150 Java 9 2 105 C STL list 1 5 70 Awk 2 1 20 Perl 1 0 18 C Kernighan Brian W and Rob Pike The Practice of Programming Addison Wesley Professional Computing Series New York Addison Wesley Professional 1999 Print
View Full Document
Unlocking...