eternal 0.1.4 → 0.1.6
raw patch · 10 files changed
+142/−147 lines, 10 filessetup-changed
Files
- LICENSE +30/−30
- Setup.hs +7/−6
- eternal.cabal +3/−3
- src/Control/Eternal.hs +9/−8
- src/Control/Eternal/Reactive.hs +1/−1
- src/Control/Eternal/Syntax.hs +16/−15
- src/Control/Eternal/Syntax/Lift.hs +21/−23
- src/Control/Eternal/Syntax/Logic.hs +15/−17
- src/Control/Eternal/Syntax/Operators.hs +25/−27
- src/Control/Eternal/Syntax/Unicode.hs +15/−17
LICENSE view
@@ -1,30 +1,30 @@-Copyright 2014 Heather Cynede - -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - -1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - -3. Neither the name of the author nor the names of his contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR -ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN -ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. +Copyright 2016 Mikhail Pukhlikov++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions+are met:++1. Redistributions of source code must retain the above copyright+ notice, this list of conditions and the following disclaimer.++2. Redistributions in binary form must reproduce the above copyright+ notice, this list of conditions and the following disclaimer in the+ documentation and/or other materials provided with the distribution.++3. Neither the name of the author nor the names of his contributors+ may be used to endorse or promote products derived from this software+ without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE+DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,+STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN+ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE+POSSIBILITY OF SUCH DAMAGE.
Setup.hs view
@@ -1,6 +1,7 @@-module Main (main) where - -import Distribution.Simple - -main :: IO () -main = defaultMain +{-# LANGUAGE UnicodeSyntax #-}+module Main (main) where++import Distribution.Simple++main ∷ IO ()+main = defaultMain
eternal.cabal view
@@ -1,8 +1,8 @@ name: eternal category: Control -version: 0.1.4 -author: Heather Cynede -maintainer: Heather Cynede <Heather@live.ru> +version: 0.1.6 +author: Mikhail Pukhlikov +maintainer: Mikhail Pukhlikov <cynede@gentoo.org> license: BSD3 license-file: LICENSE synopsis: everything breaking the Fairbairn threshold
src/Control/Eternal.hs view
@@ -1,8 +1,9 @@-{-# LANGUAGE Safe #-} - -module Control.Eternal - ( module Control.Eternal - ) where - -import Control.Eternal.Syntax as Control.Eternal -import Control.Eternal.Reactive as Control.Eternal +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal+ ( module Control.Eternal+ ) where++import Control.Eternal.Reactive as Control.Eternal+import Control.Eternal.Syntax as Control.Eternal
src/Control/Eternal/Reactive.hs view
@@ -18,7 +18,7 @@ -- | -- Module: Control.Eternal.Reactive --- Copyright: Andy Gill (??-2008), Heather Cynede (2014-??) +-- Copyright: Andy Gill (??-2008), Mikhail Pukhlikov (2014-??) -- License: BSD3 -- |
src/Control/Eternal/Syntax.hs view
@@ -1,15 +1,16 @@-{-# LANGUAGE Safe #-} - -module Control.Eternal.Syntax - ( module Control.Eternal.Syntax - , module Prelude.Unicode - , module Control.Monad.Unicode - ) where - -import Control.Eternal.Syntax.Operators as Control.Eternal.Syntax -import Control.Eternal.Syntax.Unicode as Control.Eternal.Syntax -import Control.Eternal.Syntax.Lift as Control.Eternal.Syntax -import Control.Eternal.Syntax.Logic as Control.Eternal.Syntax - -import Prelude.Unicode -- base-unicode-symbols -import Control.Monad.Unicode +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal.Syntax+ ( module Control.Eternal.Syntax+ , module Prelude.Unicode+ , module Control.Monad.Unicode+ ) where++import Control.Eternal.Syntax.Lift as Control.Eternal.Syntax+import Control.Eternal.Syntax.Logic as Control.Eternal.Syntax+import Control.Eternal.Syntax.Operators as Control.Eternal.Syntax+import Control.Eternal.Syntax.Unicode as Control.Eternal.Syntax++import Control.Monad.Unicode+import Prelude.Unicode
src/Control/Eternal/Syntax/Lift.hs view
@@ -1,23 +1,21 @@-{-# LANGUAGE - UnicodeSyntax - , Safe - #-} - -module Control.Eternal.Syntax.Lift - ( liftM_ - , liftM2_ - , liftM3_ - , liftM4_ - ) where - -import Control.Monad (join, liftM, liftM2, liftM3, liftM4) - -liftM_ ∷ Monad m ⇒ (α1 → m α) → m α1 → m α -liftM2_ ∷ Monad m ⇒ (α1 → α2 → m α) → m α1 → m α2 → m α -liftM3_ ∷ Monad m ⇒ (α1 → α2 → α3 → m α) → m α1 → m α2 → m α3 → m α -liftM4_ ∷ Monad m ⇒ (α1 → α2 → α3 → α4 → m α) → m α1 → m α2 → m α3 → m α4 → m α - -liftM_ a1 r = join $ fmap a1 r -liftM2_ a1 a2 r = join $ liftM2 a1 a2 r -liftM3_ a1 a2 a3 r = join $ liftM3 a1 a2 a3 r -liftM4_ a1 a2 a3 a4 r = join $ liftM4 a1 a2 a3 a4 r +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal.Syntax.Lift+ ( liftM_+ , liftM2_+ , liftM3_+ , liftM4_+ ) where++import Control.Monad (join, liftM, liftM2, liftM3, liftM4)++liftM_ ∷ Monad m ⇒ (α1 → m α) → m α1 → m α+liftM2_ ∷ Monad m ⇒ (α1 → α2 → m α) → m α1 → m α2 → m α+liftM3_ ∷ Monad m ⇒ (α1 → α2 → α3 → m α) → m α1 → m α2 → m α3 → m α+liftM4_ ∷ Monad m ⇒ (α1 → α2 → α3 → α4 → m α) → m α1 → m α2 → m α3 → m α4 → m α++liftM_ a1 r = join $ fmap a1 r+liftM2_ a1 a2 r = join $ liftM2 a1 a2 r+liftM3_ a1 a2 a3 r = join $ liftM3 a1 a2 a3 r+liftM4_ a1 a2 a3 a4 r = join $ liftM4 a1 a2 a3 a4 r
src/Control/Eternal/Syntax/Logic.hs view
@@ -1,17 +1,15 @@-{-# LANGUAGE - UnicodeSyntax - , Safe - #-} - -module Control.Eternal.Syntax.Logic - ( ifSo - , ifNot - ) where - -import Control.Monad (when, unless) - -ifSo ∷ IO () → Bool → IO () -ifSo = flip when - -ifNot ∷ IO () → Bool → IO () -ifNot = flip unless +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal.Syntax.Logic+ ( ifSo+ , ifNot+ ) where++import Control.Monad (unless, when)++ifSo ∷ IO () → Bool → IO ()+ifSo = flip when++ifNot ∷ IO () → Bool → IO ()+ifNot = flip unless
src/Control/Eternal/Syntax/Operators.hs view
@@ -1,27 +1,25 @@-{-# LANGUAGE - UnicodeSyntax - , Safe - #-} - -module Control.Eternal.Syntax.Operators - ( (<|) - , (|>) - , (<<|) - , (|>>) - ) where - -infixl 2 <|, |> - -(<|) :: (α → β) → α → β -f <| a = f a - -(|>) :: α → (α → β) → β -a |> f = f a - -infixl 7 <<|, |>> - -(<<|) :: (α → β) → α → β -f <<| a = f a - -(|>>) :: α → (α → β) → β -a |>> f = f a +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal.Syntax.Operators+ ( (<|)+ , (|>)+ , (<<|)+ , (|>>)+ ) where++infixl 2 <|, |>++(<|) ∷ (α → β) → α → β+f <| a = f a++(|>) ∷ α → (α → β) → β+a |> f = f a++infixl 7 <<|, |>>++(<<|) ∷ (α → β) → α → β+f <<| a = f a++(|>>) ∷ α → (α → β) → β+a |>> f = f a
src/Control/Eternal/Syntax/Unicode.hs view
@@ -1,17 +1,15 @@-{-# LANGUAGE - UnicodeSyntax - , Safe - #-} - -module Control.Eternal.Syntax.Unicode - ( (⊳) - , (⊲) - ) where - -infixl 2 ⊳, ⊲ - -(⊳) :: α → (α → β) → β -a ⊳ f = f a - -(⊲) :: (α → β) → α → β -f ⊲ a = f a +{-# LANGUAGE Safe #-}+{-# LANGUAGE UnicodeSyntax #-}++module Control.Eternal.Syntax.Unicode+ ( (⊳)+ , (⊲)+ ) where++infixl 2 ⊳, ⊲++(⊳) ∷ α → (α → β) → β+a ⊳ f = f a++(⊲) ∷ (α → β) → α → β+f ⊲ a = f a