madlang 3.1.0.10 → 3.1.1.0
raw patch · 7 files changed
+46/−6 lines, 7 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- demo/example.mad +1/−1
- demo/releases.mad +26/−0
- madlang.cabal +1/−1
- src/Text/Madlibs/Ana/Parse.hs +9/−1
- test/templates/include-recursive.mad +1/−1
- test/templates/include.mad +3/−2
- test/templates/lib.mad +5/−0
demo/example.mad view
@@ -27,7 +27,7 @@ 1.0 "wishes she could journey around the world." 1.0 "falls down on the subway escalator." 1.0 "meets a handsome dark stranger."- 1.0 "suffers because mercury is in powerade."+ 1.0 "suffers because mercury is in gatorade." 1.0 "charms a prince." :define subject
+ demo/releases.mad view
@@ -0,0 +1,26 @@+:include animals.mad+:include adjectives.mad++# TODO make a neat little site for this?+:category release+ | adjectives-aadjective.capitalize " " animals-aanimal.capitalize+ | adjectives-badjective.capitalize " " animals-banimal.capitalize+ | adjectives-cadjective.capitalize " " animals-canimal.capitalize+ | adjectives-dadjective.capitalize " " animals-danimal.capitalize+ | adjectives-eadjective.capitalize " " animals-eanimal.capitalize+ | adjectives-fadjective.capitalize " " animals-fanimal.capitalize+ | adjectives-gadjective.capitalize " " animals-ganimal.capitalize+ | adjectives-hadjective.capitalize " " animals-hanimal.capitalize+ | adjectives-iadjective.capitalize " " animals-ianimal.capitalize+ | adjectives-ladjective.capitalize " " animals-lanimal.capitalize+ | adjectives-kadjective.capitalize " " animals-kanimal.capitalize+ | adjectives-madjective.capitalize " " animals-manimal.capitalize+ | adjectives-nadjective.capitalize " " animals-nanimal.capitalize+ | adjectives-oadjective.capitalize " " animals-oanimal.capitalize+ | adjectives-padjective.capitalize " " animals-panimal.capitalize+ | adjectives-qadjective.capitalize " " animals-qanimal.capitalize+ | adjectives-sadjective.capitalize " " animals-sanimal.capitalize+ | adjectives-vadjective.capitalize " " animals-vanimal.capitalize++:return+ 1.0 release
madlang.cabal view
@@ -1,5 +1,5 @@ name: madlang-version: 3.1.0.10+version: 3.1.1.0 synopsis: Randomized templating language DSL description: Madlang is a text templating language written in Haskell, meant to explore computational creativity and generative
src/Text/Madlibs/Ana/Parse.hs view
@@ -165,6 +165,14 @@ val <- fmap normalize . some $ function pure (str, val) <?> "category block" +-- | Parse a `:library` declaration+preLibrary :: Parser ()+preLibrary = void (nonIndented (keyword "library"))+ <?> "library declaration"++library :: Parser (Key, [(Prob, [PreTok])])+library = preLibrary >> pure ("Return", [(1, [])])+ -- | Parse the `:return` block final :: [T.Text] -> Parser [(Prob, [PreTok])] final ins = do@@ -176,7 +184,7 @@ program :: [T.Text] -> Parser [(Key, [(Prob, [PreTok])])] program ins = sortKeys <$> (checkSemantics =<< do inclusions- p <- many (try (definition ins) <|> try category <|> ((,) "Return" <$> final ins))+ p <- many (try (definition ins) <|> try category <|> try ((,) "Return" <$> final ins) <|> library) lexeme eof pure p)
test/templates/include-recursive.mad view
@@ -1,5 +1,5 @@ :include include.mad :define another- 1.0 include-gambling-something+ 1.0 include-lib-something :return 1.0 another
test/templates/include.mad view
@@ -1,6 +1,7 @@-:include gambling.mad+:include lib.mad+ :define realistic- 1.0 gambling-something.to_lower+ 1.0 lib-something.to_lower 0.03 "on its side" :return 1.0 realistic
+ test/templates/lib.mad view
@@ -0,0 +1,5 @@+:library++:define something+ 0.5 "heads".to_upper.to_upper+ 0.5 "tailS".to_lower