Closed GoogleCodeExporter closed 9 years ago
problem still persists, but I get
The data decl: Token has a contructor named 'L' or 'R'.
These names are reserved for the sum type. L:: a -> (a+b), R:: b -> (a+b)
when loading that file.
Original comment by ggr...@gmail.com
on 9 Nov 2007 at 7:05
test file fixed
Original comment by ggr...@gmail.com
on 18 Nov 2007 at 6:36
Original comment by ggr...@gmail.com
on 10 Jan 2011 at 3:52
Looks like the 'Exp' constructor 'Do' is special cased in many places to always
access the global 'bind' and 'fail'.
I believe this is wrong.
We should record the current expressions for 'bind' and 'fail' in 'Do' and
bring them into scope like with a 'Let' inside. Also this makes it much easier
to deal with situations when we go under brackets.
vvvvvvvv
| Do (Exp, Exp) [Stmt Pat Exp Dec] -- { do { p <- e1; e2 } }
Original comment by ggr...@gmail.com
on 10 Jan 2011 at 5:12
As of r552 we have a functional implementation of this issue on
branches/issue-20.
The 2 remaining FIXMEs (1 x Infer.hs and 2 x LangEval.hs) may be deferred to
later.
Original comment by ggr...@gmail.com
on 11 Jan 2011 at 12:05
As of r563, only one FIXME (in Infer.hs) remains. But that is not a regression,
and I have not succeeded to create a snippet that would exhibit a problem with
the current approach. If we are lucky, we do not have to check the (bind,infer)
from the 'Do' at all, and checking the in-scope (Global "bind", Global "fail")
suffices.
Original comment by ggr...@gmail.com
on 11 Jan 2011 at 11:53
Merged from branch as r566.
Original comment by ggr...@gmail.com
on 11 Jan 2011 at 12:50
Original issue reported on code.google.com by
ggr...@gmail.com
on 12 Jul 2007 at 12:53