Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.

Commit e9968ca

Browse files
committed
Use Text for gensym’d names.
1 parent 06e3c7f commit e9968ca

File tree

5 files changed

+12
-12
lines changed

5 files changed

+12
-12
lines changed

semantic-core/src/Analysis/Concrete.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -202,8 +202,8 @@ addressStyle heap = (G.defaultStyle vertex) { G.edgeAttributes }
202202
fromName (User s) = s
203203
fromName (Gen sym) = fromGensym sym
204204
fromName (Path p) = pack $ show p
205-
fromGensym (Root s) = pack s
206-
fromGensym (ss :/ (s, i)) = fromGensym ss <> "." <> pack s <> pack (show i)
205+
fromGensym (Root s) = s
206+
fromGensym (ss :/ (s, i)) = fromGensym ss <> "." <> s <> pack (show i)
207207

208208
data EdgeType
209209
= Edge Core.Edge

semantic-core/src/Analysis/FlowInsensitive.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{-# LANGUAGE FlexibleContexts, ScopedTypeVariables #-}
1+
{-# LANGUAGE FlexibleContexts, OverloadedStrings, ScopedTypeVariables #-}
22
module Analysis.FlowInsensitive
33
( Heap
44
, FrameId(..)

semantic-core/src/Analysis/ImportGraph.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{-# LANGUAGE FlexibleContexts, RecordWildCards #-}
1+
{-# LANGUAGE FlexibleContexts, OverloadedStrings, RecordWildCards #-}
22
module Analysis.ImportGraph
33
( ImportGraph
44
, importGraph

semantic-core/src/Analysis/Typecheck.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
{-# LANGUAGE DeriveFunctor, FlexibleContexts, FlexibleInstances, LambdaCase, RecordWildCards, ScopedTypeVariables, TypeApplications #-}
1+
{-# LANGUAGE DeriveFunctor, FlexibleContexts, FlexibleInstances, LambdaCase, OverloadedStrings, RecordWildCards, ScopedTypeVariables, TypeApplications #-}
22
module Analysis.Typecheck
33
( Monotype (..)
44
, Meta

semantic-core/src/Data/Name.hs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,30 +77,30 @@ isSimpleCharacter = \case
7777
c -> Char.isAlphaNum c
7878

7979
data Gensym
80-
= Root String
81-
| Gensym :/ (String, Int)
80+
= Root Text
81+
| Gensym :/ (Text, Int)
8282
deriving (Eq, Ord, Show)
8383

8484
instance Pretty Gensym where
8585
pretty = \case
8686
Root s -> pretty s
8787
p :/ (n, x) -> Pretty.hcat [pretty p, "/", pretty n, "^", pretty x]
8888

89-
(//) :: Gensym -> String -> Gensym
89+
(//) :: Gensym -> Text -> Gensym
9090
root // s = root :/ (s, 0)
9191

9292
infixl 6 //
9393

94-
gensym :: (Carrier sig m, Member Naming sig) => String -> m Gensym
94+
gensym :: (Carrier sig m, Member Naming sig) => Text -> m Gensym
9595
gensym s = send (Gensym s pure)
9696

97-
namespace :: (Carrier sig m, Member Naming sig) => String -> m a -> m a
97+
namespace :: (Carrier sig m, Member Naming sig) => Text -> m a -> m a
9898
namespace s m = send (Namespace s m pure)
9999

100100

101101
data Naming m k
102-
= Gensym String (Gensym -> k)
103-
| forall a . Namespace String (m a) (a -> k)
102+
= Gensym Text (Gensym -> k)
103+
| forall a . Namespace Text (m a) (a -> k)
104104

105105
deriving instance Functor (Naming m)
106106

0 commit comments

Comments
 (0)