{-# LANGUAGE NoImplicitPrelude #-}
module Standalone where

(|*|) :: a -> a -> a
(|*|) = (|*|)
infixr 6 |*|

(|$|) :: (a -> b) -> a -> b
f |$| x = f x
infixr 1 |$|

data Foo = MkFoo
data Bar = MkBar

f :: Foo -> Bar
f MkFoo = MkBar

foo = f |$| MkFoo |*| MkFoo |*| MkFoo
