lude

Haskell prelude alternative
git clone git://git.rr3.xyz/lude | git clone gits://git.rr3.xyz/lude
Log | Files | Refs | LICENSE

commit d5ef98e05fee7facfc4b086cfa28af931daeb037
parent c4b736c11576cb9fe36bea2cecfb1b4face4ffd2
Author: Robert Russell <robert@rr3.xyz>
Date:   Sat, 28 Feb 2026 12:28:54 -0800

Disable Repr patterns

Diffstat:
Mpackage.yaml | 2--
Msrc/Lude/Repr.hs | 53+++++++++++++++++++++++++++--------------------------
2 files changed, 27 insertions(+), 28 deletions(-)

diff --git a/package.yaml b/package.yaml @@ -19,8 +19,6 @@ when: ghc-options: - -Wall - -Wno-name-shadowing - - -Wno-missing-signatures - - -Wno-unused-top-binds - -fprint-explicit-foralls - -fprint-explicit-kinds - -fprint-explicit-runtime-reps diff --git a/src/Lude/Repr.hs b/src/Lude/Repr.hs @@ -25,6 +25,7 @@ import GHC.Exts (Levity (..)) import GHC.Exts qualified as GHC -- TODO: SIMD +-- TODO: Export patterns? (Non-exhaustive until we add SIMD support.) -------------------------------------------------------------------------------- @@ -51,36 +52,36 @@ type Flt64 = GHC.DoubleRep -------------------------------------------------------------------------------- -pattern Tuple :: [Repr] -> Repr -pattern Tuple rs = GHC.TupleRep rs +-- pattern Tuple :: [Repr] -> Repr +-- pattern Tuple rs = GHC.TupleRep rs -pattern Sum :: [Repr] -> Repr -pattern Sum rs = GHC.SumRep rs +-- pattern Sum :: [Repr] -> Repr +-- pattern Sum rs = GHC.SumRep rs -pattern Box :: Levity -> Repr -pattern Box l = GHC.BoxedRep l +-- pattern Box :: Levity -> Repr +-- pattern Box l = GHC.BoxedRep l -pattern BoxL, BoxU :: Repr -pattern BoxL = Box Lifted -pattern BoxU = Box Unlifted +-- pattern BoxL, BoxU :: Repr +-- pattern BoxL = Box Lifted +-- pattern BoxU = Box Unlifted -pattern Addr :: Repr -pattern Addr = GHC.AddrRep +-- pattern Addr :: Repr +-- pattern Addr = GHC.AddrRep -pattern Int, Int8, Int16, Int32, Int64 :: Repr -pattern Int = GHC.IntRep -pattern Int8 = GHC.Int8Rep -pattern Int16 = GHC.Int16Rep -pattern Int32 = GHC.Int32Rep -pattern Int64 = GHC.Int64Rep +-- pattern Int, Int8, Int16, Int32, Int64 :: Repr +-- pattern Int = GHC.IntRep +-- pattern Int8 = GHC.Int8Rep +-- pattern Int16 = GHC.Int16Rep +-- pattern Int32 = GHC.Int32Rep +-- pattern Int64 = GHC.Int64Rep -pattern Nat, Nat8, Nat16, Nat32, Nat64 :: Repr -pattern Nat = GHC.WordRep -pattern Nat8 = GHC.Word8Rep -pattern Nat16 = GHC.Word16Rep -pattern Nat32 = GHC.Word32Rep -pattern Nat64 = GHC.Word64Rep +-- pattern Nat, Nat8, Nat16, Nat32, Nat64 :: Repr +-- pattern Nat = GHC.WordRep +-- pattern Nat8 = GHC.Word8Rep +-- pattern Nat16 = GHC.Word16Rep +-- pattern Nat32 = GHC.Word32Rep +-- pattern Nat64 = GHC.Word64Rep -pattern Flt32, Flt64 :: Repr -pattern Flt32 = GHC.FloatRep -pattern Flt64 = GHC.DoubleRep +-- pattern Flt32, Flt64 :: Repr +-- pattern Flt32 = GHC.FloatRep +-- pattern Flt64 = GHC.DoubleRep