lude

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

commit 73dc78e72ebf1529cfc6fcab70e199a679274774
parent 487c87633a11a97a8c3bf015051cd5f1e8e495d3
Author: Robert Russell <robert@rr3.xyz>
Date:   Thu, 24 Sep 2026 21:28:39 -0700

Todo: delete junk

Diffstat:
MTodo/Lude.hs.txt | 165-------------------------------------------------------------------------------
1 file changed, 0 insertions(+), 165 deletions(-)

diff --git a/Todo/Lude.hs.txt b/Todo/Lude.hs.txt @@ -1,82 +1,3 @@ --- module Lude ( --- Types, --- Constraint, --- Levity (..), --- RuntimeRep (..), --- Thunked, --- LRep, --- URep, --- Type, --- BoxedType, --- LType, --- UType, --- Kind, --- Unlift (..), --- Function --- const, --- fix, --- flip, --- ($), --- ($!), --- (&), --- (&!), --- Bool --- IsBool (..), --- Bool (..), --- (&&), --- (||), --- not, --- Category --- Category (identity, compose), --- (<.), --- (.>), --- Functor -{- -Functor, -void, -Compose (Compose, getCompose), -Const (Const, getConst), -Identity (Identity, runIdentity), -map, -($^), -for, -(^&), -flap, -(^$), -flor, -(&^), -(<<^), -(^>>), -(^<<), -(>>^), --- Applicative -Applicative (pure), -pass, -ap, -(^$^), -plug, -(^&^), -(^<<^), -(^>>^), --- Monad -Monad, -map', -($!^), -for', -(^&!), -flap', -(^$!), -flor', -(&!^), -ap', -(^$!^), -plug', -(^&!^), --} --- ) where - -{- - -- import Control.Applicative (Alternative (empty, (<|>)), Applicative (liftA2, pure, (<*>)), (<**>)) -- import Control.Monad (Monad ((>>=))) -- import Data.Bool (Bool (..), not, (&&), (||)) @@ -188,90 +109,6 @@ class Unlift a where -- lift UFalse = False -------------------------------------------------------------------------------- --- Maybe - --- class IsMaybe (maybe :: Type s -> Type r) where --- just :: a -> maybe a --- nothing :: (Thunked) => maybe a --- maybe :: b -> (a -> b) -> maybe a -> b - --- instance IsMaybe Maybe where --- just = Just --- nothing = Nothing --- maybe n j = \case --- Just a -> j a --- Nothing -> n - --- data UMaybe :: LType -> UType where --- UJust :: a -> UMaybe a --- UNothing :: UMaybe a - --- instance IsMaybe UMaybe where --- just = UJust --- nothing = UNothing --- maybe n j = \case --- UJust a -> j a --- UNothing -> n - --- instance Unlift (Maybe a) where --- type U (Maybe a) = UMaybe a - --- force (Just a) = UJust a --- force Nothing = UNothing - --- lift (UJust a) = Just a --- lift UNothing = Nothing - --- data Maybe' :: UType -> LType where --- Just' :: a -> Maybe' a --- Nothing' :: Maybe' a - --- instance IsMaybe Maybe' where --- just = Just' --- nothing = Nothing' --- maybe n j = \case --- Just' a -> j a --- Nothing' -> n - --- data UMaybe' :: UType -> UType where --- UJust' :: a -> UMaybe' a --- UNothing' :: UMaybe' a - --- instance IsMaybe UMaybe' where --- just = UJust' --- nothing = UNothing' --- maybe n j = \case --- UJust' a -> j a --- UNothing' -> n - --- instance Unlift (Maybe' a) where --- type U (Maybe' a) = UMaybe' a - --- force (Just' a) = UJust' a --- force Nothing' = UNothing' - --- lift (UJust' a) = Just' a --- lift UNothing' = Nothing' - --- isJust :: forall s r (maybe :: Type s -> Type r) a. (IsMaybe maybe) => maybe a -> Bool --- isJust = maybe False (const True) - --- isNothing :: (IsMaybe maybe) => maybe a -> Bool --- isNothing = maybe True (const False) - --- type family Maybe# (r :: RuntimeRep) (l :: Levity) :: Type r -> BoxedType l --- type instance Maybe# LRep Lifted = Maybe --- type instance Maybe# URep Lifted = Maybe' --- type instance Maybe# LRep Unlifted = UMaybe --- type instance Maybe# URep Unlifted = UMaybe' - --- type family Lower (a :: Kind) :: Kind where --- Lower (BoxedType l) = TypeU --- Lower (k -> l) = k -> Lower l --- type family X (a :: k) :: Lower k --- type instance X (MaybeL @l) = MaybeL @Unlifted - --------------------------------------------------------------------------------- -- Numeric types -- TODO @@ -578,5 +415,3 @@ plug' mx mf = do -- (^.^^^) :: (b0 -> b1 -> c) -> (a0 -> a1 -> a2 -> a3 -> b1) -> (b0 -> a0 -> a1 -> a2 -> a3 -> c) -- (^^.^^^) :: (b0 -> b1 -> b2 -> c) -> (a0 -> a1 -> a2 -> a3 -> b2) -> (b0 -> b1 -> a0 -> a1 -> a2 -> a3 -> c) -- (^^^.^^^) :: (b0 -> b1 -> b2 -> b3 -> c) -> (a0 -> a1 -> a2 -> a3 -> b3) -> (b0 -> b1 -> b2 -> a0 -> a1 -> a2 -> a3 -> c) - --}