Browse Source

End of day check in.

Generating a start sentence.
master
Craig Oates 6 years ago
parent
commit
8b9e5e96aa
  1. 6
      WetPancake/CoOrdinator.fs
  2. 2
      WetPancake/MapProcessing.fs
  3. 4
      WetPancake/Script.fsx
  4. 3
      WetPancake/Textprocessing.fs

6
WetPancake/CoOrdinator.fs

@ -9,10 +9,8 @@
let wordGroups = GetWordPairs (PickRandomNumber 10) text
let map = BuildMarkovMap wordGroups
let startWords = SeperateStartWords map
let startingWord = PickRandomNumber (Map.count startWords)
//let result = seq { for i in 1 .. PickRandomNumber 10 -> GetMarkovSentence startWords map}
//result |> JoinWords
//result
let start = (GetRandomWord startWords).Key
let sent = GetMarkovSentence start // <---- You are up to here....
0
let GenerateText gibberishLevel sentences = 0

2
WetPancake/MapProcessing.fs

@ -8,7 +8,7 @@
map
|> Map.partition (fun k _ -> IsStartOfSentence k)
fst startWords
let rec MarkovChain currentWords (map: Map<string, string list>) sentence =
let nextChoice = map.[currentWords] |> GetRandomWord
if IsEndOfSentence nextChoice then nextChoice :: sentence

4
WetPancake/Script.fsx

@ -21,4 +21,6 @@ let map = BuildMarkovMap wordGroups
let startWords = SeperateStartWords map
//let temp = snd startWords
let count = Map.count startWords
let random = PickRandomNumber (Map.count startWords)
let random = PickRandomNumber (Map.count startWords)
let start = (GetRandomWord startWords).Key
let sent = GetMarkovSentence start

3
WetPancake/Textprocessing.fs

@ -37,7 +37,8 @@
let BuildMarkovMap<'a> = Seq.fold MapBuilder Map.empty
let GetRandomWord words =
let randomWord = Random().Next(Seq.length words)
let random = Random()
let randomWord = random.Next(Seq.length words)
words |> Seq.item randomWord
let CombineWords prev next =

Loading…
Cancel
Save