:yell "...Load example file" :load ./expl/AAIPExamples.hs :y "...set simplification to TRUE" :s +simplify :y "...generalise and test 'add'" :g add; :test add on "add (S(S(S(S(S Z))))) (S(S(S(S(S Z)))))" :y "...generalise and test 'appenD'" :g appenD; :test appenD on "appenD [1,1,1,1,1][2,2,2,2,2]" :y "...generalise and test 'droP'" :g droP; :test droP on "droP (S(S(S(S(S Z))))) [1,1,1,1,1,0,0,0]" --:y "...generalise and test 'eveN'" --:g eveN; :test eveN on "map eveN [Z,S Z, S (S Z), S(S(S Z)), S(S(S(S Z))), S(S(S(S(S Z)))), S(S(S(S(S(S Z))))), S(S(S(S(S(S(S Z))))))]" :y "...generalise and test 'evenpos'" :g evenpos; :test evenpos on "evenpos [1,2,3,4,5,6,7,8]" --:y "...generalise and test 'eq'" --:g eq; :test eq on "map (uncurry eq) [ (S(S(S(S(S(S Z))))),S(S(S(S(S(S Z)))))), (S(S(S(S(S Z)))),S(S(S(S(S(S(S Z))))))), (S(S(S(S(S(S(S Z)))))),S(S(S(S(S Z)))))]" :y "...generalise and test 'iniT'" :g iniT; :test iniT on "iniT [1,2,3,4,5,6,7,8]" :y "...generalise and test 'lasT'" :g lasT; :test lasT on "lasT [1,2,3,4,5,6,7,8]" :y "...generalise and test 'lasts'" :g lasts; :test lasts on "lasts [[1,2,3],[9,8,7,6,5,4,3],[3,3,3,3,3,3],[1,4,5,6,7,8,3]]" :y "...generalise and test 'lengtH'" :g lengtH; :test lengtH on "lengtH [1,2,3,4,5,6,7,8]" --:y "...generalise and test 'odD'" --:g odD; :test odD on "map odD [Z,S Z, S (S Z), S(S(S Z)), S(S(S(S Z))), S(S(S(S(S Z)))), S(S(S(S(S(S Z))))), S(S(S(S(S(S(S Z))))))]" :y "...generalise and test 'odD, eveN'" :g odD, eveN; :test odD, eveN on "map (\a -> (odd a, eveN a)) [Z,S Z, S (S Z), S(S(S Z)), S(S(S(S Z))), S(S(S(S(S Z)))), S(S(S(S(S(S Z))))), S(S(S(S(S(S(S Z))))))]" :y "...generalise and test 'oddpos'" :g oddpos; :test oddpos on "oddpos [1,2,3,4,5,6,7,8]" :y "...generalise and test 'repeatfirst'" :g repeatfirst; :test repeatfirst on "repeatfirst [1,2,3,4,5,6,7,8]" :y "...generalise and test 'repeatlast'" :g repeatlast; :test repeatlast on "repeatlast [1,2,3,4,5,6,7,8]" :y "...generalise and test 'reversE'" :g reversE; :test reversE on "reversE [1,2,3,4,5,6,7,8]" :y "...generalise and test 'reversE, snoc'" :g reversE, snoc; :test reversE, snoc on "reversE [1,2,3,4,5,6,7,8]" --:y "...generalise and test 'reversE with snoc'" --:g reversE with snoc; :test reversE with snoc on "reversE [1,2,3,4,5,6,7,8]" :y "...generalise and test 'shiftl'" :g shiftl; :test shiftl on "shiftl [1,2,3,4,5,6,7,8]" :y "...generalise 'sort' with 'insert'" :g sort with insert; -- :test sort with insert on "sort [1,2,3,4,5,6,7,8]" :y "...generalise and test 'shiftr'" :g shiftr; :test shiftr on "shiftr [1,2,3,4,5,6,7,8]" --:y "...generalise and test 'snoc'" --:g snoc; :test snoc on "snoc 9 [1,2,3,4,5,6,7,8]" :y "...generalise and test 'swap'" :g swap; :test swap on "swap [1,2,3,4,5,6,7,8]" :y "...generalise and test 'switch'" :g switch; :test switch on "switch [1,2,3,4,5,6,7,8]" --:y "...generalise and test 'taiL'" --:g taiL; :test taiL on "taiL [1,2,3,4,5,6,7,8]" :y "...generalise and test 'takE'" :g takE; :test takE on "takE (S(S(S(S(S Z))))) [1,1,1,1,1,0,0,0]" :y "...generalise and test 'weave'" :g weave; :test weave on "weave [1,1,1,1,1,0,0,0][2,2,2,2,2]" :y "That's all! Finished!" :q