thorn-0.1.0.3: Data/Thorn/FoldExample.hs
{-# LANGUAGE TemplateHaskell, TypeOperators #-}
module Data.Thorn.FoldExample (module Data.Thorn.FoldExample) where
import Data.Thorn
data x :$ y = Nil | (x,y) :* (x :$ y)
unfixdata [t|(:$)|]
insth = $(autoin [t|(:&$)|] [t|(:$)|])
outsth = $(autoout [t|(:&$)|] [t|(:$)|])
hylosth = $(autohylo [t|(:&$)|])
foldsth = $(autofold [t|(:&$)|] [t|(:$)|])
unfoldsth = $(autounfold [t|(:&$)|] [t|(:$)|])