I need to apply a function on elements of a vector in Haskell in an efficient way, which implies that i am not looking for something like this:
sigmoid :: [Float] -> [Float]
sigmoid [] = []
sigmoid (z:zs) = ( 1/(1+exp (-z)) ):(sigmoid zs)
To be more specific, are there exp, log, ... etc
for element-wise vector operations in hmatrix using Haskell, similarly to their counterparts in numpy using Python? My code runs very slowly if I am not using vector processing capabilities.