naiveDiv name =
  let onSingle (Num x) = Num $ 1 / x
      onSingle _       = numError

      impl (x:xs) = reduceFn divs x xs
        where divs (Num a) (Num b) = Num $ a / b
              divs _       _       = numError

  in  functionFactory name onSingle impl
naiveDiv name =
  let onSingle (Num x) = Num $ 1 / x
      onSingle _       = numError

      impl (x:xs) = reduceFn divs x xs
        where divs (Num a) (Num b) = Num $ a / b
              divs _       _       = numError

  in  functionFactory name onSingle impl
naiveDiv name =
  let onSingle (Num x) = Num $ 1 / x
      onSingle _       = numError

      impl (x:xs) = reduceFn divs x xs
        where divs (Num a) (Num b) = Num $ a / b
              divs _       _       = numError

  in  functionFactory name onSingle impl