From johanj at cs.uu.nl Fri May 11 08:08:33 2007 From: johanj at cs.uu.nl (Johan Jeuring) Date: Fri May 11 08:00:32 2007 Subject: [Hs-Generics] Real-life datatype-generic programming project In-Reply-To: <20070326005233.B8F94AD35@Adric.metnet.fnmoc.navy.mil> References: <20070326005233.B8F94AD35@Adric.metnet.fnmoc.navy.mil> Message-ID: <67A16714-F8B3-4A54-9E25-9FA3768644C4@cs.uu.nl> Dear generics-subscribers, My project proposal about Real-life datatype-generic programming got funded. Part of this proposal is about developing a common generic programming library. You can find the proposal here: http://www.cs.uu.nl/~johanj/publications/reli-dgp.pdf I'll be looking for a PhD student, who will work on this project, soon. Kind regards, Johan From johanj at cs.uu.nl Fri May 11 10:26:38 2007 From: johanj at cs.uu.nl (Johan Jeuring) Date: Fri May 11 10:18:31 2007 Subject: [Hs-Generics] Experiments and paper In-Reply-To: <5EBDF240-2548-41F8-8F84-BE6FD895224E@cs.uu.nl> References: <5EBDF240-2548-41F8-8F84-BE6FD895224E@cs.uu.nl> Message-ID: Dear generics-subscribers, We intend to develop a common library for generic programming. A first step towards such a design is to evaluate the existing approaches. We started on this last year, but activities slowed down a bit, presumably due to other obligations. Since January, Alex Gerdes and Alexey have picked up the evaluation again. Some of you might have followed the darcs submissions of Alexey and Alex in the last couple of months: we have implemented a set of examples for almost all library approaches now. A few approaches remain to be done, but we can hopefully do so in the next couple of weeks. We hope you can have a look at the implementations, or maybe at the implementation of the examples in your favourite approach. The implementations of the examples can be obtained via darcs get http://www.cs.uu.nl/~alexey/repos/generics/ We are planning to push these patches to the haskell.org darcs repository http://darcs.haskell.org/generics in the coming days, would that be a problem for any of you? We will push the code under a different directory called `comparison', so none of the existing files will be affected. We noticed that some of the pages on the haskell wiki about the libraries have disappeared after restructuring the libraries and tools pages. We've restored them. We're thinking about writing a paper for the Haskell Workshop describing our evaluations. The deadline for the HW is June 15, so that gives us a bit more than a month. Some of you contributed to the stuff that is on the webpage, or in the repository. So we can imagine some of you would like to coauthor such a paper. Please let us know if that is the case, so that we can give you permissions for the svn repository for the paper (which at the moment is almost empty). All the best, Johan From simonpj at microsoft.com Fri May 11 11:23:02 2007 From: simonpj at microsoft.com (Simon Peyton-Jones) Date: Fri May 11 11:19:52 2007 Subject: [Hs-Generics] Experiments and paper In-Reply-To: References: <5EBDF240-2548-41F8-8F84-BE6FD895224E@cs.uu.nl> Message-ID: | We're thinking about writing a paper for the Haskell Workshop | describing our evaluations. The deadline for the HW is June 15, so | that gives us a bit more than a month. Excellent forcing function! S From oleg at pobox.com Sun May 13 21:32:22 2007 From: oleg at pobox.com (oleg@pobox.com) Date: Sun May 13 21:33:08 2007 Subject: [Hs-Generics] `Smash-your-boilerplate' described [Was: Experiments and paper] Message-ID: <20070514013222.7B9B1AD3E@Adric.metnet.fnmoc.navy.mil> I have added the description of the `Smash-your-boilerplate' approach to the Generic programming area on Haskell wiki: http://www.haskell.org/haskellwiki/Applications_and_libraries/Generic_programming http://www.haskell.org/haskellwiki/Applications_and_libraries/Generic_programming/Smash That description was written back in November last year, and somehow wasn't posted. Johan Jeuring's recent message gave just the push it needed. > We're thinking about writing a paper for the Haskell Workshop > describing our evaluations. ... Some of you contributed to the > stuff that is on the webpage, or in the repository. So we can imagine > some of you would like to coauthor such a paper. I would be interested in doing that. From oleg at pobox.com Tue May 29 18:33:37 2007 From: oleg at pobox.com (Oleg Kiselyov) Date: Tue May 29 18:29:25 2007 Subject: [Hs-Generics] patch applied (generics): adding Smash Message-ID: <20070529223337.GA21153@cvs.haskell.org> Sat May 26 02:21:59 PDT 2007 oleg@okmij.org * adding Smash A ./comparison/Smash/ A ./comparison/Smash/CompanyDats.hs A ./comparison/Smash/FoldTree.hs A ./comparison/Smash/Syb4.hs A ./comparison/Smash/TreeDats.hs M ./comparison/TreeDatatype.hs +3 From oleg at pobox.com Tue May 29 18:33:38 2007 From: oleg at pobox.com (Oleg Kiselyov) Date: Tue May 29 18:29:26 2007 Subject: [Hs-Generics] patch applied (generics): add GShow and Paradize benchmarks Message-ID: <20070529223338.GA21173@cvs.haskell.org> Tue May 29 00:57:49 PDT 2007 oleg@okmij.org * add GShow and Paradize benchmarks M ./comparison/Smash/CompanyDats.hs -5 +5 A ./comparison/Smash/CompanyTDats.hs A ./comparison/Smash/GShow.hs A ./comparison/Smash/Paradise.hs M ./comparison/Smash/Syb4.hs -3 +39 From oleg at pobox.com Wed May 30 22:47:48 2007 From: oleg at pobox.com (Oleg Kiselyov) Date: Wed May 30 22:43:34 2007 Subject: [Hs-Generics] patch applied (generics): Smash the rest of your boilerplate. Message-ID: <20070531024748.GA19731@cvs.haskell.org> Wed May 30 18:33:23 PDT 2007 oleg@okmij.org * Smash the rest of your boilerplate. A ./comparison/SmashA/ A ./comparison/SmashA/Syb4A.hs From oleg at pobox.com Wed May 30 22:47:50 2007 From: oleg at pobox.com (Oleg Kiselyov) Date: Wed May 30 22:43:34 2007 Subject: [Hs-Generics] patch applied (generics): Added three tests: GShow, FoldTree, Paradize for SmashA. Message-ID: <20070531024750.GA19751@cvs.haskell.org> Wed May 30 19:44:19 PDT 2007 oleg@okmij.org * Added three tests: GShow, FoldTree, Paradize for SmashA. A ./comparison/SmashA/CompanyDats.hs A ./comparison/SmashA/FoldTree.hs A ./comparison/SmashA/GShow.hs A ./comparison/SmashA/Paradise.hs M ./comparison/SmashA/Syb4A.hs -1 +14 A ./comparison/SmashA/TreeDats.hs From alexey at cs.uu.nl Thu May 31 12:20:09 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:52 2007 Subject: [Hs-Generics] patch applied (generics): The reduce functions for SYB are more honest: no more explicit pattern matching. Message-ID: <20070531162009.GA16518@cvs.haskell.org> Wed May 30 09:42:35 PDT 2007 Alexey Rodriguez * The reduce functions for SYB are more honest: no more explicit pattern matching. M ./comparison/SYB1_2/Reduce.lhs -21 +34 From alexey at cs.uu.nl Thu May 31 12:20:11 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:53 2007 Subject: [Hs-Generics] patch applied (generics): grose equality not implemented in GL Message-ID: <20070531162011.GA16539@cvs.haskell.org> Thu May 31 08:26:52 PDT 2007 Alexey Rodriguez * grose equality not implemented in GL M ./comparison/GL/GEq.lhs -1 +4 From alexey at cs.uu.nl Thu May 31 12:20:12 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:54 2007 Subject: [Hs-Generics] patch applied (generics): Reduce tests local redefinitions better. Message-ID: <20070531162012.GA16553@cvs.haskell.org> Thu May 31 08:28:05 PDT 2007 Alexey Rodriguez * Reduce tests local redefinitions better. Previously, collect would gather all the |Int| values of a |BinTree Int|. But this could also collect |Int| values other than the Tree payload, i.e. weights, balancing info. So this test now uses a value of type |Tree a b| where the first argument is the element type and the second the weight type. The test requires that collect only gathers |a| values, excluding any content such as the weights even if |a=b| like in |Tree Int Int| LIGD, GL and GM have been updated. The rest must be done still. M ./comparison/GL/Reduce.lhs +13 A ./comparison/GL/TreeReps2.hs M ./comparison/GM/Reduce.lhs -16 +11 M ./comparison/GM/TreeReps.hs -2 +7 M ./comparison/LIGD/Reduce.lhs -18 +14 M ./comparison/LIGD/TreeReps.hs +10 M ./comparison/TestReduce.exp -1 +1 M ./comparison/TestReduce.lhs -7 +6 From alexey at cs.uu.nl Thu May 31 12:20:13 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:57 2007 Subject: [Hs-Generics] patch applied (generics): More grose error messages Message-ID: <20070531162013.GA16567@cvs.haskell.org> Thu May 31 08:44:30 PDT 2007 Alexey Rodriguez * More grose error messages M ./comparison/GM/GEq.lhs -1 +4 M ./comparison/RepLib/GEq.lhs +4 From alexey at cs.uu.nl Thu May 31 12:20:15 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:57 2007 Subject: [Hs-Generics] patch applied (generics): SYB1_2 implements the new Reduce test, but fails because of inherent limitations. Message-ID: <20070531162015.GA16581@cvs.haskell.org> Thu May 31 08:57:19 PDT 2007 Alexey Rodriguez * SYB1_2 implements the new Reduce test, but fails because of inherent limitations. M ./comparison/SYB1_2/Reduce.lhs -18 +7 M ./comparison/TestReduce.lhs +1 From alexey at cs.uu.nl Thu May 31 12:20:16 2007 From: alexey at cs.uu.nl (Alexey Rodriguez Yakushev) Date: Thu May 31 12:15:59 2007 Subject: [Hs-Generics] patch applied (generics): Spine fails nicely on Reduce Message-ID: <20070531162016.GA16595@cvs.haskell.org> Thu May 31 09:13:00 PDT 2007 Alexey Rodriguez * Spine fails nicely on Reduce M ./comparison/Spine/Reduce.lhs -14 +7 From oleg at pobox.com Thu May 31 20:16:31 2007 From: oleg at pobox.com (Oleg Kiselyov) Date: Thu May 31 20:12:13 2007 Subject: [Hs-Generics] patch applied (generics): Matching the behavior of Haskell's show. Message-ID: <20070601001631.GA32732@cvs.haskell.org> Thu May 31 17:13:38 PDT 2007 oleg@okmij.org * Matching the behavior of Haskell's show. M ./comparison/SmashA/GShow.hs -1 +38