From ac9ce4d959848b118713fe150e14780f68b07990 Mon Sep 17 00:00:00 2001 From: Mike Lynch Date: Wed, 24 Dec 2025 14:11:31 +1100 Subject: [PATCH] Command-line flag to make the output random --- app/Main.hs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/Main.hs b/app/Main.hs index ecb01e9..20acac2 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -1,6 +1,7 @@ module Main (main) where import System.Random +import System.Environment ordinals :: [ String ] ordinals = [ @@ -33,7 +34,7 @@ signatures = [ ] offsets :: [ Int ] -offsets = [ 0, 1, 1, 5, 8, 5, 20, 10, 23, 3, 3 ] +offsets = reverse [ 0, 1, 1, 5, 8, 5, 20, 10, 23, 3, 3 ] cardinals :: [ String ] cardinals = [ @@ -136,8 +137,7 @@ main :: IO () main = do gen <- newStdGen let roffsets = randomOffsets gen allGifts - print roffsets - print (selectGifts roffsets) - print (selectGifts $ reverse offsets) - let tuples = zip ordinals $ selectGifts roffsets + args <- getArgs + let os = if (length args) > 0 then roffsets else offsets + let tuples = zip ordinals $ selectGifts os putStrLn $ foldr (\a b -> a ++ "\n\n" ++ b) "" $ reverse $ recurseVerse tuples