twentefp 0.4.1 → 0.4.2
raw patch · 2 files changed
+10/−3 lines, 2 files
Files
- src/FPPrac/Prelude.hs +9/−2
- twentefp.cabal +1/−1
src/FPPrac/Prelude.hs view
@@ -18,20 +18,27 @@ import Prelude hiding (length,(!!),replicate,take,drop,splitAt) import qualified Prelude as P-import Data.Char (ord,chr)+import qualified Data.Char (ord,chr) import FPPrac.Prelude.Number default (Number) infixl 9 !! +ord :: Char -> Number+ord = I . toInteger . Data.Char.ord++chr :: Number -> Char+chr (I i) = Data.Char.chr (fromInteger i)+chr n = error $ "ord undefined for float: " ++ show n+ -- | /O(n)/. 'length' returns the length of a finite list as a 'Number'. length :: [a] -> Number length = I . toInteger . P.length -- | List index (subscript) operator, starting from 0. (!!) :: [a] -> Number -> a-xs !! (I i) = xs P.!! (fromInteger i)+xs !! (I i) = xs P.!! fromInteger i _ !! _ = error "trying to index (!!) using a floating number" -- | 'replicate' @n x@ is a list of length @n@ with @x@ the value of
twentefp.cabal view
@@ -1,5 +1,5 @@ Name: twentefp-Version: 0.4.1+Version: 0.4.2 Synopsis: Lab Assignments Environment at Univeriteit Twente Description: Lab Assignments Environment at Univeriteit Twente License: BSD3