packages feed

chalmers-lava2000 1.1.2 → 1.2.0

raw patch · 23 files changed

+49/−41 lines, 23 filesdep +arraydep +randomdep −haskell98PVP ok

version bump matches the API change (PVP)

Dependencies added: array, random

Dependencies removed: haskell98

API changes (from Hackage documentation)

- Lava.Signal: andl :: [Signal Bool] -> Signal Bool
- Lava.Signal: divide :: Signal Int -> Signal Int -> Signal Int
- Lava.Signal: high :: Signal Bool
- Lava.Signal: low :: Signal Bool
- Lava.Signal: modulo :: Signal Int -> Signal Int -> Signal Int
- Lava.Signal: orl :: [Signal Bool] -> Signal Bool
- Lava.Signal: plusl :: [Signal Int] -> Signal Int
- Lava.Signal: timesl :: [Signal Int] -> Signal Int
- Lava.Signal: xorl :: [Signal Bool] -> Signal Bool
+ Lava.Arithmetic: adder :: (Signal Bool, ([Signal Bool], [Signal Bool])) -> ([Signal Bool], Signal Bool)
+ Lava.Arithmetic: bin2int :: [Signal Bool] -> Signal Int
+ Lava.Arithmetic: binAdder :: ([Signal Bool], [Signal Bool]) -> [Signal Bool]
+ Lava.Arithmetic: bitAdder :: (Signal Bool, [Signal Bool]) -> ([Signal Bool], Signal Bool)
+ Lava.Arithmetic: bitMulti :: (Signal Bool, [Signal Bool]) -> [Signal Bool]
+ Lava.Arithmetic: fullAdd :: (Signal Bool, (Signal Bool, Signal Bool)) -> (Signal Bool, Signal Bool)
+ Lava.Arithmetic: halfAdd :: (Signal Bool, Signal Bool) -> (Signal Bool, Signal Bool)
+ Lava.Arithmetic: int2bin :: (Eq a, Num a) => a -> Signal Int -> [Signal Bool]
+ Lava.Arithmetic: multi :: ([Signal Bool], [Signal Bool]) -> [Signal Bool]
+ Lava.Arithmetic: numBreak :: Signal Int -> (Signal Bool, Signal Int)
+ Lava.Operators: (%%) :: Signal Int -> Signal Int -> Signal Int
+ Lava.Operators: (<#>) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (<&>) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (<==) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (<==>) :: Generic a => a -> a -> Signal Bool
+ Lava.Operators: (<=>) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (<|>) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (==>) :: Signal Bool -> Signal Bool -> Signal Bool
+ Lava.Operators: (>>==) :: Signal Int -> Signal Int -> Signal Bool
+ Lava.Operators: (|->) :: Generic a => a -> a -> a
+ Lava.Operators: and2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: bit2int :: Signal Bool -> Signal Int
+ Lava.Operators: equiv :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: gte :: (Signal Int, Signal Int) -> Signal Bool
+ Lava.Operators: idiv :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: imax :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: imin :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: imod :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: impl :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: int2bit :: Signal Int -> Signal Bool
+ Lava.Operators: nand2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: nandl :: [Signal Bool] -> Signal Bool
+ Lava.Operators: nor2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: norl :: [Signal Bool] -> Signal Bool
+ Lava.Operators: or2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: plus :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: sub :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: times :: (Signal Int, Signal Int) -> Signal Int
+ Lava.Operators: xnor2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Operators: xor2 :: (Signal Bool, Signal Bool) -> Signal Bool
+ Lava.Patterns: (->-) :: (a -> b) -> (b -> c) -> a -> c
+ Lava.Patterns: (-|-) :: (t -> t2) -> (t1 -> t3) -> (t, t1) -> (t2, t3)
+ Lava.Patterns: append :: ([a], [a]) -> [a]
+ Lava.Patterns: bfly :: (Eq a1, Num a1) => a1 -> ([a] -> [a]) -> [a] -> [a]
+ Lava.Patterns: column :: ((t1, t) -> (t, a)) -> ([t1], t) -> (t, [a])
+ Lava.Patterns: compose :: [b -> b] -> b -> b
+ Lava.Patterns: composeN :: Int -> (b -> b) -> b -> b
+ Lava.Patterns: copy :: t -> (t, t)
+ Lava.Patterns: grid :: ((t, a) -> (a, t)) -> ([t], [a]) -> ([a], [t])
+ Lava.Patterns: halveList :: [a] -> ([a], [a])
+ Lava.Patterns: ilv :: ([t] -> [a]) -> [t] -> [a]
+ Lava.Patterns: ilvN :: (Eq a, Num a) => a -> ([t] -> [a1]) -> [t] -> [a1]
+ Lava.Patterns: iter :: (Eq a, Num a) => a -> (t -> t) -> t -> t
+ Lava.Patterns: mirror :: ((t, t1) -> (t3, t2)) -> (t1, t) -> (t2, t3)
+ Lava.Patterns: pair :: [t] -> [(t, t)]
+ Lava.Patterns: par :: (t -> t2) -> (t1 -> t3) -> (t, t1) -> (t2, t3)
+ Lava.Patterns: parl :: ([a] -> [a1]) -> ([a] -> [a1]) -> [a] -> [a1]
+ Lava.Patterns: pmap :: ((t, t) -> (a, a)) -> [t] -> [a]
+ Lava.Patterns: riffle :: [a] -> [a]
+ Lava.Patterns: row :: ((t1, t) -> (a, t1)) -> (t1, [t]) -> ([a], t1)
+ Lava.Patterns: serial :: (a -> b) -> (b -> c) -> a -> c
+ Lava.Patterns: swap :: (t1, t) -> (t, t1)
+ Lava.Patterns: swapl :: [t] -> [t]
+ Lava.Patterns: tri :: (a -> a) -> [a] -> [a]
+ Lava.Patterns: two :: ([a] -> [a1]) -> [a] -> [a1]
+ Lava.Patterns: twoN :: (Eq a, Num a) => a -> ([a1] -> [a2]) -> [a1] -> [a2]
+ Lava.Patterns: unpair :: [(a, a)] -> [a]
+ Lava.Patterns: unriffle :: [t] -> [t]
+ Lava.Patterns: unzipp :: [(a, a1)] -> ([a], [a1])
+ Lava.Patterns: zipp :: ([t], [t1]) -> [(t, t1)]
+ Lava.SequentialCircuits: always :: Signal Bool -> Signal Bool
+ Lava.SequentialCircuits: constant :: Constructive a => a -> Signal Bool
+ Lava.SequentialCircuits: delayClk :: (Choice a, Generic a) => a -> (Signal Bool, a) -> a
+ Lava.SequentialCircuits: delayN :: (Eq a, Num a, Generic a1) => a -> a1 -> a1 -> a1
+ Lava.SequentialCircuits: edge :: Signal Bool -> Signal Bool
+ Lava.SequentialCircuits: outputList :: Generic b => [b] -> () -> b
+ Lava.SequentialCircuits: puls :: (Eq a, Num a) => a -> () -> Signal Bool
+ Lava.SequentialCircuits: rowSeq :: Constructive t1 => ((t1, t2) -> (t, t1)) -> t2 -> t
+ Lava.SequentialCircuits: rowSeqPeriod :: (Eq a, Num a, Choice t1, Constructive t1) => a -> ((t1, t2) -> (t, t1)) -> t2 -> t
+ Lava.SequentialCircuits: rowSeqReset :: (Choice t1, Constructive t1) => ((t1, t2) -> (t, t1)) -> (Signal Bool, t2) -> t
+ Lava.SequentialCircuits: toggle :: Signal Bool -> Signal Bool
+ Lava.Signal: andl, xorl, orl :: [Signal Bool] -> Signal Bool
+ Lava.Signal: divide, modulo :: Signal Int -> Signal Int -> Signal Int
+ Lava.Signal: low, high :: Signal Bool
+ Lava.Signal: plusl, timesl :: [Signal Int] -> Signal Int
- Lava.Vis: equivCheckVisInput :: (Generic a, Generic b1, Generic b) => (a -> b) -> (a -> b1) -> a -> IO ProofResult
+ Lava.Vis: equivCheckVisInput :: (Generic b1, Generic b, Generic a) => (a -> b) -> (a -> b1) -> a -> IO ProofResult

Files

Lava/Captain.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/ConstructiveAnalysis.hs view
@@ -17,7 +17,7 @@   , unsafeInterleaveST   ) -import List+import Data.List   ( isPrefixOf   ) 
Lava/Eprover.hs view
@@ -12,17 +12,20 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStrLn   , hClose-  , try+  )++import System.IO.Error+  ( try   )  import Lava.IOBuffering
Lava/Fixit.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Generic.hs view
@@ -10,7 +10,7 @@   , next   ) -import List+import Data.List   ( transpose   ) 
Lava/HeerHugo.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/IOBuffering.hs view
@@ -1,6 +1,6 @@ module Lava.IOBuffering where -import IO+import System.IO   ( hSetBuffering   , stdout   , BufferMode(..)
Lava/Isc.hs view
@@ -15,9 +15,9 @@ import Lava.Verification import Lava.IOBuffering -import Array+import Data.Array import Lava.MyST-import List(intersperse)+import Data.List(intersperse) import System.Cmd (system) import System.Exit (ExitCode(..)) 
Lava/LavaRandom.hs view
@@ -6,7 +6,7 @@   )  where -import Random+import System.Random   ( StdGen   , newStdGen   , next
Lava/Limmat.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Modoc.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Property.hs view
@@ -22,14 +22,14 @@ import Lava.Signal import Lava.Generic -import Monad+import Control.Monad   ( liftM2   , liftM3   , liftM4   , liftM5   ) -import List+import Data.List   ( intersperse   , transpose   )
Lava/Retime.hs view
@@ -8,7 +8,7 @@ import Lava.Sequent import Lava.Netlist -import List+import Data.List   ( isPrefixOf   ) 
Lava/Satnik.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Satzoo.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Signal.hs view
@@ -4,7 +4,7 @@ import Lava.Sequent import Lava.Error -import List+import Data.List   ( transpose   ) 
Lava/Smv.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Stable.hs view
@@ -15,7 +15,7 @@   , unsafeInterleaveST   ) -import List+import Data.List   ( isPrefixOf   ) 
Lava/Verification.hs view
@@ -16,13 +16,13 @@ import Lava.Error import Lava.LavaDir -import List+import Data.List   ( intersperse   , isPrefixOf   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Vhdl.hs view
@@ -12,12 +12,12 @@ import Lava.Error import Lava.LavaDir -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Vis.hs view
@@ -16,12 +16,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
Lava/Zchaff.hs view
@@ -12,12 +12,12 @@ import Lava.LavaDir import Lava.Verification -import List+import Data.List   ( intersperse   , nub   ) -import IO+import System.IO   ( openFile   , IOMode(..)   , hPutStr
chalmers-lava2000.cabal view
@@ -1,5 +1,5 @@ name:                chalmers-lava2000-version:             1.1.2+version:             1.2.0 synopsis:            Hardware description library description:         Hardware description library category:            Language, Hardware@@ -8,10 +8,15 @@ copyright:           (c) 2008. Koen Claessen <koen@chalmers.se> author:              Koen Claessen <koen@chalmers.se> maintainer:          Emil Axelsson <emax@chalmers.se>-cabal-version:       >= 1.2+homepage:            http://projects.haskell.org/chalmers-lava2000/+cabal-version:       >= 1.6 build-type:          Simple data-files:          README, INSTALL, Doc/tutorial.ps, Vhdl/lava.vhd, Scripts/satzoo.wrapper, Scripts/smv.wrapper +source-repository head+  type:     darcs+  location: http://code.haskell.org/chalmers-lava2000/+ library     exposed-modules:                      Lava@@ -57,7 +62,7 @@     other-modules:                      Paths_chalmers_lava2000 -    build-Depends:   base >= 3 && < 5, haskell98 >= 1 && < 2, process >= 1 && < 2+    build-Depends:   array, base >= 3 && < 5, process >= 1 && < 2, random      extensions:      Rank2Types, ExistentialQuantification     ghc-options:     -fno-warn-overlapping-patterns -fno-warn-missing-methods