dupe 12 == (12, 12)
>>> dup "foo" ("foo","foo") >>> dup () ((),())
>>> uncons [] Nothing
>>> uncons [a, b, c] Just (a,[b,c])
>>> uncons [] Nothing
>>> uncons [1, 2, 3] Just (1,[2,3])
>>> unsnoc (LazyT.pack "hello!") Just ("hello",'!')
>>> unsnoc (LazyT.pack "") Nothing
>>> unsnoc (Seq.fromList [b,c,a]) Just (fromList [b,c],a)
>>> unsnoc (Seq.fromList []) Nothing
>>> unsnoc "hello!" Just ("hello",'!')
>>> unsnoc "" Nothing