egison 3.6.1 → 3.6.2
raw patch · 3 files changed
+7/−7 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
egison.cabal view
@@ -1,5 +1,5 @@ Name: egison-Version: 3.6.1+Version: 3.6.2 Synopsis: Programming language with non-linear pattern-matching against non-free data Description: An interpreter for Egison, a **pattern-matching-oriented**, purely functional programming language.
hs-src/Language/Egison/Primitives.hs view
@@ -70,7 +70,7 @@ arg' <- evalWHNF arg case arg' of (TensorData (Tensor ns ds js)) -> do- ds' <- mapM (\d -> f d) ds+ ds' <- V.mapM (\d -> f d) ds fromTensor (Tensor ns ds' js) >>= return . Value _ -> f arg' >>= return . Value @@ -89,10 +89,10 @@ [(TensorData t1@(Tensor _ _ _)), (TensorData t2@(Tensor _ _ _))] -> do tProduct f t1 t2 >>= fromTensor >>= return . Value [(TensorData(Tensor ns ds js)), val] -> do- ds' <- mapM (\d -> f d val) ds+ ds' <- V.mapM (\d -> f d val) ds fromTensor (Tensor ns ds' js) >>= return . Value [val, (TensorData (Tensor ns ds js))] -> do- ds' <- mapM (\d -> f val d) ds+ ds' <- V.mapM (\d -> f val d) ds fromTensor (Tensor ns ds' js) >>= return . Value [val, val'] -> f val val' >>= return . Value _ -> throwError $ ArgumentsNumPrimitive 2 $ length args'
hs-src/Language/Egison/Types.hs view
@@ -831,7 +831,7 @@ t2' <- tTranspose js1 t2 case t2' of (Tensor ns2 xs2 _)- | ns2 == ns1 -> do ys <- mapM (\(x1,x2) -> f x1 x2) (V.zip xs1 xs2)+ | ns2 == ns1 -> do ys <- V.mapM (\(x1,x2) -> f x1 x2) (V.zip xs1 xs2) return (Tensor ns1 ys js1) | otherwise -> throwError $ InconsistentTensorSize @@ -871,10 +871,10 @@ g (Superscript i) = (SupSubscript i) g (Subscript i) = (SupSubscript i) tProduct f (Scalar x) (Tensor ns xs js) = do- xs' <- mapM (f x) xs+ xs' <- V.mapM (f x) xs return $ Tensor ns xs' js tProduct f (Tensor ns xs js) (Scalar x) = do- xs' <- mapM (flip f x) xs+ xs' <- V.mapM (flip f x) xs return $ Tensor ns xs' js tProduct f (Scalar x1) (Scalar x2) = f x1 x2 >>= return . Scalar