[Haskell-cafe] [Haskell-beginners] Pattern Matching for record syntax

Magnus Therning magnus at therning.org
Thu Jan 7 22:24:18 UTC 2016

Jeon-Young Kang writes:

> Dear All.
> Hope your 2016 is off to a great start.
> I would like to get results from pattern matching or something.
> Here is the my code.
> data Person = Person {name :: String, age :: Int}
> names = ["tom", "sara"] -- list of names, String
> persons = [Person {name = "tom", age = 10}, Person {name="sara", age=9},
>                   Person {name = "susan", age = 8}].
> Is there any solution to get the age of "tom" and "sara"?
> I have no idea of pattern matching for this one.
> I've tried to use recursion, but I couldn't find any solution for list of
> records.

How about using `filter`[1] over `persons` with a function checking if
the name is in `names`?

I'm sorry, but this sounds like home work so you won't get more than
this from me.


[1]: http://hackage.haskell.org/package/base-

Magnus Therning              OpenPGP: 0x927912051716CE39
email: magnus at therning.org   jabber: magnus at therning.org
twitter: magthe               http://therning.org/magnus

Would you go to war without a helmet? Would you drive without the seat
belt?  Then why do you develop software as if shit doesn’t happen?
     -- Alberto G ( http://makinggoodsoftware.com/2009/05/12/hdd/ )
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 800 bytes
Desc: not available
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20160107/95d28a71/attachment.sig>

More information about the Haskell-Cafe mailing list