Re: [Haskell-cafe] Quite confused by simple transformations on this code not working

2009-01-21 Thread Svein Ove Aas
Or if the specificity of (/\) is important to you, you could define f at the global scope using that type, not export it, then declare (/\) as equal to f but with a more restrictive type. On Wed, Jan 21, 2009 at 5:45 AM, Alexander Dunlap alexander.dun...@gmail.com wrote: Instead of declaring

[Haskell-cafe] Quite confused by simple transformations on this code not working

2009-01-20 Thread Andrew Wagner
Strange little bit of code: http://moonpatio.com:8080/fastcgi/hpaste.fcgi/view?id=829#a829 If I do any of the following, all of which seem natural to me, it fails to typecheck: 1. move f out of the 'where' clause (with or without a type signature) 2. put the same type signature on f as is

Re: [Haskell-cafe] Quite confused by simple transformations on this code not working

2009-01-20 Thread wren ng thornton
Andrew Wagner wrote: Strange little bit of code: http://moonpatio.com:8080/fastcgi/hpaste.fcgi/view?id=829#a829 If I do any of the following, all of which seem natural to me, it fails to typecheck: 1. move f out of the 'where' clause (with or without a type signature) 2. put the same

Re: [Haskell-cafe] Quite confused by simple transformations on this code not working

2009-01-20 Thread Andrew Wagner
So...there's just no good way to avoid the duplication? On Tue, Jan 20, 2009 at 11:10 PM, wren ng thornton w...@freegeek.orgwrote: Andrew Wagner wrote: Strange little bit of code: http://moonpatio.com:8080/fastcgi/hpaste.fcgi/view?id=829#a829 If I do any of the following, all of which seem

Re: [Haskell-cafe] Quite confused by simple transformations on this code not working

2009-01-20 Thread Alexander Dunlap
Instead of declaring (/\) :: Eq a = Sentence a - Sentence a - Sentence a, you could say (/\) :: Eq a - [a] - [a] - [a]. Then it would work in both places. ([a] - [a] - [a] is a more general type than [[Term a]] - [[Term a]] - [[Term a]], so functions with the former type can be used in place of