Вы не можете подключить его напрямую, потому что типы не совпадают:
ghci>: t isFullscreen -?> doFullFloat isFullscreen -?> doFullFloat :: MaybeManageHook ghci>: t composeAll composeAll :: [ManageHook] -> ManageHook
Обратите внимание, однако
ghci>: t composeOne composeOne :: [MaybeManageHook] -> ManageHook
Это берет список управляющих хуков, которые могут запускаться или не выполняться, и объединяет их в одно действие.
MaybeManageHook
также хорошо вписывается в
* Main>: t MaybeToDefinite MaybeToDefinite :: MaybeManageHook -> ManageHook
Добавить либо
, [ maybeToDefinite (isFullscreen -?> doFullFloat) ]
или же
, [ composeOne [ isFullscreen -?> doFullFloat ] ]
к определению myManageHook
.