Ticket #1349 (new task)
Generalise the ! and UNPACK mechanism for data types, to unpack function arguments
| Reported by: | simonpj | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 7.6.2 |
| Component: | Compiler | Version: | 6.6.1 |
| Keywords: | Cc: | id@…, pho@…, bos@…, johan.tibell@…, kolmodin@…, slyfox@…, coreyoconnor@…, illissius@…, hackage.haskell.org@… | |
| Operating System: | Unknown/Multiple | Architecture: | Unknown/Multiple |
| Type of failure: | None/Unknown | Difficulty: | Unknown |
| Test Case: | Blocked By: | ||
| Blocking: | Related Tickets: |
Description (last modified by simonpj) (diff)
See this thread:
Briefly the idea is to allow
data T = MkT (!Int -> Bool)
to make a MkT hold strict functions only. Anyone unpacking a MkT can assume the function is strict; and anyone building a MkT gets a strictness wrapper aound whatever function they supply, so even if they supply a lazy function, it's made strict.
Seems like a natural generalisation of the existing strictness and UNPACK mechanism for data types.
Lots of details in the thread above.
Simon
Change History
Note: See
TracTickets for help on using
tickets.
