The only difference between a cons list and a snoc list is the category involved.
newtype Op c a b = Op (c b a)
instance Category c => Category (Op c) where
id = Op id
Op x . Op y = Op (y . x)
With this, SnocList c a b is basically the same as ConsList (Op c) a b.
The only difference between a cons list and a snoc list is the category involved.
With this,
SnocList c a bis basically the same asConsList (Op c) a b.