I would like to write a module that uses a function to be defined by the user. For example:

```
module A
(someFun) where

someFun x = doSomethingWith externFun x

```

I would like externFun to be defined by the user, in the file importing the module A. Is there a way? Or is it just a bad idea?

I could of course pass externFun as an argument to someFun, But there it doesn't look very convenient: the function to be passed would be the same for each call to someFun.