Compare commits
No commits in common. "9fa103dca7d4ddc6e917325d920f0ea3e813a510" and "ac9ce4d959848b118713fe150e14780f68b07990" have entirely different histories.
9fa103dca7
...
ac9ce4d959
53
README.md
53
README.md
@ -6,58 +6,7 @@ Days of Christmas.
|
|||||||
This is the most stupidly Haskell way I could think of: it makes a product of
|
This is the most stupidly Haskell way I could think of: it makes a product of
|
||||||
all the combinations of "$NUMBER $WORD $WORD" and then filters them. Filtering
|
all the combinations of "$NUMBER $WORD $WORD" and then filters them. Filtering
|
||||||
on word length alone wasn't enough, so the signature for each gift also includes
|
on word length alone wasn't enough, so the signature for each gift also includes
|
||||||
the offset into the lists of alternatives at the end of this page.
|
the offset into the following lists:
|
||||||
|
|
||||||
ADDENDUM: I added a flag which makes the script pick randomly from the list of
|
|
||||||
alternatives, which gives Oulipian variants on the original which have the quality
|
|
||||||
that the lines (and the spacing of the words) are the same length, for example:
|
|
||||||
|
|
||||||
```
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven French piping
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine French dancing
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven turtle piping
|
|
||||||
Ten geese a-milking
|
|
||||||
Nine French dancing
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven turtle piping
|
|
||||||
Six maids a-milking
|
|
||||||
Five ladies dancing
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
```
|
|
||||||
|
|
||||||
[Original](original.txt) | [Random 1](random1.txt) | [Random 2](random2.txt) | [Random 3](random3.txt)
|
|
||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
two turtle doves
|
two turtle doves
|
||||||
|
|||||||
@ -139,5 +139,5 @@ main = do
|
|||||||
let roffsets = randomOffsets gen allGifts
|
let roffsets = randomOffsets gen allGifts
|
||||||
args <- getArgs
|
args <- getArgs
|
||||||
let os = if (length args) > 0 then roffsets else offsets
|
let os = if (length args) > 0 then roffsets else offsets
|
||||||
let tuples = zip (reverse ordinals) $ selectGifts os
|
let tuples = zip ordinals $ selectGifts os
|
||||||
putStrLn $ foldr (\a b -> a ++ "\n\n" ++ b) "" $ reverse $ recurseVerse tuples
|
putStrLn $ foldr (\a b -> a ++ "\n\n" ++ b) "" $ reverse $ recurseVerse tuples
|
||||||
|
|||||||
103
original.txt
103
original.txt
@ -1,103 +0,0 @@
|
|||||||
On the first day of Christmas my true love gave to me
|
|
||||||
A partridge in a pear tree
|
|
||||||
|
|
||||||
On the second day of Christmas my true love gave to me
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the third day of Christmas my true love gave to me
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fourth day of Christmas my true love gave to me
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fifth day of Christmas my true love gave to me
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the sixth day of Christmas my true love gave to me
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the seventh day of Christmas my true love gave to me
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eighth day of Christmas my true love gave to me
|
|
||||||
Eight maids a-milking
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the ninth day of Christmas my true love gave to me
|
|
||||||
Nine ladies dancing
|
|
||||||
Eight maids a-milking
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the tenth day of Christmas my true love gave to me
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine ladies dancing
|
|
||||||
Eight maids a-milking
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eleventh day of Christmas my true love gave to me
|
|
||||||
Eleven pipers piping
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine ladies dancing
|
|
||||||
Eight maids a-milking
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Twelve drummers drumming
|
|
||||||
Eleven pipers piping
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine ladies dancing
|
|
||||||
Eight maids a-milking
|
|
||||||
Seven swans a-swimming
|
|
||||||
Six geese a-laying
|
|
||||||
Five gold rings
|
|
||||||
Four calling birds
|
|
||||||
Three French hens
|
|
||||||
Two turtle doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
|
|
||||||
103
random1.txt
103
random1.txt
@ -1,103 +0,0 @@
|
|||||||
On the first day of Christmas my true love gave to me
|
|
||||||
A partridge in a pear tree
|
|
||||||
|
|
||||||
On the second day of Christmas my true love gave to me
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the third day of Christmas my true love gave to me
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fourth day of Christmas my true love gave to me
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fifth day of Christmas my true love gave to me
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the sixth day of Christmas my true love gave to me
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the seventh day of Christmas my true love gave to me
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eighth day of Christmas my true love gave to me
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the ninth day of Christmas my true love gave to me
|
|
||||||
Nine French dancing
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the tenth day of Christmas my true love gave to me
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine French dancing
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eleventh day of Christmas my true love gave to me
|
|
||||||
Eleven French piping
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine French dancing
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven French piping
|
|
||||||
Ten lords a-leaping
|
|
||||||
Nine French dancing
|
|
||||||
Seven geese a-leaping
|
|
||||||
Eight geese a-swimming
|
|
||||||
Ten swans a-laying
|
|
||||||
Nine gold doves
|
|
||||||
Four calling rings
|
|
||||||
Eight French hens
|
|
||||||
Six French birds
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
|
|
||||||
103
random2.txt
103
random2.txt
@ -1,103 +0,0 @@
|
|||||||
On the first day of Christmas my true love gave to me
|
|
||||||
A partridge in a pear tree
|
|
||||||
|
|
||||||
On the second day of Christmas my true love gave to me
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the third day of Christmas my true love gave to me
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fourth day of Christmas my true love gave to me
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fifth day of Christmas my true love gave to me
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the sixth day of Christmas my true love gave to me
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the seventh day of Christmas my true love gave to me
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eighth day of Christmas my true love gave to me
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the ninth day of Christmas my true love gave to me
|
|
||||||
Nine French dancing
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the tenth day of Christmas my true love gave to me
|
|
||||||
Ten geese a-milking
|
|
||||||
Nine French dancing
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eleventh day of Christmas my true love gave to me
|
|
||||||
Eleven turtle piping
|
|
||||||
Ten geese a-milking
|
|
||||||
Nine French dancing
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven turtle piping
|
|
||||||
Ten geese a-milking
|
|
||||||
Nine French dancing
|
|
||||||
Eight maids a-leaping
|
|
||||||
Eight swans a-swimming
|
|
||||||
Ten lords drumming
|
|
||||||
Five gold rings
|
|
||||||
Nine calling rings
|
|
||||||
Three ladies hens
|
|
||||||
Six French doves
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
|
|
||||||
103
random3.txt
103
random3.txt
@ -1,103 +0,0 @@
|
|||||||
On the first day of Christmas my true love gave to me
|
|
||||||
A partridge in a pear tree
|
|
||||||
|
|
||||||
On the second day of Christmas my true love gave to me
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the third day of Christmas my true love gave to me
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fourth day of Christmas my true love gave to me
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the fifth day of Christmas my true love gave to me
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the sixth day of Christmas my true love gave to me
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the seventh day of Christmas my true love gave to me
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eighth day of Christmas my true love gave to me
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the ninth day of Christmas my true love gave to me
|
|
||||||
Five ladies dancing
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the tenth day of Christmas my true love gave to me
|
|
||||||
Six maids a-milking
|
|
||||||
Five ladies dancing
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the eleventh day of Christmas my true love gave to me
|
|
||||||
Eleven turtle piping
|
|
||||||
Six maids a-milking
|
|
||||||
Five ladies dancing
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
On the twelfth day of Christmas my true love gave to me
|
|
||||||
Eleven drummers drumming
|
|
||||||
Eleven turtle piping
|
|
||||||
Six maids a-milking
|
|
||||||
Five ladies dancing
|
|
||||||
Three lords a-milking
|
|
||||||
Seven maids a-swimming
|
|
||||||
Six maids drumming
|
|
||||||
Nine gold birds
|
|
||||||
Four calling rings
|
|
||||||
Seven ladies hens
|
|
||||||
Ten French rings
|
|
||||||
And a partridge in a pear tree
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user