(\\) in Data.List uses foldl instead of foldl'
The list difference operator `(\\)` is currently defined in terms of `foldl`: https://hackage.haskell.org/package/base-4.9.0.0/docs/src/Data.OldList.html\#%5C%5C. Should it be using `foldl'` instead?
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | -------------- |
| Version | 8.0.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | libraries/base |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"(\\\\) in Data.List uses foldl instead of foldl'","status":"New","operating_system":"","component":"libraries/base","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"8.0.1","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"The list difference operator `(\\\\)` is currently defined in terms of `foldl`: https://hackage.haskell.org/package/base-4.9.0.0/docs/src/Data.OldList.html#%5C%5C. Should it be using `foldl'` instead?","type_of_failure":"OtherFailure","blocking":[]} -->
issue