From 3624c712d72d246f21d4e710cec7c11e052e0326 Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Tue, 9 Dec 2025 16:32:32 +0100 Subject: Add the haskell book --- Haskell-book/06/src/Main.purs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Haskell-book/06/src/Main.purs (limited to 'Haskell-book/06/src/Main.purs') diff --git a/Haskell-book/06/src/Main.purs b/Haskell-book/06/src/Main.purs new file mode 100644 index 0000000..6f60ab2 --- /dev/null +++ b/Haskell-book/06/src/Main.purs @@ -0,0 +1,30 @@ +module Main where + +import Prelude +import Control.Monad.Eff (Eff) +import Control.Monad.Eff.Console (CONSOLE, log) + +data DayOfWeek = + Mon | Tue | Weds | Thu | Fri | Sat | Sun + +data Date = + Date DayOfWeek Int + +instance eqDayOfWeek :: Eq DayOfWeek where + eq Mon Mon = true + eq Tue Tue = true + eq Weds Weds = true + eq Thu Thu = true + eq Fri Fri = true + eq Sat Sat = true + eq Sun Sun = true + eq _ _ = false + +instance eqDate :: Eq Date where + eq (Date weekday dayOfMonth) + (Date weekday' dayOfMonth') = + weekday == weekday' && dayOfMonth == dayOfMonth' + +main :: forall e. Eff (console :: CONSOLE | e) Unit +main = do + log "Hello sailor!" -- cgit v1.2.3