
#15532: Relaxing Levity-Polymorphic Binder Check for Lifted vs Unlifted pointers -------------------------------------+------------------------------------- Reporter: andrewthad | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.4.3 Resolution: | Keywords: | LevityPolymorphism Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: 14917 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by goldfire): If the levity were retained at runtime (that is, we use a singleton levity), then it is reasonable to case on the levity when deciding whether to be call-by-name or call-by-value. For functions, this could be arranged today via a type-class construction. Not sure how to do it for data constructors, but it's conceivable to add such a thing. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15532#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler