git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Remove Data/Typeable deriving
commitd1a956da45c3eb49503837480df4fbea29e85d3b authorGary Burgess <gary.burgess@gmail.com> dateThu 31 Dec 2015, 21:08 (11 years ago) parent8ca3d1e
15 files changed+73−170
src/Language/PureScript/AST/Binders.hs+2−5 src/Language/PureScript/AST/Declarations.hs+11−10 src/Language/PureScript/AST/Operators.hs+7−18 src/Language/PureScript/AST/SourcePos.hs+5−18 src/Language/PureScript/CodeGen/JS/AST.hs+6−18 src/Language/PureScript/Comments.hs+3−17 src/Language/PureScript/CoreFn/Binders.hs+2−4 src/Language/PureScript/CoreFn/Expr.hs+6−6 src/Language/PureScript/CoreFn/Literals.hs+5−18 src/Language/PureScript/CoreFn/Meta.hs+6−19 src/Language/PureScript/Environment.hs+5−5 src/Language/PureScript/Kinds.hs+2−17 src/Language/PureScript/Names.hs+7−6 src/Language/PureScript/TypeClassDictionaries.hs+2−5 src/Language/PureScript/Types.hs+4−4
src/Language/PureScript/AST/Binders.hs+2−5
@@ -1,12 +1,8 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
2−
31-- |
42-- Case binders
53--
64module Language.PureScript.AST.Binders where
75
8−import qualified Data.Data as D
9−
106import Language.PureScript.AST.SourcePos
117import Language.PureScript.Names
128import Language.PureScript.Comments
@@ -63,7 +59,8 @@ data Binder
6359 -- |
6460 -- A binder with a type annotation
6561 --
66− | TypedBinder Type Binder deriving (Show, Read, Eq, D.Data, D.Typeable)
62+ | TypedBinder Type Binder
63+ deriving (Show, Read, Eq)
6764
6865-- |
6966-- Collect all names introduced in binders in an expression
src/Language/PureScript/AST/Declarations.hs+11−10
@@ -1,4 +1,3 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE ScopedTypeVariables #-}
32{-# LANGUAGE TemplateHaskell #-}
43{-# LANGUAGE LambdaCase #-}
@@ -15,7 +14,6 @@ import Data.Aeson.TH
1514import Data.List (nub, (\\))
1615import Data.Maybe (mapMaybe)
1716
18−import qualified Data.Data as D
1917import qualified Data.Map as M
2018
2119import Control.Monad.Identity
@@ -35,7 +33,8 @@ import Language.PureScript.Environment
3533-- a list of declarations, and a list of the declarations that are
3634-- explicitly exported. If the export list is Nothing, everything is exported.
3735--
38−data Module = Module SourceSpan [Comment] ModuleName [Declaration] (Maybe [DeclarationRef]) deriving (Show, Read, D.Data, D.Typeable)
36+data Module = Module SourceSpan [Comment] ModuleName [Declaration] (Maybe [DeclarationRef])
37+ deriving (Show, Read)
3938
4039-- | Return a module's name.
4140getModuleName :: Module -> ModuleName
@@ -85,7 +84,7 @@ data DeclarationRef
8584 -- A declaration reference with source position information
8685 --
8786 | PositionedDeclarationRef SourceSpan [Comment] DeclarationRef
88− deriving (Show, Read, D.Data, D.Typeable)
87+ deriving (Show, Read)
8988
9089instance Eq DeclarationRef where
9190 (TypeRef name dctors) == (TypeRef name' dctors') = name == name' && dctors == dctors'
@@ -141,7 +140,7 @@ data ImportDeclarationType
141140 -- An import with a list of references to hide: `import M hiding (foo)`
142141 --
143142 | Hiding [DeclarationRef]
144− deriving (Eq, Show, Read, D.Data, D.Typeable)
143+ deriving (Eq, Show, Read)
145144
146145isImplicit :: ImportDeclarationType -> Bool
147146isImplicit Implicit = True
@@ -205,7 +204,7 @@ data Declaration
205204 -- A declaration with source position information
206205 --
207206 | PositionedDeclaration SourceSpan [Comment] Declaration
208− deriving (Show, Read, D.Data, D.Typeable)
207+ deriving (Show, Read)
209208
210209-- | The members of a type class instance declaration
211210data TypeInstanceBody
@@ -213,7 +212,7 @@ data TypeInstanceBody
213212 = DerivedInstance
214213 -- | This is a regular (explicit) instance
215214 | ExplicitInstance [Declaration]
216− deriving (Show, Read, D.Data, D.Typeable)
215+ deriving (Show, Read)
217216
218217mapTypeInstanceBody :: ([Declaration] -> [Declaration]) -> TypeInstanceBody -> TypeInstanceBody
219218mapTypeInstanceBody f = runIdentity . traverseTypeInstanceBody (Identity . f)
@@ -432,7 +431,8 @@ data Expr
432431 -- |
433432 -- A value with source position information
434433 --
435− | PositionedValue SourceSpan [Comment] Expr deriving (Show, Read, D.Data, D.Typeable)
434+ | PositionedValue SourceSpan [Comment] Expr
435+ deriving (Show, Read)
436436
437437-- |
438438-- An alternative in a case statement
@@ -446,7 +446,7 @@ data CaseAlternative = CaseAlternative
446446 -- The result expression or a collect of guarded expressions
447447 --
448448 , caseAlternativeResult :: Either [(Guard, Expr)] Expr
449− } deriving (Show, Read, D.Data, D.Typeable)
449+ } deriving (Show, Read)
450450
451451-- |
452452-- A statement in a do-notation block
@@ -467,7 +467,8 @@ data DoNotationElement
467467 -- |
468468 -- A do notation element with source position information
469469 --
470− | PositionedDoNotationElement SourceSpan [Comment] DoNotationElement deriving (Show, Read, D.Data, D.Typeable)
470+ | PositionedDoNotationElement SourceSpan [Comment] DoNotationElement
471+ deriving (Show, Read)
471472
472473$(deriveJSON (defaultOptions { sumEncoding = ObjectWithSingleField }) ''DeclarationRef)
473474$(deriveJSON (defaultOptions { sumEncoding = ObjectWithSingleField }) ''ImportDeclarationType)
src/Language/PureScript/AST/Operators.hs+7−18
@@ -1,23 +1,10 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.AST.Operators
4−-- Copyright : (c) 2013-14 Phil Freeman, (c) 2014 Gary Burgess, and other contributors
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>
8−-- Stability : experimental
9−-- Portability :
10−--
11−-- | Operators fixity and associativity
12−--
13−-----------------------------------------------------------------------------
14−
151{-# LANGUAGE OverloadedStrings #-}
16−{-# LANGUAGE DeriveDataTypeable #-}
172
3+-- |
4+-- Operators fixity and associativity
5+--
186module Language.PureScript.AST.Operators where
197
20−import qualified Data.Data as D
218import Data.Aeson ((.=))
229import qualified Data.Aeson as A
2310
@@ -31,7 +18,8 @@ type Precedence = Integer
3118-- |
3219-- Associativity for infix operators
3320--
34−data Associativity = Infixl | Infixr | Infix deriving (Show, Read, Eq, Ord, D.Data, D.Typeable)
21+data Associativity = Infixl | Infixr | Infix
22+ deriving (Show, Read, Eq, Ord)
3523
3624showAssoc :: Associativity -> String
3725showAssoc Infixl = "infixl"
@@ -53,7 +41,8 @@ instance A.FromJSON Associativity where
5341-- |
5442-- Fixity data for infix operators
5543--
56−data Fixity = Fixity Associativity Precedence deriving (Show, Read, Eq, Ord, D.Data, D.Typeable)
44+data Fixity = Fixity Associativity Precedence
45+ deriving (Show, Read, Eq, Ord)
5746
5847instance A.ToJSON Fixity where
5948 toJSON (Fixity associativity precedence) =
src/Language/PureScript/AST/SourcePos.hs+5−18
@@ -1,28 +1,15 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.AST.SourcePos
4−-- Copyright : (c) 2013-15 Phil Freeman, (c) 2014-15 Gary Burgess
5−-- License : MIT (http://opensource.org/licenses/MIT)
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>
8−-- Stability : experimental
9−-- Portability :
10−--
11−-- | Source position information
12−--
13−-----------------------------------------------------------------------------
14−
15−{-# LANGUAGE DeriveDataTypeable #-}
161{-# LANGUAGE ScopedTypeVariables #-}
172{-# LANGUAGE RecordWildCards #-}
183{-# LANGUAGE OverloadedStrings #-}
194
5+-- |
6+-- Source position information
7+--
208module Language.PureScript.AST.SourcePos where
219
2210import Prelude ()
2311import Prelude.Compat
2412
25−import qualified Data.Data as D
2613import Data.Aeson ((.=), (.:))
2714import qualified Data.Aeson as A
2815
@@ -38,7 +25,7 @@ data SourcePos = SourcePos
3825 -- Column number
3926 --
4027 , sourcePosColumn :: Int
41− } deriving (Show, Read, Eq, Ord, D.Data, D.Typeable)
28+ } deriving (Show, Read, Eq, Ord)
4229
4330displaySourcePos :: SourcePos -> String
4431displaySourcePos sp =
@@ -66,7 +53,7 @@ data SourceSpan = SourceSpan
6653 -- End of the span
6754 --
6855 , spanEnd :: SourcePos
69− } deriving (Show, Read, Eq, Ord, D.Data, D.Typeable)
56+ } deriving (Show, Read, Eq, Ord)
7057
7158displayStartEndPos :: SourceSpan -> String
7259displayStartEndPos sp =
src/Language/PureScript/CodeGen/JS/AST.hs+6−18
@@ -1,27 +1,12 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.CodeGen.JS.AST
4−-- Copyright : (c) Phil Freeman 2013
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>
8−-- Stability : experimental
9−-- Portability :
10−--
111-- |
122-- Data types for the intermediate simplified-Javascript AST
133--
14−-----------------------------------------------------------------------------
15−
16−{-# LANGUAGE DeriveDataTypeable #-}
17−
184module Language.PureScript.CodeGen.JS.AST where
195
206import Prelude ()
217import Prelude.Compat
228
239import Control.Monad.Identity
24−import Data.Data
2510
2611import Language.PureScript.Comments
2712import Language.PureScript.Traversals
@@ -49,7 +34,8 @@ data UnaryOperator
4934 -- |
5035 -- Constructor
5136 --
52− | JSNew deriving (Show, Read, Eq, Data, Typeable)
37+ | JSNew
38+ deriving (Show, Read, Eq)
5339
5440-- |
5541-- Built-in binary operators
@@ -130,7 +116,8 @@ data BinaryOperator
130116 -- |
131117 -- Bitwise right shift with zero-fill
132118 --
133− | ZeroFillShiftRight deriving (Show, Read, Eq, Data, Typeable)
119+ | ZeroFillShiftRight
120+ deriving (Show, Read, Eq)
134121
135122-- |
136123-- Data type for simplified Javascript expressions
@@ -251,7 +238,8 @@ data JS
251238 -- |
252239 -- Commented Javascript
253240 --
254− | JSComment [Comment] JS deriving (Show, Read, Eq, Data, Typeable)
241+ | JSComment [Comment] JS
242+ deriving (Show, Read, Eq)
255243
256244--
257245-- Traversals
src/Language/PureScript/Comments.hs+3−17
@@ -1,29 +1,15 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.Parser.Comments
4−-- Copyright : (c) Phil Freeman 2015
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>
8−-- Stability : experimental
9−-- Portability :
10−--
1+{-# LANGUAGE TemplateHaskell #-}
2+
113-- |
124-- Defines the types of source code comments
135--
14−-----------------------------------------------------------------------------
15−
16−{-# LANGUAGE DeriveDataTypeable #-}
17−{-# LANGUAGE TemplateHaskell #-}
18−
196module Language.PureScript.Comments where
207
218import Data.Aeson.TH
22−import qualified Data.Data as D
239
2410data Comment
2511 = LineComment String
2612 | BlockComment String
27− deriving (Show, Read, Eq, Ord, D.Data, D.Typeable)
13+ deriving (Show, Read, Eq, Ord)
2814
2915$(deriveJSON (defaultOptions { sumEncoding = ObjectWithSingleField }) ''Comment)
src/Language/PureScript/CoreFn/Binders.hs+2−4
@@ -1,4 +1,3 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE DeriveFunctor #-}
32
43-- |
@@ -6,8 +5,6 @@
65--
76module Language.PureScript.CoreFn.Binders where
87
9−import qualified Data.Data as D
10−
118import Language.PureScript.CoreFn.Literals
129import Language.PureScript.Names
1310
@@ -34,4 +31,5 @@ data Binder a
3431 -- |
3532 -- A binder which binds its input to an identifier
3633 --
37− | NamedBinder a Ident (Binder a) deriving (Show, Read, D.Data, D.Typeable, Functor)
34+ | NamedBinder a Ident (Binder a)
35+ deriving (Show, Read, Functor)
src/Language/PureScript/CoreFn/Expr.hs+6−6
@@ -1,4 +1,3 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE DeriveFunctor #-}
32
43-- |
@@ -8,8 +7,6 @@ module Language.PureScript.CoreFn.Expr where
87
98import Control.Arrow ((***))
109
11−import qualified Data.Data as D
12−
1310import Language.PureScript.CoreFn.Binders
1411import Language.PureScript.CoreFn.Literals
1512import Language.PureScript.Names
@@ -53,7 +50,8 @@ data Expr a
5350 -- |
5451 -- A let binding
5552 --
56− | Let a [Bind a] (Expr a) deriving (Show, Read, D.Data, D.Typeable, Functor)
53+ | Let a [Bind a] (Expr a)
54+ deriving (Show, Read, Functor)
5755
5856-- |
5957-- A let or module binding.
@@ -66,7 +64,8 @@ data Bind a
6664 -- |
6765 -- Mutually recursive binding group for several values
6866 --
69− | Rec [(Ident, Expr a)] deriving (Show, Read, D.Data, D.Typeable, Functor)
67+ | Rec [(Ident, Expr a)]
68+ deriving (Show, Read, Functor)
7069
7170-- |
7271-- A guard is just a boolean-valued expression that appears alongside a set of binders
@@ -85,7 +84,8 @@ data CaseAlternative a = CaseAlternative
8584 -- The result expression or a collect of guarded expressions
8685 --
8786 , caseAlternativeResult :: Either [(Guard a, Expr a)] (Expr a)
88− } deriving (Show, Read, D.Data, D.Typeable)
87+ }
88+ deriving (Show, Read)
8989
9090instance Functor CaseAlternative where
9191
src/Language/PureScript/CoreFn/Literals.hs+5−18
@@ -1,24 +1,10 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.CoreFn.Literals
4−-- Copyright : (c) 2013-14 Phil Freeman, (c) 2014 Gary Burgess, and other contributors
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>, Gary Burgess <gary.burgess@gmail.com>
8−-- Stability : experimental
9−-- Portability :
10−--
11−-- | The core functional representation for literal values.
12−--
13−-----------------------------------------------------------------------------
14−
15−{-# LANGUAGE DeriveDataTypeable #-}
161{-# LANGUAGE DeriveFunctor #-}
172
3+-- |
4+-- The core functional representation for literal values.
5+--
186module Language.PureScript.CoreFn.Literals where
197
20−import qualified Data.Data as D
21−
228-- |
239-- Data type for literal values. Parameterised so it can be used for Exprs and
2410-- Binders.
@@ -47,4 +33,5 @@ data Literal a
4733 -- |
4834 -- An object literal
4935 --
50− | ObjectLiteral [(String, a)] deriving (Show, Read, D.Data, D.Typeable, Functor)
36+ | ObjectLiteral [(String, a)]
37+ deriving (Show, Read, Functor)
src/Language/PureScript/CoreFn/Meta.hs+6−19
@@ -1,23 +1,8 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.CoreFn.Meta
4−-- Copyright : (c) 2013-14 Phil Freeman, (c) 2014 Gary Burgess, and other contributors
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>, Gary Burgess <gary.burgess@gmail.com>
8−-- Stability : experimental
9−-- Portability :
10−--
11−-- | Metadata annotations for core functional representation
1+-- |
2+-- Metadata annotations for core functional representation
123--
13−-----------------------------------------------------------------------------
14−
15−{-# LANGUAGE DeriveDataTypeable #-}
16−
174module Language.PureScript.CoreFn.Meta where
185
19−import qualified Data.Data as D
20−
216import Language.PureScript.Names
227
238-- |
@@ -39,7 +24,8 @@ data Meta
3924 -- |
4025 -- The contained reference is for a foreign member
4126 --
42− | IsForeign deriving (Show, Read, D.Data, D.Typeable)
27+ | IsForeign
28+ deriving (Show, Read)
4329
4430-- |
4531-- Data constructor metadata
@@ -52,4 +38,5 @@ data ConstructorType
5238 -- |
5339 -- The constructor is for a type with multiple construcors
5440 --
55− | SumType deriving (Show, Read, D.Data, D.Typeable)
41+ | SumType
42+ deriving (Show, Read)
src/Language/PureScript/Environment.hs+5−5
@@ -1,10 +1,8 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE OverloadedStrings #-}
32{-# LANGUAGE TemplateHaskell #-}
43
54module Language.PureScript.Environment where
65
7−import Data.Data
86import Data.Maybe (fromMaybe)
97import Data.Aeson.TH
108import qualified Data.Map as M
@@ -84,7 +82,8 @@ data NameKind
8482 -- |
8583 -- A name for member introduced by foreign import
8684 --
87− | External deriving (Show, Read, Eq, Data, Typeable)
85+ | External
86+ deriving (Show, Read, Eq)
8887
8988-- |
9089-- The kinds of a type
@@ -110,7 +109,7 @@ data TypeKind
110109 -- A scoped type variable
111110 --
112111 | ScopedTypeVar
113− deriving (Show, Read, Eq, Data, Typeable)
112+ deriving (Show, Read, Eq)
114113
115114-- |
116115-- The type ('data' or 'newtype') of a data type declaration
@@ -123,7 +122,8 @@ data DataDeclType
123122 -- |
124123 -- A newtype constructor
125124 --
126− | Newtype deriving (Show, Read, Eq, Ord, Data, Typeable)
125+ | Newtype
126+ deriving (Show, Read, Eq, Ord)
127127
128128showDataDeclType :: DataDeclType -> String
129129showDataDeclType Data = "data"
src/Language/PureScript/Kinds.hs+2−17
@@ -1,18 +1,3 @@
1−-----------------------------------------------------------------------------
2−--
3−-- Module : Language.PureScript.Kinds
4−-- Copyright : (c) Phil Freeman 2013
5−-- License : MIT
6−--
7−-- Maintainer : Phil Freeman <paf31@cantab.net>
8−-- Stability : experimental
9−-- Portability :
10−--
11−-- |
12−--
13−-----------------------------------------------------------------------------
14−
15−{-# LANGUAGE DeriveDataTypeable #-}
161{-# LANGUAGE TemplateHaskell #-}
172
183module Language.PureScript.Kinds where
@@ -20,7 +5,6 @@ module Language.PureScript.Kinds where
205import Prelude ()
216import Prelude.Compat
227
23−import Data.Data
248import qualified Data.Aeson.TH as A
259
2610-- |
@@ -46,7 +30,8 @@ data Kind
4630 -- |
4731 -- Function kinds
4832 --
49− | FunKind Kind Kind deriving (Show, Read, Eq, Ord, Data, Typeable)
33+ | FunKind Kind Kind
34+ deriving (Show, Read, Eq, Ord)
5035
5136$(A.deriveJSON A.defaultOptions ''Kind)
5237
src/Language/PureScript/Names.hs+7−6
@@ -1,4 +1,3 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE DeriveFunctor #-}
32{-# LANGUAGE TemplateHaskell #-}
43{-# LANGUAGE EmptyDataDecls #-}
@@ -13,7 +12,6 @@ import Control.Monad (liftM)
1312import Control.Monad.Supply.Class
1413
1514import Data.List
16−import Data.Data
1715import Data.Aeson
1816import Data.Aeson.TH
1917
@@ -32,7 +30,8 @@ data Ident
3230 -- |
3331 -- A generated name for an identifier
3432 --
35− | GenIdent (Maybe String) Integer deriving (Show, Read, Eq, Ord, Data, Typeable)
33+ | GenIdent (Maybe String) Integer
34+ deriving (Show, Read, Eq, Ord)
3635
3736runIdent :: Ident -> String
3837runIdent (Ident i) = i
@@ -54,7 +53,7 @@ freshIdent' = liftM (GenIdent Nothing) fresh
5453-- Proper names, i.e. capitalized names for e.g. module names, type//data constructors.
5554--
5655newtype ProperName (a :: ProperNameType) = ProperName { runProperName :: String }
57− deriving (Show, Read, Eq, Ord, Data, Typeable)
56+ deriving (Show, Read, Eq, Ord)
5857
5958instance ToJSON (ProperName a) where
6059 toJSON = toJSON . runProperName
@@ -78,7 +77,8 @@ coerceProperName = ProperName . runProperName
7877-- |
7978-- Module names
8079--
81−newtype ModuleName = ModuleName [ProperName 'Namespace] deriving (Show, Read, Eq, Ord, Data, Typeable)
80+newtype ModuleName = ModuleName [ProperName 'Namespace]
81+ deriving (Show, Read, Eq, Ord)
8282
8383runModuleName :: ModuleName -> String
8484runModuleName (ModuleName pns) = intercalate "." (runProperName `map` pns)
@@ -94,7 +94,8 @@ moduleNameFromString = ModuleName . splitProperNames
9494-- |
9595-- A qualified name, i.e. a name with an optional module name
9696--
97−data Qualified a = Qualified (Maybe ModuleName) a deriving (Show, Read, Eq, Ord, Data, Typeable, Functor)
97+data Qualified a = Qualified (Maybe ModuleName) a
98+ deriving (Show, Read, Eq, Ord, Functor)
9899
99100showQualified :: (a -> String) -> Qualified a -> String
100101showQualified f (Qualified Nothing a) = f a
src/Language/PureScript/TypeClassDictionaries.hs+2−5
@@ -1,9 +1,5 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
2−
31module Language.PureScript.TypeClassDictionaries where
42
5−import Data.Data
6−
73import Language.PureScript.Names
84import Language.PureScript.Types
95
@@ -22,7 +18,8 @@ data TypeClassDictionaryInScope
2218 , tcdInstanceTypes :: [Type]
2319 -- | Type class dependencies which must be satisfied to construct this dictionary
2420 , tcdDependencies :: Maybe [Constraint]
25− } deriving (Show, Read, Data, Typeable)
21+ }
22+ deriving (Show, Read)
2623
2724-- |
2825-- A simplified representation of expressions which are used to represent type
src/Language/PureScript/Types.hs+4−4
@@ -1,4 +1,3 @@
1−{-# LANGUAGE DeriveDataTypeable #-}
21{-# LANGUAGE GeneralizedNewtypeDeriving #-}
32{-# LANGUAGE TemplateHaskell #-}
43
@@ -10,7 +9,6 @@ module Language.PureScript.Types where
109import Prelude ()
1110import Prelude.Compat
1211
13−import Data.Data
1412import Data.List (nub)
1513import Data.Maybe (fromMaybe)
1614import qualified Data.Aeson as A
@@ -27,7 +25,8 @@ import Language.PureScript.AST.SourcePos
2725-- |
2826-- An identifier for the scope of a skolem variable
2927--
30−newtype SkolemScope = SkolemScope { runSkolemScope :: Int } deriving (Show, Read, Eq, Ord, Data, Typeable, A.ToJSON, A.FromJSON)
28+newtype SkolemScope = SkolemScope { runSkolemScope :: Int }
29+ deriving (Show, Read, Eq, Ord, A.ToJSON, A.FromJSON)
3130
3231-- |
3332-- The type of types
@@ -89,7 +88,8 @@ data Type
8988 -- |
9089 -- A placeholder used in pretty printing
9190 --
92− | PrettyPrintForAll [String] Type deriving (Show, Read,Eq, Ord, Data, Typeable)
91+ | PrettyPrintForAll [String] Type
92+ deriving (Show, Read, Eq, Ord)
9393
9494-- |
9595-- A typeclass constraint