Browse Source

Generate markov text setup.

Just need to genereate the actual text now. Haha.
master
Craig Oates 6 years ago
parent
commit
1eed4dae7b
  1. 17
      WetPancake/DataServices.fs
  2. 3
      WetPancake/Script.fsx

17
WetPancake/DataServices.fs

@ -2,23 +2,22 @@
open SystemServices
open System
open DataStructuring
let PickStartWord words = PickRandomItem (Random().Next) words
let rec GenerateMarkovChain (map: Map<string, string List> List) state chain =
let rec GenerateMarkovChain (map: Map<string, string List>) (state:string) chain =
let nextChoice = map.[state]
nextChoice
//"Not done yet"
let GenerateSentence map start =
let test = GenerateMarkovChain map start [start]
let result = "Not done yet"
result
let GenerateMarkovSentence map start =
GenerateMarkovChain map start [start]
let GenerateMarkovSentences noOfSentences map =
let GenerateMarkovText noOfSentences map =
let startWords = fst(SeperateStartWords map)
let result =
seq {
for i in 0 .. noOfSentences do
yield GenerateSentence map // <--- Up to here...
yield GenerateMarkovSentence map (PickStartWord startWords).Key
}
"Not done yet."
Seq.toList result

3
WetPancake/Script.fsx

@ -115,4 +115,5 @@ let dss_text =
|> ConcatToString
|> SortIntoGroups 6
|> GenerateMap
let dss_sentences = GenerateMarkovSentences 4 dss_text // <--- Up to here
let dss_startwords = SeperateStartWords dss_text
let dss_sentences = GenerateMarkovText 4 dss_text
Loading…
Cancel
Save