[xmonad] darcs patch: Generalize types of ManageHook functions, so they can ...

Adam Vogt vogt.adam at gmail.com
Tue Apr 12 18:08:23 CEST 2011


* On Monday, April 11 2011, Gwern Branwen wrote:

>On Wed, Feb 23, 2011 at 8:15 PM, Brandon S Allbery KF8NH
><allbery.b at gmail.com> wrote:
>> Wed Feb 23 19:30:21 EST 2011  Brandon S Allbery KF8NH <allbery.b at gmail.com>
>>  * Generalize types of ManageHook functions, so they can be reused
>
>Any thoughts from Core committers?

One downside of more polymorphic types is that you get less specific type 
errors, since <+> will no longer force the result to be ManageHook.  If all 
of a,b,c are somehow polymorphic (unlikely), defining the following but 
only using one in main will trigger the monomorphism restriction (mr):

> myManageHook = a <+> b
> myManageHook2 = composeAll [a,b,c]

The mr is already much more likely to happen from unused layouts, since 
many layouts do not specify that they manage Window.

But if there is a minor use for this patch (ex. a contrib patch or a 
config), it seems reasonable to push this.

--
Adam



More information about the xmonad mailing list