This repository was archived by the owner on Apr 1, 2025. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -28,7 +28,7 @@ import qualified Data.IntSet as IntSet
2828import Data.Loc
2929import qualified Data.Map as Map
3030import Data.Monoid (Alt (.. ))
31- import Data.Name hiding ( fresh )
31+ import Data.Name
3232import Data.Term
3333import Data.Text (Text , pack )
3434import Prelude hiding (fail )
Original file line number Diff line number Diff line change @@ -14,12 +14,8 @@ module Data.Name
1414, needsQuotation
1515, encloseIf
1616, Gensym (.. )
17- , fresh
18- , namespace
19- , Naming (.. )
2017) where
2118
22- import Control.Effect.Carrier
2319import qualified Data.Char as Char
2420import Data.HashSet (HashSet )
2521import qualified Data.HashSet as HashSet
@@ -106,24 +102,3 @@ instance Pretty Gensym where
106102 pretty (Gensym _ i) = pretty (alphabet !! r : if q > 0 then show q else " " )
107103 where (q, r) = i `divMod` 26
108104 alphabet = [' a' .. ' z' ]
109-
110- fresh :: (Carrier sig m , Member Naming sig ) => m Gensym
111- fresh = send (Fresh pure )
112-
113- namespace :: (Carrier sig m , Member Naming sig ) => Text -> m a -> m a
114- namespace s m = send (Namespace s m pure )
115-
116-
117- data Naming m k
118- = Fresh (Gensym -> m k )
119- | forall a . Namespace Text (m a ) (a -> m k )
120-
121- deriving instance Functor m => Functor (Naming m )
122-
123- instance HFunctor Naming where
124- hmap f (Fresh k) = Fresh (f . k)
125- hmap f (Namespace s m k) = Namespace s (f m) (f . k)
126-
127- instance Effect Naming where
128- handle state handler (Fresh k) = Fresh (handler . (<$ state) . k)
129- handle state handler (Namespace s m k) = Namespace s (handler (m <$ state)) (handler . fmap k)
You can’t perform that action at this time.
0 commit comments