FW: Records and generating splices
"Rene de Visser" <[email protected]> Tue, 12 Jul 2005 10:12:19 +0200
| Newsgroups | gmane.comp.lang.haskell.template |
|---|---|
| Message-ID | <[email protected]> |
>From: "Rene de Visser" <[email protected]> >test9 = [d| add_rel1 value = $(exp) value |] where > exp = [| (\value -> modify (\db -> $(updater) db (Set.insert >value (rel1 db)))) |] where > updater = [|(\db value -> db{rel1 = value}) |] > --updater = LamE [VarP db_2,VarP value_3] (RecUpdE (VarE db_2) >[(DataBase.rel1,VarE value_3)]) where > db_2 = mkName "db_2" ; value_3 = mkName "value_3" Ok, I've found the error, that needs to be updater = lamE [varP db_2,varP value_3] (recUpdE (varE db_2) [fieldExp 'DataBase.rel1 (varE value_3)]) Rene.