Skip to content

Instantly share code, notes, and snippets.

@deque-blog
Created January 21, 2017 15:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save deque-blog/1e52032cc588dbaa1d9863b15daa73d9 to your computer and use it in GitHub Desktop.
Save deque-blog/1e52032cc588dbaa1d9863b15daa73d9 to your computer and use it in GitHub Desktop.
{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
data OpType = Add | Mul deriving (Show, Eq, Ord)
data ExprR r
= Cst Int
| Var Id
| Op OpType [r]
deriving (Show, Eq, Ord, Functor, Foldable, Traversable)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment