normL :: Double -> Point -> Double
normL n p
  | n == 1 = abs dx + abs dy
  | n > 1  = ((abs dx ** n) + (abs dy ** n)) ** (1 / n)
      where (dxi, dyi) = p
            (dx, dy) = (fromIntegral dxi, fromIntegral dyi)

-- l-inf. norm
normL :: Double -> Point -> Double
normL n p
  | n == 1 = abs dx + abs dy
  | n > 1  = ((abs dx ** n) + (abs dy ** n)) ** (1 / n)
      where (dxi, dyi) = p
            (dx, dy) = (fromIntegral dxi, fromIntegral dyi)

-- l-inf. norm
normL n p
  | n == 1 = abs dx + abs dy
  | n > 1  = ((abs dx ** n) + (abs dy ** n)) ** (1 / n)
      where (dxi, dyi) = p
            (dx, dy) = (fromIntegral dxi, fromIntegral dyi)

-- l-inf. norm