Skip to content

Instantly share code, notes, and snippets.

@jjant
Created September 9, 2018 17:43
Show Gist options
  • Select an option

  • Save jjant/a449db79ad6a82268160de4fe2b087be to your computer and use it in GitHub Desktop.

Select an option

Save jjant/a449db79ad6a82268160de4fe2b087be to your computer and use it in GitHub Desktop.
isAdmin :: FreeMonoid (String, Bool) -> Bool
isAdmin perms = interpret True (\(_, perm) rest -> perm && rest) perms
isPowerUser :: FreeMonoid (String, Bool) -> Bool
isPowerUser perms = interpret False (\(_, perm) rest -> perm || rest) perms
isRegularUser :: FreeMonoid (String, Bool) -> Bool
isRegularUser perms = not (isPowerUser perms)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment