You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GHC 8.6 comes with an extension, “block arguments”, that entails a drastic change to the parser. You can find the change specification here, but the tl;dr is that you can now often omit parentheses and $ invocations associated with do blocks:
local f do
thing1
thing2
rather than
local f $ do
thing1
thing2
This has drastic effects on the grammar—in the words of the proposal author:
Unless a special care is taken, an implementation will add a large number of shift-reduce conflicts to the parser, due to the reliance on the meta-rule mentioned above
This is a nontrivial change, but it’s one we should ultimately make.
The text was updated successfully, but these errors were encountered:
GHC 8.6 comes with an extension, “block arguments”, that entails a drastic change to the parser. You can find the change specification here, but the tl;dr is that you can now often omit parentheses and
$
invocations associated withdo
blocks:rather than
This has drastic effects on the grammar—in the words of the proposal author:
This is a nontrivial change, but it’s one we should ultimately make.
The text was updated successfully, but these errors were encountered: