|
|
|
@ -25,18 +25,14 @@ module Pancake =
|
|
|
|
|
let RequestTextAsync (gibberishLevel: int) (sentences: int) = |
|
|
|
|
async { |
|
|
|
|
try |
|
|
|
|
if GibberishLevelIsValid gibberishLevel then |
|
|
|
|
if SentencesIsValid sentences then |
|
|
|
|
let data = |
|
|
|
|
LoadFile (SelectRandomSampleFile()) |
|
|
|
|
|> ApplyStandardSetup |
|
|
|
|
|> SortIntoGroups gibberishLevel |
|
|
|
|
|> GenerateMap |
|
|
|
|
return GenerateMarkovText sentences data |
|
|
|
|
else |
|
|
|
|
return raise (ArgumentException("Invalid argument. Must be greater than 0.", "sentences")) |
|
|
|
|
else |
|
|
|
|
return raise (ArgumentException("Invalid argument. Must be between 2 and 20 (inclusive).", "gibberishLevel")) |
|
|
|
|
GibberishLevelIsValid gibberishLevel |> ignore |
|
|
|
|
SentencesIsValid sentences |> ignore |
|
|
|
|
let data = |
|
|
|
|
LoadFile (SelectRandomSampleFile()) |
|
|
|
|
|> ApplyStandardSetup |
|
|
|
|
|> SortIntoGroups gibberishLevel |
|
|
|
|
|> GenerateMap |
|
|
|
|
return GenerateMarkovText sentences data |
|
|
|
|
with |
|
|
|
|
| :? ArgumentException as ex -> |
|
|
|
|
return ex.Message |
|
|
|
@ -72,42 +68,4 @@ module Pancake =
|
|
|
|
|
ListSampleFiles |
|
|
|
|
|> Array.toList |
|
|
|
|
return files |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// =================================================================== |
|
|
|
|
|
|
|
|
|
let gibCheck g = |
|
|
|
|
match g with |
|
|
|
|
| g when g < 2 || g > 20 -> |
|
|
|
|
raise (ArgumentException("Invalid argument. Must be between 2 and 20 (inclusive).", "gibberishLevel")) |
|
|
|
|
| _ -> ignore |
|
|
|
|
|
|
|
|
|
let senCheck s = |
|
|
|
|
match s with |
|
|
|
|
| s when s < 1 -> |
|
|
|
|
raise (ArgumentException("Invalid argument. Must be greater than 0.", "sentences")) |
|
|
|
|
| _ -> ignore |
|
|
|
|
|
|
|
|
|
// TEST FUNCTION |
|
|
|
|
let RequestTest (gibberishLevel: int) (sentences: int) = |
|
|
|
|
async { |
|
|
|
|
try |
|
|
|
|
gibCheck gibberishLevel |> ignore |
|
|
|
|
senCheck sentences |> ignore |
|
|
|
|
let data = |
|
|
|
|
LoadFile (SelectRandomSampleFile()) |
|
|
|
|
|> ApplyStandardSetup |
|
|
|
|
|> SortIntoGroups gibberishLevel |
|
|
|
|
|> GenerateMap |
|
|
|
|
return GenerateMarkovText sentences data |
|
|
|
|
(* |
|
|
|
|
else |
|
|
|
|
return raise (ArgumentException("Invalid argument. Must be greater than 0.", "sentences")) |
|
|
|
|
else |
|
|
|
|
return raise (ArgumentException("Invalid argument. Must be between 2 and 20 (inclusive).", "gibberishLevel")) |
|
|
|
|
*) |
|
|
|
|
with |
|
|
|
|
| :? ArgumentException as ex -> |
|
|
|
|
return ex.Message |
|
|
|
|
} |