language-dickinson 1.4.2.0 → 1.4.3.0
raw patch · 13 files changed
+363/−12 lines, 13 filesdep ~microlens-mtldep ~optparse-applicativePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: microlens-mtl, optparse-applicative
API changes (from Hackage documentation)
- Language.Dickinson: class HasRenames a
+ Language.Dickinson: class () => HasRenames a
- Language.Dickinson: data AlexPosn
+ Language.Dickinson: data () => AlexPosn
- Language.Dickinson: data Builtin
+ Language.Dickinson: data () => Builtin
- Language.Dickinson: data Declaration a
+ Language.Dickinson: data () => Declaration a
- Language.Dickinson: data Dickinson a
+ Language.Dickinson: data () => Dickinson a
- Language.Dickinson: data DickinsonTy a
+ Language.Dickinson: data () => DickinsonTy a
- Language.Dickinson: data Expression a
+ Language.Dickinson: data () => Expression a
- Language.Dickinson: data Name a
+ Language.Dickinson: data () => Name a
- Language.Dickinson: data ParseError a
+ Language.Dickinson: data () => ParseError a
- Language.Dickinson: data Pattern a
+ Language.Dickinson: data () => Pattern a
- Language.Dickinson: data Token a
+ Language.Dickinson: data () => Token a
Files
- CHANGELOG.md +4/−0
- LICENSE +1/−1
- README.md +4/−0
- doc/user-guide.pdf binary
- examples/ayeshaErotica.dck +184/−0
- examples/starwars.dck +93/−0
- language-dickinson.cabal +4/−4
- lib/adjectives.dck +7/−0
- lib/brands.dck +47/−0
- lib/noun.dck +17/−4
- lib/verb.dck +1/−0
- run/REPL/Completions.hs +1/−2
- src/Language/Dickinson/File.hs +0/−1
CHANGELOG.md view
@@ -1,5 +1,9 @@ # dickinson +## 1.4.3.0++ * REPL tab-completions no longer hang indefinitely+ ## 1.4.2.0 * Export `pipelineBSLErr`
LICENSE view
@@ -1,4 +1,4 @@-Copyright Vanessa McHale (c) 2020+Copyright Vanessa McHale (c) 2020, 2022 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
README.md view
@@ -4,6 +4,10 @@ ## Installation +### Web++You can try out the language [on the web](http://vmchale.com/static/dickinson-web/) without installing anything.+ ### Binary Releases Binaries for some platforms are available on the [releases
doc/user-guide.pdf view
binary file changed (191571 → 193108 bytes)
+ examples/ayeshaErotica.dck view
@@ -0,0 +1,184 @@+#!/usr/bin/env emd++%-++(:def slayyyter+ (:oneof+ (| "I'm blowing all my money right up my nose")+ (| "I let him eat the fish like Nobu")+ (|+ '''+ He's watching how far I can go+ Erupts like a volcano+ ''')+ (| "Baby let me swallow them kids")+ (| "my coat chinchilla")))++(:def ayesha+ (:oneof+ (| "rhinoplasty forever")+ (| "Razor blades and rubbers in my Yves St. Laurent")+ (| "I want a hard facefucking in your '82 DeLorean")+ (| "My tampon is small")+ (| "I wanna look like the magazines")+ (|+ '''+ I wanna let my hair down+ ''')+ (| "I got a thin waist, model legs, looking pussy in the face")+ (| "If he's not a millionaire then I've gots to go")+ (| "I'm 5'7\", he's alive")+ (| "suicide on my wishlist")+ (|+ '''+ I love robbery and fraud+ I'm a shoplifting God+ ''')+ (| "I'm a self-made thousandaire")+ (|+ '''+ Now, you don't have to hate me+ I do that enough myself+ ''')+ (|+ '''+ Preventing teen pregnancy is easy as can be+ Just put on your condom and follow me+ ''')+ (|+ '''+ Instead of liquor+ I drink some cleaner+ ''')+ (| "Pound me til you're out of breath")+ (|+ '''+ Since fourteen+ I've been making football players cream+ ''')+ (| "Don't touch me I'm expensive")+ (| "Grab these tits and pull that hair")+ (|+ '''+ blunt on my lip+ fanny pack on my hip+ ''')+ (| "I don't want Gucci I want trashy")+ (| "I like hard dick and an even harder fist")+ (|+ '''+ I can meet you after the show+ In the parking lot next to the Super Eight Motel+ ''')+ (| "Long dreads, snapback")+ (| "I hope I'm turning you on")+ (| "Feel that estrogen")+ (|+ '''+ I like it rough, yeah, put it in my butt+ ''')+ (| "I'll blow your dick while you drive to the beach.")+ (| "Leave a cock blowing up like the world trade")+ (| "I love doing crack")+ (| "You can call me a slut bitch I get paid")+ (| "Suck you dry like a fucking leech")+ (| "If I want to fuck a teacher? I will.")+ (| "When you talk business it makes me wet")+ (| "Whose pussy smells like rosebush?")+ (| "I need 15k for a pair of new tits")+ (| "I chew more meat than Burger King")+ (| "Flip me around and come get some")+ (|+ '''+ Pills are so sweet+ I love all the things that are sweet+ How many pills shall I eat+ ''')+ (| "pulling on the nipples and he gets you real wet")+ (| "Let your white studded belt hit the ground")+ (| "I'm wearing fur to the pussy colored strawberry blonde")+ (| "We're barely legal teen queens who love a mouth full of cock")+ (| "if the hole’s empty then fill it")+ (| "Put addys in my slurpee")+ (| "I'm a valley girl fuckdoll living in the trash")+ (| "I wanna be synthetic")+ (|+ '''+ Then his tongue starts movin' down to somewhere new+ He pulls his dick out and before you can ask+ He slides ten inches in your pretty little ass+ ''')+ (|+ '''+ I wanna get fucked with a beer bottle+ Break it, watch me bleed out+ ''')+ (| "bloody's how I like it, with an extra side of hate")+ (| "Never drink anything under 10 grand")+ (| "Don't tell anybody about your flaws")+ (| "you gotta be ready for tons of oral")+ (|+ '''+ I'm a young, rich, skinny bitch+ And that's what fucking matters+ ''')+ (|+ '''+ Chopping up in the Mercedes+ Snort it straight off of the dash+ ''')+ (| "You get ignored cause you're poor")+ (|+ '''+ He's thin, tall, pale and frail+ He's got no money, fresh out of jail+ ''')+ (| "My pussy tastes like Apple Jacks")+ (| "I'm the First Lady of Juicy Couture")+ (| "Sorry can't take your call cause I'm catching kids")+ (|+ '''+ I sleep with guys+ Just for fun and drugs+ ''')+ (|+ '''+ Breakfast at Tiffany's, lunch we're heading to Sak's+ Dinner will be Balenciaga, Chanel will be a snack+ ''')+ (|+ '''+ All I want for Christmas is+ An 8 ball of blow and a pair of new tits+ ''')+ (|+ '''+ One skin, two skin, three skin, four+ ''')+ (|+ '''+ Gag reflex? Bitch, think again+ ''')+ (|+ '''+ he loves me but he fucks me like he hates my guts+ ''')+ (|+ '''+ Honk the horn with ya big old breasts+ ''')+ (|+ '''+ Who put my baby in the oven?+ ''')+ (|+ '''+ Don't like relaxin' so I don't smoke pot+ ''')+ (|+ '''+ They say sex doesn’t sell anymore, but how come it's still selling in hotel rooms I go to?+ ''')))++(:def main+ ayesha)
+ examples/starwars.dck view
@@ -0,0 +1,93 @@+#!/usr/bin/env emd++%-++(:def main+ (:let+ [either+ (:oneof+ (| "Quarrel")+ (| "Vult")+ (| "Dengar")+ (| "Pike")+ (| "Holo")+ (| "Frik")+ (| "Blot"))]+ (:let+ [firstname+ (:oneof+ (| "Yert")+ (| "Wam")+ (| "Pommet")+ (| "Hodnar")+ (| "Po")+ (| "Jelk")+ (| "Boba")+ (| "Orchi")+ (| "Zorn")+ (| "Moth")+ (| "Chert")+ (| "Djam")+ (| "Lozenge")+ (| "Unkar")+ (| "Karp")+ (| "Jerek")+ (| "Marasmus")+ (| "Tote")+ (| "Jegg")+ (| "Bolt")+ (| "Aura")+ (| "Sonta")+ (| "Trudkin")+ (| "Slan")+ (| "Gorp")+ (| "Ferryk")+ (| "Chilblain")+ (| "Ren")+ (| "Miles")+ (| "Rolan")+ (| "Mon")+ (| "Ram")+ (| "Hurx")+ (| "Sheera")+ (| "Jekku")+ (| "Gorgle")+ (| "Sorkin")+ (| "Jenk")+ (| "Ferrus")+ (| "Tarp")+ (| "Wate")+ (| "Benzine")+ (| "Slurp")+ (| "Nuva")+ (| "Corbin")+ (| "Zara")+ (| "Quort")+ (| "Korra")+ (| "Lud")+ (| either))]+ [lastname+ (:oneof+ (| "Grinell")+ (| "Agate")+ (| "Ackbar")+ (| "Boll")+ (| "Vos")+ (| "Bon")+ (| "Tink")+ (| "Bum")+ (| "Cathar")+ (| "Barr")+ (| "Brik")+ (| "Gallus")+ (| "Scarf")+ (| "Pyce")+ (| "Plutt")+ (| "Blink")+ (| "Phanto")+ (| "Bliss")+ (| "Festoon")+ (| "Wet")+ (| "Gorpax")+ (| either))]+ "${(:flatten firstname)} ${(:flatten lastname)}")))
language-dickinson.cabal view
@@ -1,9 +1,9 @@ cabal-version: 2.0 name: language-dickinson-version: 1.4.2.0+version: 1.4.3.0 license: BSD3 license-file: LICENSE-copyright: Copyright: (c) 2020 Vanessa McHale+copyright: Copyright: (c) 2020, 2022 Vanessa McHale maintainer: vamchale@gmail.com author: Vanessa McHale tested-with:@@ -188,14 +188,14 @@ build-depends: base, dickinson,- optparse-applicative,+ optparse-applicative >=0.14.1.0, bytestring, prettyprinter, text, haskeline >=0.8, mtl, random,- microlens-mtl,+ microlens-mtl >=0.1.8.0, microlens, containers, filepath,
lib/adjectives.dck view
@@ -29,6 +29,7 @@ (| "baneful") (| "auxetic") (| "bromide")+ (| "bolshie") (| "murine") (| "banal") (| "redolent")@@ -61,6 +62,7 @@ (| "awesome") (| "apotropaic") (| "alluring")+ (| "debile") (| "altricial") (| "amicular") (| "affable")@@ -103,6 +105,7 @@ (| "cosmopolitan") (| "cymotrichous") (| "chthonic")+ (| "contumacious") (| "cherished") (| "chalybeate") (| "criminal")@@ -179,6 +182,7 @@ (| "fragrant") (| "funny") (| "flaccid")+ (| "hebephrenic") (| "fastidious") (| "fulsome") (| "foundational")@@ -294,6 +298,7 @@ (| "skilled") (| "salacious") (| "sacerdotal")+ (| "bleary") (| "narrow") (| "narcoleptic") (| "nude")@@ -411,6 +416,7 @@ (| "ruby") (| "ravenous") (| "retro")+ (| "ineluctable") (| "radical") (| "rustic") (| "rational")@@ -429,6 +435,7 @@ (| "turbulent") (| "tawdry") (| "trite")+ (| "callipygian") (| "tired") (| "tendentious") (| "titillating")
+ lib/brands.dck view
@@ -0,0 +1,47 @@+%-++(:def car+ (:oneof+ (| "Mercedes")+ (| "Hummer")+ (| "Cadillac")+ (| "Porsche")+ (| "Ferrari")+ (| "Bentley")+ (| "BMW")))++; chinchilla...+(:def brand+ (:oneof+ (| "Sak's")+ (| "Bloomingdale's")+ (| "Birkin")+ (| "McQueen")+ (| "Fendi")+ (| "Cartier")+ (| "Ferragamo")+ (| "J. Crew")+ (| "Vineyard Vines")+ (| "Moncler")+ (| "Versace")+ (| "Valentino")+ (| "Moschino")+ (| "Nike")+ (| "Armani")+ (| "Patagonia")+ (| "Miu miu")+ (| "Ralph Lauren")+ (| "Calvin Klein")+ (| "Prada")+ ; blackglama+ (| "Balmain")+ (| "Balenciaga")+ (| "Gucci")+ (| "Comme des Garçons")+ (| "Neiman Marcus")+ (| "Chanel")+ (| "Margiela")+ (| "Louis Vuitton")+ (| "Juicy Couture")+ (| "Dior")+ (| "Yves St. Laurent")))
lib/noun.dck view
@@ -26,7 +26,6 @@ (| "sabbing") (| "adynaton") (| "aposiopesis")- (| "pilcrow") (| "asyndeton") (| "wean") (| "consilience")@@ -47,13 +46,13 @@ (| "paradox") (| "hyperbole") (| "epizeuxis")+ (| "orbitoclast") (| "hypocatastasis") (| "mesozeugma") (| "simile") (| "alliteration") (| "synecdoche") (| "catachresis")- (| "guff") (| "anapodoton") (| "anacoluthon") (| "anadiplosis")@@ -113,7 +112,10 @@ (| "sitophobia") (| "acedia") (| "spandrel")+ (| "breeks")+ (| "exiguity") (| "tail")+ (| "abdest") (| "bredrin") (| "apse") (| "joke")@@ -121,6 +123,8 @@ (| "caloyer") (| "foofaraw") (| "supererogation")+ (| "steatopygia")+ (| "pilcrow") (| "autonomous") (| "pseudonym") (| "exegete")@@ -129,6 +133,7 @@ (| "potboiler") (| "heliophagy") (| "alterity")+ (| "diegesis") (| "poultice") (| "quiescence") (| "gemish")@@ -139,13 +144,13 @@ (| "seppo") (| "pyxis") (| "salp")- (| "kayfabe") (| "stope") (| "pablum") (| "pastille") (| "satori") (| "catechumen") (| "ardor")+ (| "tellurian") (| "palaver") (| "theogeny") (| "curio")@@ -171,6 +176,7 @@ (| "sphygmomanometer") (| "colophon") (| "belvedere")+ (| "guff") (| "dilatation") (| "blagging") (| "clyster")@@ -178,6 +184,7 @@ (| "kyphosis") (| "kyphoscoliosis") (| "ossicle")+ (| "vaticination") (| "apocope") (| "aphaeresis") (| "cwm")@@ -235,10 +242,12 @@ (| "prig") (| "lavra") (| "epeolatry")+ (| "whitlow") (| "nosogenesis") (| "onychophagy") (| "parsimony") (| "cenobite")+ (| "aporia") (| "hermit") (| "anosognosia") (| "radula")@@ -256,7 +265,6 @@ (| "schorl") (| "velleity") (| "syncope")- (| "enuresis") (| "saccade") (| "yardstick") (| "epistates")@@ -406,17 +414,22 @@ (| "cock") (| "confluence") (| "bed")+ (| "skerry") (| "leather") (| "vinyl") (| "latex") (| "jeremiad") (| "sitiogonic")+ (| "isopsephy") (| "apotheosis") (| "aphelion") (| "bevel") (| "thurible") (| "perihelion")+ (| "bleb") (| "cabochon") (| "sortition")+ (| "stotting") (| "weft")+ (| "tenesmus") (| "folderol"))))
lib/verb.dck view
@@ -8,6 +8,7 @@ (| "loll") (| "avulse") (| "plotz")+ (| "inure") (| "subluxate") (| "remonstrate") (| "boke")))
run/REPL/Completions.hs view
@@ -14,8 +14,7 @@ namesStr = gets (fmap T.unpack . M.keys . topLevel) cyclicSimple :: [String] -> [Completion]-cyclicSimple [] = []-cyclicSimple xs = cycle $ fmap simpleCompletion xs+cyclicSimple = fmap simpleCompletion emdCompletions :: CompletionFunc (StateT (EvalSt a) IO) emdCompletions (":","") = pure (":", cyclicSimple [ "help", "h", "save", "load", "l", "r", "type", "t", "view", "quit", "q", "list" ])
src/Language/Dickinson/File.hs view
@@ -45,7 +45,6 @@ import Language.Dickinson.Rename.Amalgamate import Language.Dickinson.Type import Language.Dickinson.TypeCheck-import Prettyprinter (pretty) import System.Random (StdGen, newStdGen, randoms) data AmalgamateSt = AmalgamateSt { amalgamateRenames :: Renames