I find PFunctor/QFunctor finer grained than is tasteful. Alas, they are 
necessary for inference for first/second in practice unless you require the 
Bifunctor to determine the category of both of its arguments. The hask package 
is exploring other ways to maintain inference.

If you try to actually use the current categories package without them, well, 
nothing infers.

Sent from my iPad

> On Sep 15, 2014, at 11:32 AM, Sophie Taylor <[email protected]> wrote:
> 
> >Hi Sophie,
> 
> >In your proposal draft, I am missing the rationale part.
> Yeah, I'm still writing it - I definitely need to expand that a bit mor.
> >Do we need *all* of these classes in base in order to desugar proc? Can
> you demonstrate why they are needed? Or will something simpler suffice?
> 
> I think I might remove the binoidal class, and remove the PFunctor/QFunctor 
> classes - I included them because I usually find finer grained class 
> hierarchies to be more tasteful; but it probably would make it more 
> frustrating to implement an arrow, for example.
> With SMC classes, proc notation can be desugared to remove a LOT of calls to 
> arr, which allows more fine-grained RULES optimisations to take place, and 
> additional work such as the ModalTypes extension in Adam Megacz Joseph's 
> thesis to be much more straightforward.
> _______________________________________________
> ghc-devs mailing list
> [email protected]
> http://www.haskell.org/mailman/listinfo/ghc-devs
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to