
On Tuesday 21 September 2010 15:50:46, Martin Tomko wrote:
Thank you Edgar, Daniel, these helped a lot! one more question regarding the suggestion of daniel, using ! if I KNOW that the key will occur (and as I work in a closed world, it should be the case).
Out of curiosity - how does one use ! ??
let's say I have a function returning a map: myFunct a b, and I was using:
M.lookup c (myFunct a b)
On this, I could happily use fromJust (M.lookup c (myFunct a b))
Now, if I do
(myFunct a b) ! c i get ! not in scope.
! seems to come from Data.Map and I import it as import qualified Data.Map as M
I don't think I can do M.! :))).
Too ugly?
How to go about it?
You'd use myFunct a b M.! c if you have import qualified Data.Map as M at the top of your module. However, qualified operators are often ugly, so I suggest import qualified Data.Map as M import Data.Map (Map, (!)) -- to get the type name and the (!) operator for unqualified use myFunct a b ! c or, with parentheses, (myFunct a b) ! c