できたーヽ(´ー`)ノ

  • splitAt3' = flip((flip((flip(map) . flip(map) [take,drop] . flip($)))).flip($) )
*Main> :! type mysplit.hs
splitAt' n = flip(map)  (flip(map) [take,drop] ($ n)) . flip($)

splitAt2' n =  (flip(map) . flip(map) [take,drop] . flip($)) n.flip($)

splitAt3' = flip((flip((flip(map) . flip(map) [take,drop] . flip($)))).flip($) )
*Main> :l mysplit.hs
Compiling Main             ( mysplit.hs, interpreted )
Ok, modules loaded: Main.
*Main> splitAt3' 10 ['a'..'z']
["abcdefghij","klmnopqrstuvwxyz"]

これでnもxsも消えましたv(´ー`)v
flipしまくって引数の位置を都合良く並び替えてるイメージ。
(もっとスマートな方法があるんだろうなぁ。)

グループに参加してそっちに書いた方が良かったのかな・・。