| In the comment under collectPatsBinders, ignoring dictionary binders in
| ConPatOut is justified in terms of lazy patterns.  Presumably there is
| more to this story, because if such dictionaries are guaranteed to be
| unused it would be safe for arrows too.

They are only unused in lazy patterns, but not for strict ones.  Indeed, they 
should be *empty* for lazy patterns; so I guess it'd be safe to gather the dict 
bindings too, if that makes it easier for you.

| > Hmm.  Would it be possible to desugar in the ordinary way first, and
| > only *then* run over the result doing the proc-isng stuff?  Then you
| > would not have to deal with nested patterns etc.
|
| Desugar Core?  Hmm.  Binding sites might be a bit easier to find,
| but we'd also need to expand the Core language, not just with proc,
| but with an arrow type system.  That would make it hard to share the
| desugaring too, I imagine.

I was wondering about an encoding of arrow stuff into Core using 
pseudo-function application of (-<).  Probably doesn't work.  Definitely don't 
want to extend Core!

S

_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to