I hereby claim:
- I am adamgundry on github.
- I am adamgundry (https://keybase.io/adamgundry) on keybase.
- I have a public key ASCjG4OJrVK8rcTnOXwK-GoHUZmq02gkastcgZX5n9oxhAo
To claim this, I am signing this object:
| {-# LANGUAGE DataKinds, FlexibleInstances, FunctionalDependencies, | |
| KindSignatures, MagicHash, MultiParamTypeClasses #-} | |
| import GHC.TypeLits | |
| import GHC.Exts | |
| class HasField (x :: Symbol) r a | x r -> a where | |
| getField :: Proxy# x -> r -> a | |
| data Record2 (n1 :: Symbol) v1 (n2 :: Symbol) v2 = |
| {-# LANGUAGE AllowAmbiguousTypes | |
| , DataKinds | |
| , DeriveGeneric | |
| , DuplicateRecordFields | |
| , FlexibleContexts | |
| , FlexibleInstances | |
| , KindSignatures | |
| , MultiParamTypeClasses | |
| , ScopedTypeVariables | |
| , TypeApplications |
| {-# LANGUAGE AllowAmbiguousTypes #-} | |
| {-# LANGUAGE FlexibleInstances #-} | |
| {-# LANGUAGE PatternSynonyms #-} | |
| {-# LANGUAGE RankNTypes #-} | |
| {-# LANGUAGE ScopedTypeVariables #-} | |
| {-# LANGUAGE TypeApplications #-} | |
| {-# LANGUAGE TypeSynonymInstances #-} | |
| {-# LANGUAGE TypeInType #-} | |
| {-# LANGUAGE ViewPatterns #-} | |
| module RuntimeTypes where |
| #!/bin/bash | |
| # This is a quick hack using stack to list dependencies and then | |
| # copying their licenses from the locations in which it stores them. | |
| # It tries various possible filenames in the store first, then tries | |
| # the global location for system packages. It will miss out licenses | |
| # for parts of the local project, the "rts" package (but that's okay, | |
| # because it is covered by the license for "base"), and will | |
| # (silently) exclude licenses for underlying C libraries. | |
| LOCAL_PATH=.stack-work/install/x86_64-linux/lts-9.0/8.0.2/doc/ |
| {-# LANGUAGE TemplateHaskell #-} | |
| {-# LANGUAGE TypeFamilies #-} | |
| module Main(main) where | |
| import Control.Concurrent | |
| import Control.Exception | |
| import Control.Monad.Reader | |
| import Control.Monad.State | |
| import Data.Acid |
| {-# LANGUAGE AllowAmbiguousTypes #-} | |
| {-# LANGUAGE ConstraintKinds #-} | |
| {-# LANGUAGE DataKinds #-} | |
| {-# LANGUAGE ExplicitForAll #-} | |
| {-# LANGUAGE FlexibleContexts #-} | |
| {-# LANGUAGE FlexibleInstances #-} | |
| {-# LANGUAGE FunctionalDependencies #-} | |
| {-# LANGUAGE GADTs #-} | |
| {-# LANGUAGE KindSignatures #-} | |
| {-# LANGUAGE MultiParamTypeClasses #-} |
| -- https://www.reddit.com/r/haskell/comments/dywiqx/question_about_disallowing_impossible_states/ | |
| -- and influenced by https://gist.github.com/gelisam/3dd536882296f672d3bcdfd88c98ac10 | |
| {-# LANGUAGE DataKinds, GADTs, PolyKinds, TypeFamilies #-} | |
| module Spells where | |
| data Nat where | |
| Zero :: Nat | |
| Suc :: Nat -> Nat |
I hereby claim:
To claim this, I am signing this object:
| {-# LANGUAGE AllowAmbiguousTypes #-} | |
| {-# LANGUAGE ConstraintKinds #-} | |
| {-# LANGUAGE DeriveGeneric #-} | |
| {-# LANGUAGE FlexibleContexts #-} | |
| {-# LANGUAGE FlexibleInstances #-} | |
| {-# LANGUAGE KindSignatures #-} | |
| {-# LANGUAGE MultiParamTypeClasses #-} | |
| {-# LANGUAGE PolyKinds #-} | |
| {-# LANGUAGE ScopedTypeVariables #-} | |
| {-# LANGUAGE TypeApplications #-} |
| {-# LANGUAGE AllowAmbiguousTypes #-} | |
| {-# LANGUAGE ConstraintKinds #-} | |
| {-# LANGUAGE DataKinds #-} | |
| {-# LANGUAGE FlexibleContexts #-} | |
| {-# LANGUAGE FlexibleInstances #-} | |
| {-# LANGUAGE GADTs #-} | |
| {-# LANGUAGE MultiParamTypeClasses #-} | |
| {-# LANGUAGE PolyKinds #-} | |
| {-# LANGUAGE RankNTypes #-} | |
| {-# LANGUAGE ScopedTypeVariables #-} |