QuasiQuotation library for programmatic generation of Javascript code. (http://www.haskell.org/haskellwiki/Jmacro)
#5jmacro-rpc-0.3.2 build failure with ghc 8.4
Same story wrt semigroups. As seen on the Stackage build server:
[2 of 2] Compiling Network.JMacroRPC.Panels ( Network/JMacroRPC/Panels.hs, dist/
build/Network/JMacroRPC/Panels.o )
Network/JMacroRPC/Panels.hs:145:10: error:
• No instance for (Semigroup Event)
arising from the superclasses of an instance declaration
• In the instance declaration for ‘Monoid Event’
|
145 | instance Monoid Event where
| ^^^^^^^^^^^^
Network/JMacroRPC/Panels.hs:279:10: error:
• No instance for (Semigroup PageSlice)
arising from the superclasses of an instance declaration
• In the instance declaration for ‘Monoid PageSlice’
|
279 | instance Monoid PageSlice where
| ^^^^^^^^^^^^^^^^
Network/JMacroRPC/Panels.hs:292:10: error:
• Could not deduce (Semigroup (Panel m))
arising from the superclasses of an instance declaration
from the context: Monad m
bound by the instance declaration
at Network/JMacroRPC/Panels.hs:292:10-36
• In the instance declaration for ‘Monoid (Panel m)’
|
292 | instance Monad m => Monoid (Panel m) where
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Network/JMacroRPC/Panels.hs:294:55: error: [26/2396]
• Could not deduce (Semigroup PageSlice) arising from a use of ‘<>’
from the context: Monad m
bound by the instance declaration
at Network/JMacroRPC/Panels.hs:292:10-36
• In the first argument of ‘liftM2’, namely ‘(<>)’
In the first argument of ‘Panel’, namely ‘(liftM2 (<>) d d')’
In the expression: Panel (liftM2 (<>) d d') (liftM2 (<>) u u')
|
294 | mappend (Panel d u) (Panel d' u') = Panel (liftM2 (<>) d d') (liftM2 (
<>) u u')
| ^^^^
Network/JMacroRPC/Panels.hs:841:53: error:
• Could not deduce (Semigroup (Panel m)) arising from a use of ‘<>’
from the context: (Monad m, Functor m)
bound by the type signature for:
calcPanel :: forall (m :: * -> *). (Monad m, Functor m) => Pa
nel m
at Network/JMacroRPC/Panels.hs:823:1-44
• In the expression:
b <>
onEvent
e
(withSample cmdstoresig
$ \ cmdstoreval
-> withSample displaysig
$ \ dispval -> withSample storesig $ \ storeval -> ...
)
In the second argument of ‘($)’, namely
‘\ e b
-> b <>
onEvent
e
(withSample cmdstoresig
$ \ cmdstoreval -> withSample displaysig $ \ dispval -> .
..)’
In the expression:
button "="
$ \ e b
-> b <>
onEvent
e
(withSample cmdstoresig
$ \ cmdstoreval -> withSample displaysig $ \ dispval -
> ...)
|
841 | equalButton = button "=" $ \ e b -> b <> onEvent e
| ^^^^^^^^^^^^^^^...