]> gitweb.michael.orlitzky.com - spline3.git/commitdiff
Add bang patterns to the Tetrahedron module (Ben Lippmeier).
authorMichael Orlitzky <michael@orlitzky.com>
Tue, 25 Oct 2011 03:57:22 +0000 (23:57 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Tue, 25 Oct 2011 03:57:22 +0000 (23:57 -0400)
src/Tetrahedron.hs

index e71151a1e6a1d370a1057010415976a332cc15fe..670a6e0f26f5024be159b8f870bcfd61e1dafe92 100644 (file)
@@ -1,3 +1,4 @@
+{-# LANGUAGE BangPatterns #-}
 module Tetrahedron (
   Tetrahedron(..),
   b0, -- Cube test
@@ -33,11 +34,11 @@ import ThreeDimensional (ThreeDimensional(..))
 
 data Tetrahedron =
   Tetrahedron { function_values :: FunctionValues,
-                v0 :: Point,
-                v1 :: Point,
-                v2 :: Point,
-                v3 :: Point,
-                precomputed_volume :: Double
+                v0 :: !Point,
+                v1 :: !Point,
+                v2 :: !Point,
+                v3 :: !Point,
+                precomputed_volume :: !Double
               }
     deriving (Eq)
 
@@ -142,7 +143,7 @@ beta t i j k l
 --   Zeilfelder, pp. 84-86. If incorrect indices are supplied, the
 --   function will simply error.
 c :: Tetrahedron -> Int -> Int -> Int -> Int -> Double
-c t i j k l =
+c !t !i !j !k !l =
   coefficient i j k l
   where
     fvs = function_values t