Re: [GHC] #7015: Add support for 'static'

#7015: Add support for 'static' -------------------------------------+------------------------------------- Reporter: edsko | Owner: Type: feature | Status: patch request | Milestone: 7.10.1 Priority: normal | Version: 7.4.2 Component: Compiler | Keywords: Resolution: | Architecture: Unknown/Multiple Operating System: | Difficulty: Unknown Unknown/Multiple | Blocked By: Type of failure: | Related Tickets: None/Unknown | Test Case: | Blocking: | Differential Revisions: Phab:D119 | -------------------------------------+------------------------------------- Comment (by facundo.dominguez): Forbidding polymorphic types in the static form makes it less obvious defining a combinator like the following: {{{ staticCompose :: Static (b -> c) -> Static (a -> b) -> Static (a -> c) staticCompose sf sg = staticLabel (static (.)) `staticApply` sf `staticApply` sg }}} This is actually defined in the version of distributed-static in hackage: {{{ composeStatic :: (Typeable a, Typeable b, Typeable c) => Static ((b -> c) -> (a -> b) -> a -> c) composeStatic = staticLabel "$compose" staticCompose :: (Typeable a, Typeable b, Typeable c) => Static (b -> c) -> Static (a -> b) -> Static (a -> c) staticCompose g f = composeStatic `staticApply` g `staticApply` f }}} It doesn't mean that we can't live with the restriction, but we will have to figure out the impact upwards before committing, I guess. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/7015#comment:28 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC