Early draft spec of Strict language pragma

Simon Peyton Jones simonpj at microsoft.com
Fri Jul 25 12:31:44 UTC 2014


I suggest starting with the proposed improvements to 
	let !pat = rhs 

* Remove the stuff in TcBinds that forces such things to be non-recursive and monomorphic -- ie bangs no longer affect type checking.

* In DsBinds, add the appropriate seqs.   Take a look at DsExpr.ds_val_bind and see how you get on

Simon

| -----Original Message-----
| From: Johan Tibell [mailto:johan.tibell at gmail.com]
| Sent: 25 July 2014 12:49
| To: Simon Peyton Jones
| Cc: ghc-devs at haskell.org; Duncan Coutts
| Subject: Re: Early draft spec of Strict language pragma
| 
| Thanks a lot Simon.
| 
| Re top-level bindings:
| 
|    I agree. There's no good time to force CAFs so they'll need to be
| forced on first use.
| 
| Re newtypes:
| 
|    I agree. Pattern matching on newtypes should be strict.
| 
| Implementation:
| 
| Where do I get started? I think we looked at some code together during
| the call, but I forgot what it was? Any good identifiers to grep for?
| 
| On Fri, Jul 25, 2014 at 11:03 AM, Simon Peyton Jones
| <simonpj at microsoft.com> wrote:
| > OK I have made extensive edits to
| >    https://ghc.haskell.org/trac/ghc/wiki/StrictPragma
| >
| > You might want to check it through.
| >
| > Simon
| >


More information about the ghc-devs mailing list