diff options
author | David Feuer <david.feuer@gmail.com> | 2018-02-12 20:01:56 -0500 |
---|---|---|
committer | David Feuer <David.Feuer@gmail.com> | 2018-02-12 20:01:57 -0500 |
commit | c9a88db3ac4f1c3e97e3492ebe076f2df6463540 (patch) | |
tree | af4cbdabd0f62b490c21b7a4bd38440221ba4dff | |
parent | 583f561c285d1742b7e73128fd3331a49b87ec75 (diff) | |
download | haskell-c9a88db3ac4f1c3e97e3492ebe076f2df6463540.tar.gz |
Make ($!) representation-polymorphic
Now that `($)` is representation-polymorphic, `($!)` should
surely follow suit.
Reviewers: hvr, bgamari, simonpj
Reviewed By: bgamari, simonpj
Subscribers: simonpj, rwbarton, thomie, carter
Differential Revision: https://phabricator.haskell.org/D4382
-rw-r--r-- | docs/users_guide/8.6.1-notes.rst | 2 | ||||
-rw-r--r-- | libraries/base/GHC/Base.hs | 4 | ||||
-rw-r--r-- | libraries/base/changelog.md | 4 |
3 files changed, 8 insertions, 2 deletions
diff --git a/docs/users_guide/8.6.1-notes.rst b/docs/users_guide/8.6.1-notes.rst index c17664f1ae..e844ab6b2a 100644 --- a/docs/users_guide/8.6.1-notes.rst +++ b/docs/users_guide/8.6.1-notes.rst @@ -49,6 +49,8 @@ Template Haskell ``base`` library ~~~~~~~~~~~~~~~~ +``($!)`` is now representation-polymorphic like ``($)``. + Build system ~~~~~~~~~~~~ diff --git a/libraries/base/GHC/Base.hs b/libraries/base/GHC/Base.hs index 7875fef3c1..17d4151d7c 100644 --- a/libraries/base/GHC/Base.hs +++ b/libraries/base/GHC/Base.hs @@ -1327,8 +1327,8 @@ f $ x = f x -- argument, evaluates the argument to weak head normal form (WHNF), then calls -- the function with that value. -($!) :: (a -> b) -> a -> b -f $! x = let !vx = x in f vx -- see #2273 +($!) :: forall r a (b :: TYPE r). (a -> b) -> a -> b +f $! x = let !vx = x in f vx -- see #2273 -- | @'until' p f@ yields the result of applying @f@ until @p@ holds. until :: (a -> Bool) -> (a -> a) -> a -> a diff --git a/libraries/base/changelog.md b/libraries/base/changelog.md index ad8767f72f..fe7e377860 100644 --- a/libraries/base/changelog.md +++ b/libraries/base/changelog.md @@ -1,5 +1,9 @@ # Changelog for [`base` package](http://hackage.haskell.org/package/base) +## 4.12.0.0 *TBA* + + * `($!)` is now representation-polymorphic like `($)`. + ## 4.11.1.0 *TBA* * `System.IO.openTempFile` is now thread-safe on Windows. |