git.iko.soy/rowtype-yoga/purescript-native
on cd4c708 help sign in
20 lines 434 B history raw
1module Main where
3import Prelude
4import Test.Assert
5import Control.Monad.Eff.Console (log)
7data Z
8data S n
10data ArrayBox n a = ArrayBox (Array a)
12nil :: forall a. ArrayBox Z a
13nil = ArrayBox []
15cons' :: forall a n. a -> ArrayBox n a -> ArrayBox (S n) a
16cons' x (ArrayBox xs) = ArrayBox $ append [x] xs
18main = case cons' 1 $ cons' 2 $ cons' 3 nil of
19 ArrayBox [1, 2, 3] -> log "Done"
20 _ -> assert' "Failed" false