smock is a silly mocking framework for Haskell functions. It is the result of experimentation and exploration. I do not recommend that you use it. Writing code with it is cumbersome, and if you need to mock a function in Haskell it is probably better to explicitly mock it by making the function a parameter. It is thus "silly" in the technical sense that I neither want nor need this. Nevertheless, I think this code is interesting since mocking is very popular for unit testing in other languages, and I have not found other Haskell packages that do mocking similarly.