User loginNavigation 
Reasonig about combinators (a lambdacalculus puzzle on composing compositions)In Haskell, \f > \g > (((f.).).) g is equivalent to \x y z > f (g x y z), and more generally, \f > \g > (((f.)... .) g with n compositions is equivalent to x1 ... xn > f (g x1 ... xn) with n arguments. But what is \f > \g > (.(.(.f))) g? Can you generalize? What about arbitrary left and right compositions, like (.(.((.f).)))? Can a general description be given? I am interested in your strategies in tackling such questions. I find reasoning about combinators quickly overwhelming. Sure, I can mechanically reduce a lambda term to normal form, but it's usually not that insightful. Is the key once more abstraction, through understanding of combinators at a high operational level? Any pointers to resources for reasoning about combinators would be appreciated. By namin at 20090106 04:43  LtU Forum  previous forum topic  next forum topic  other blogs  2712 reads

Browse archivesActive forum topics 
Recent comments
1 day 12 hours ago
1 day 15 hours ago
3 days 10 hours ago
3 days 11 hours ago
3 days 17 hours ago
3 days 19 hours ago
4 days 3 hours ago
4 days 3 hours ago
4 days 4 hours ago
4 days 5 hours ago