nd that ‘happy’
> generates a shift-reduce parser that does not backtrack. The ‘lexerDbg’
> output is useful to see how far the parser got. And there’s also this command
> in case you want to go low level and inspect the state machine generated by
> ‘happy’:
>
>happy -
Thanks a lot Vlad and Shayne, that indeed did the trick!
Out of curiosity, how could I have figured out that this was the culprit? The
parse
error I got was a bit puzzling, and I couldn't find any flags that would give
more information
(I think I was looking for the parser equivalent of -ddump-t
Hello devs,
I am trying to modify GHC's parser to allow the following syntax in types:
a -> @m b
but my naive attempt was unsuccessful:
type :: { LHsType GhcPs }
: btype{ $1 }
| btype '->' PREFIX_AT btype ctype ...
For example when I try to parse the
Hi chessai,
It is indeed not possible in source Haskell at the moment.
Cheers,
Csongor
> On 7 Apr 2019, at 17:41, chessai . wrote:
>
> Hi devs,
>
> Is it possible to programmatically recover the role of a type variable?
>
> Or, possibly, a list of the roles of the type variables from left to
Indeed, it's a lot faster with these flags, thanks for the tip!
Best,
Csongor
> On 7 Jun 2018, at 16:47, Simon Marlow wrote:
>
> For loading large amounts of code into GHCi, you want to add -j +RTS
> -A128m where is the number of cores on your machine. We've found that
> parallel compilation
Right, but I think Gabor's suggestion here is for type checking of the pattern
to be done first, and then capturing the coercions
that were brought into scope by the pattern match.
data Foo a where
Bar :: Foo [a]
foo :: Foo a -> ()
foo Bar = -- we know (a ~ [b]) here, for some b
The pattern