Re: [noob] Typing error with nested list and tuple pattern?
Daniel Fischer <[email protected]> Thu, 7 Sep 2006 12:44:50 +0200
| Newsgroups | gmane.comp.lang.haskell.hugs.user |
|---|---|
| Message-ID | <[email protected]> |
Am Donnerstag, 7. September 2006 09:02 schrieb Peter Arrenbrecht: > Hi all > > I am baffled by the following error message from Hugs 98 (Version May > 2006): > > ERROR file:.\cube.hs:11 - Type error in explicitly typed binding > *** Term : [(i,v) : ps] > *** Type : [[(a,b)]] > *** Does not match : [(Int,Double)] > > when attempting to compile the following declaration (line numbers in > brackets): > > [10] test :: [(Int, Double)] -> Int > [11] test [(i,v):ps] = i > > Is this a bug? If not, how do I write the pattern properly? No bug. You should write test ((i,v):ps) = i The pattern [(i,v):ps] has type list of lists of (Int,Double) pairs, one more layer of list than you want. > > Thanks, > Peter Arrenbrecht You're welcome, Daniel -- "In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt." -- Blair P. Houghton