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 +2/−2
- Lava/ConstructiveAnalysis.hs +1/−1
- Lava/Eprover.hs +6/−3
- Lava/Fixit.hs +2/−2
- Lava/Generic.hs +1/−1
- Lava/HeerHugo.hs +2/−2
- Lava/IOBuffering.hs +1/−1
- Lava/Isc.hs +2/−2
- Lava/LavaRandom.hs +1/−1
- Lava/Limmat.hs +2/−2
- Lava/Modoc.hs +2/−2
- Lava/Property.hs +2/−2
- Lava/Retime.hs +1/−1
- Lava/Satnik.hs +2/−2
- Lava/Satzoo.hs +2/−2
- Lava/Signal.hs +1/−1
- Lava/Smv.hs +2/−2
- Lava/Stable.hs +1/−1
- Lava/Verification.hs +2/−2
- Lava/Vhdl.hs +2/−2
- Lava/Vis.hs +2/−2
- Lava/Zchaff.hs +2/−2
- chalmers-lava2000.cabal +8/−3
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