packages feed

lr-acts 0.1.1 → 0.2

raw patch · 5 files changed

+164/−39 lines, 5 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Data.Act.Act: [unactCoerce] :: ActSelf' x -> x
- Data.Act.Act: [unactId] :: ActTrivial x -> x
+ Data.Act.Act: [unactSelf'] :: ActSelf' x -> x
+ Data.Act.Act: [unactTrivial] :: ActTrivial x -> x
+ Data.Semidirect.Lazy: lfromActee :: Monoid s => x -> LSemidirect x s
+ Data.Semidirect.Lazy: lfromActor :: Monoid x => s -> LSemidirect x s
+ Data.Semidirect.Lazy: lreset :: Monoid s => LSemidirect x s -> LSemidirect x s
+ Data.Semidirect.Lazy: lvacate :: Monoid x => LSemidirect x s -> LSemidirect x s
+ Data.Semidirect.Lazy: rfromActee :: Monoid s => x -> RSemidirect x s
+ Data.Semidirect.Lazy: rfromActor :: Monoid x => s -> RSemidirect x s
+ Data.Semidirect.Lazy: rreset :: Monoid s => RSemidirect x s -> RSemidirect x s
+ Data.Semidirect.Lazy: rvacate :: Monoid x => RSemidirect x s -> RSemidirect x s
+ Data.Semidirect.Strict: lfromActee :: Monoid s => x -> LSemidirect x s
+ Data.Semidirect.Strict: lfromActor :: Monoid x => s -> LSemidirect x s
+ Data.Semidirect.Strict: lreset :: Monoid s => LSemidirect x s -> LSemidirect x s
+ Data.Semidirect.Strict: lvacate :: Monoid x => LSemidirect x s -> LSemidirect x s
+ Data.Semidirect.Strict: rfromActee :: Monoid s => x -> RSemidirect x s
+ Data.Semidirect.Strict: rfromActor :: Monoid x => s -> RSemidirect x s
+ Data.Semidirect.Strict: rreset :: Monoid s => RSemidirect x s -> RSemidirect x s
+ Data.Semidirect.Strict: rvacate :: Monoid x => RSemidirect x s -> RSemidirect x s

Files

CHANGELOG.md view
@@ -29,3 +29,13 @@ ## 0.1.1 - 2025-12-01
 
 - Fix benchmark
+
+## 0.2 - 2025-12-11
+
+- Rename :
+  - embedActor -> fromActor
+  - embedActee -> fromActee
+  - erase -> vacate
+  - forget -> reset
+  - unactCoerce -> unactSelf'
+  - unactId -> unactTrivial
lr-acts.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack  name:           lr-acts-version:        0.1.1+version:        0.2 synopsis:       Left and right actions, semidirect products and torsors description:    Please see the README on GitHub at <https://github.com/AliceRixte/lr-acts/blob/main/README.md> category:       Algebra, Math, Data
src/Data/Act/Act.hs view
@@ -330,7 +330,7 @@ -- >>> Duration 2 <>$ Seconds 3
 -- Seconds 5.0
 --
-newtype ActSelf' x = ActSelf' {unactCoerce :: x}
+newtype ActSelf' x = ActSelf' {unactSelf' :: x}
   deriving stock (Show, Eq)
   deriving newtype (Semigroup, Monoid, Group)
 
@@ -358,7 +358,7 @@ -- >>> ActTrivial "Hello !" <>$ "Hi !"
 -- " Hi !"
 
-newtype ActTrivial x = ActTrivial  {unactId :: x}
+newtype ActTrivial x = ActTrivial  {unactTrivial :: x}
   deriving stock (Show, Eq)
   deriving newtype (Semigroup, Monoid, Group)
 
src/Data/Semidirect/Lazy.hs view
@@ -10,7 +10,7 @@ --
 -- Semidirect products for left and right actions.
 --
--- For a strict version, see @'Data.Semidirect.Strict'@.
+-- For a strict version, see "Data.Semidirect.Strict".
 --
 -- [Usage :]
 --
@@ -32,18 +32,26 @@ -----------------------------------------------------------------------------
 
 module Data.Semidirect.Lazy
-       ( LSemidirect (..)
-       , lerase
-       , lforget
-       , lembedActee
-       , lembedActor
-       , lfromPair
-        , RSemidirect (..)
-        , rerase
-        , rforget
-        , rembedActee
-        , rembedActor
-        , rfromPair
+      ( LSemidirect (..)
+      , lvacate
+      , lerase
+      , lreset
+      , lforget
+      , lfromActor
+      , lembedActee
+      , lfromActee
+      , lembedActor
+      , lfromPair
+      , RSemidirect (..)
+      , rreset
+      , rerase
+      , rvacate
+      , rforget
+      , rfromActee
+      , rembedActee
+      , rfromActor
+      , rembedActor
+      , rfromPair
        ) where
 
 import Data.Bifunctor
@@ -72,22 +80,48 @@   first f a = a {lactee = f (lactee a)}
   second = fmap
 
+
+-- | Replace the actee with @mempty@.
+lvacate :: Monoid x => LSemidirect x s -> LSemidirect x s
+lvacate a = a {lactee = mempty}
+
 -- |  Erases the actee (i.e. replace it with @mempty@).
 lerase :: Monoid x => LSemidirect x s -> LSemidirect x s
 lerase a = a {lactee = mempty}
 
+{-# DEPRECATED lerase "Use lvacate instead." #-}
+
+-- | Replace the actor with @mempty@.
+lreset :: Monoid s => LSemidirect x s -> LSemidirect x s
+lreset a = a {lactor = mempty}
+
 -- |  Forget the actor (i.e. replace it with @mempty@).
 lforget :: Monoid s => LSemidirect x s -> LSemidirect x s
 lforget a =a {lactor = mempty}
 
+{-# DEPRECATED lforget "Use lreset instead." #-}
+
+
 -- |  Make a semidirect pair whose actee is @mempty@.
+lfromActor :: Monoid x => s -> LSemidirect x s
+lfromActor s = LPair mempty s
+
+-- |  Make a semidirect pair whose actee is @mempty@.
 lembedActor :: Monoid x => s -> LSemidirect x s
 lembedActor s = LPair mempty s
 
+{-# DEPRECATED lembedActor "Use lfromActor instead." #-}
+
 -- |  Make a semidirect pair whose actor is @mempty@.
+lfromActee :: Monoid s => x -> LSemidirect x s
+lfromActee x = LPair x mempty
+
+-- |  Make a semidirect pair whose actor is @mempty@.
 lembedActee :: Monoid s => x -> LSemidirect x s
 lembedActee x = LPair x mempty
 
+{-# DEPRECATED lembedActee "Use lfromActee instead." #-}
+
 -- | Converts a pair into a semidirect product element.
 lfromPair :: (x,s) -> LSemidirect x s
 lfromPair (x,s) = LPair x s
@@ -118,21 +152,45 @@   first f a = a {ractee = f (ractee a)}
   second = fmap
 
+-- | Replace the actee with @mempty@.
+rvacate :: Monoid x => RSemidirect x s -> RSemidirect x s
+rvacate a = a {ractee = mempty}
+
 -- |  Erase the actee (i.e. replace it with @mempty@).
 rerase :: Monoid x => RSemidirect x s -> RSemidirect x s
 rerase a = a {ractee = mempty}
 
+{-# DEPRECATED rerase "Use rvacate instead." #-}
+
+-- | Replace the actor with @mempty@.
+rreset :: Monoid s => RSemidirect x s -> RSemidirect x s
+rreset a = a {ractor = mempty}
+
 -- |  Forget the actor (i.e. replace it with @mempty@).
 rforget :: Monoid s => RSemidirect x s -> RSemidirect x s
 rforget a = a {ractor = mempty}
 
+{-# DEPRECATED rforget "Use rreset instead." #-}
+
 -- |  Make a semidirect pair whose actee is @mempty@.
+rfromActor :: Monoid x => s -> RSemidirect x s
+rfromActor s = RPair mempty s
+
+-- |  Make a semidirect pair whose actee is @mempty@.
 rembedActor :: Monoid x => s -> RSemidirect x s
 rembedActor s = RPair mempty s
 
+{-# DEPRECATED rembedActor "Use rfromActor instead." #-}
+
+-- |  Make a semidirect pair whose actor is @mempty@.
+rfromActee :: Monoid s => x -> RSemidirect x s
+rfromActee x = RPair x mempty
+
 -- |  Make a semidirect pair whose actor element is @mempty@ .
 rembedActee :: Monoid s => x -> RSemidirect x s
 rembedActee x = RPair x mempty
+
+{-# DEPRECATED rembedActee "Use rfromActee instead." #-}
 
 -- | Convert a pair into a semidirect product element
 rfromPair :: (x,s) -> RSemidirect x s
src/Data/Semidirect/Strict.hs view
@@ -10,7 +10,7 @@ --
 -- Semidirect products for left and right actions.
 --
--- For a lazy version, see @'Data.Semidirect.Lazy'@.
+-- For a lazy version, see "Data.Semidirect.Lazy".
 --
 -- [Usage :]
 --
@@ -32,19 +32,27 @@ -----------------------------------------------------------------------------
 
 module Data.Semidirect.Strict
-       ( LSemidirect (..)
-       , lerase
-       , lforget
-       , lembedActee
-       , lembedActor
-       , lfromPair
-        , RSemidirect (..)
-        , rerase
-        , rforget
-        , rembedActee
-        , rembedActor
-        , rfromPair
-       ) where
+      ( LSemidirect (..)
+      , lvacate
+      , lerase
+      , lreset
+      , lforget
+      , lfromActor
+      , lembedActee
+      , lfromActee
+      , lembedActor
+      , lfromPair
+      , RSemidirect (..)
+      , rreset
+      , rerase
+      , rvacate
+      , rforget
+      , rfromActor
+      , rembedActee
+      , rfromActee
+      , rembedActor
+      , rfromPair
+      ) where
 
 import Data.Bifunctor
 import Data.Act
@@ -72,22 +80,46 @@   first f a = a {lactee = f (lactee a)}
   second = fmap
 
--- |  Erase the actee (i.e. replace it with @mempty@).
+-- | Replace the actee with @mempty@.
+lvacate :: Monoid x => LSemidirect x s -> LSemidirect x s
+lvacate a = a {lactee = mempty}
+
+-- | Erase the actee (i.e. replace it with @mempty@).
 lerase :: Monoid x => LSemidirect x s -> LSemidirect x s
 lerase a = a {lactee = mempty}
 
--- |  Forget the actor (i.e. replace it with @mempty@).
+{-# DEPRECATED lerase "Use lvacate instead." #-}
+
+-- | Replace the actor with @mempty@.
+lreset :: Monoid s => LSemidirect x s -> LSemidirect x s
+lreset a = a {lactor = mempty}
+
+-- | Forget the actor (i.e. replace it with @mempty@).
 lforget :: Monoid s => LSemidirect x s -> LSemidirect x s
 lforget a =a {lactor = mempty}
 
--- |  Make a semidirect pair whose actee is @mempty@.
+{-# DEPRECATED lforget "Use lreset instead." #-}
+
+-- | Make a semidirect pair whose actee is @mempty@.
+lfromActor :: Monoid x => s -> LSemidirect x s
+lfromActor s = LPair mempty s
+
+-- | Make a semidirect pair whose actee is @mempty@.
 lembedActor :: Monoid x => s -> LSemidirect x s
 lembedActor s = LPair mempty s
 
--- |  Make a semidirect pair whose actor is @mempty@.
+{-# DEPRECATED lembedActor "Use lfromActor instead." #-}
+
+-- | Make a semidirect pair whose actor is @mempty@.
+lfromActee :: Monoid s => x -> LSemidirect x s
+lfromActee x = LPair x mempty
+
+-- | Make a semidirect pair whose actor is @mempty@.
 lembedActee :: Monoid s => x -> LSemidirect x s
 lembedActee x = LPair x mempty
 
+{-# DEPRECATED lembedActee "Use lfromActee instead." #-}
+
 -- | Convert a pair into a semidirect product element.
 lfromPair :: (x,s) -> LSemidirect x s
 lfromPair (x,s) = LPair x s
@@ -95,7 +127,7 @@ 
 ------------------------------------------------------------------------------
 
--- |  A semidirect product for a right action, where @s@ acts on @x@
+-- | A semidirect product for a right action, where @s@ acts on @x@
 --
 data RSemidirect x s = RPair
   { ractee :: !x -- ^ The value being acted on
@@ -118,21 +150,46 @@   first f a = a {ractee = f (ractee a)}
   second = fmap
 
--- |  Erase the actee (i.e. replace it with @mempty@).
+-- | Replace the actee with @mempty@.
+rvacate :: Monoid x => RSemidirect x s -> RSemidirect x s
+rvacate a = a {ractee = mempty}
+
+-- | Erase the actee (i.e. replace it with @mempty@).
 rerase :: Monoid x => RSemidirect x s -> RSemidirect x s
 rerase a = a {ractee = mempty}
 
--- |  Forget the actor (i.e. replace it with @mempty@).
+{-# DEPRECATED rerase "Use rvacate instead." #-}
+
+-- | Replace the actor with @mempty@.
+rreset :: Monoid s => RSemidirect x s -> RSemidirect x s
+rreset a = a {ractor = mempty}
+
+-- | Forget the actor (i.e. replace it with @mempty@).
 rforget :: Monoid s => RSemidirect x s -> RSemidirect x s
 rforget a = a {ractor = mempty}
 
--- |  Make a semidirect pair whose actee is @mempty@.
+{-# DEPRECATED rforget "Use rreset instead." #-}
+
+-- | Make a semidirect pair whose actee is @mempty@.
+rfromActor :: Monoid x => s -> RSemidirect x s
+rfromActor s = RPair mempty s
+
+-- | Make a semidirect pair whose actee is @mempty@.
 rembedActor :: Monoid x => s -> RSemidirect x s
 rembedActor s = RPair mempty s
 
--- |  Make a semidirect pair whose actor element is @mempty@ .
+
+{-# DEPRECATED rembedActor "Use rfromActor instead." #-}
+
+-- | Make a semidirect pair whose actor is @mempty@.
+rfromActee :: Monoid s => x -> RSemidirect x s
+rfromActee x = RPair x mempty
+
+-- | Make a semidirect pair whose actor element is @mempty@ .
 rembedActee :: Monoid s => x -> RSemidirect x s
 rembedActee x = RPair x mempty
+
+{-# DEPRECATED rembedActee "Use rfromActee instead." #-}
 
 -- | Convert a pair into a semidirect product element
 rfromPair :: (x,s) -> RSemidirect x s