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
Copy file name to clipboardExpand all lines: proposals/accepted/051-ghc-base-libraries.rst
+16-1Lines changed: 16 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -46,7 +46,7 @@ responsibilities (e.g. who curates which package),
46
46
and processes (e.g. who should be consulted and when)
47
47
that support both CLC and the GHC team to follow their respective goals without tripping over each other.
48
48
49
-
The proposal is based on `HF Proposal 47 <https://github.com/haskellfoundation/tech-proposals/pull/47>`__, but is independent of it.
49
+
The proposal is based on `HF Proposal #47 <https://github.com/haskellfoundation/tech-proposals/pull/47>`__, but is independent of it.
50
50
You can find more background in `CLC issue #146 <https://github.com/haskell/core-libraries-committee/issues/146>`__.
51
51
52
52
Things we all agree about
@@ -310,6 +310,21 @@ Agreed answer: no.
310
310
That is, we do not make it best-practice for library authors to give ``C`` instances for types exported only by ``ghc-experimental``.
311
311
(They can, of course, but it's fine not to.)
312
312
313
+
Reinstallable base
314
+
------------------
315
+
316
+
At the moment each version of GHC comes with a fixed, immutable version of ``base``.
317
+
Some members of the community would like to be able to upgrade/re-install the ``base`` package without changing the version of GHC.
318
+
(For example, see `this Haskell Discourse thread <https://discourse.haskell.org/t/pre-pre-hftp-decoupling-base-and-ghc/3727>`__ and the earlier versions of now-closed `HF Proposal #47 <https://github.com/haskellfoundation/tech-proposals/pull/47>`__.)
319
+
The goal of such reinstalling would be both to (a) support multiple versions of ``base`` with the same GHC, and (b) support multiple versions of GHC with the same ``base``.
320
+
321
+
By separating ``ghc-internals`` from ``base``, this proposal may make the reinstallable ``base`` project one step more feasible.
322
+
In particular, by corralling the code that is intimately tied to a specific version of GHC in ``ghc-internals``, one might hope the code left in ``base`` would be portable across versions of GHC with no extra effort.
323
+
324
+
Nevertheless, *supporting reinstallable ``base`` is not a goal of this proposal*, nor is it an immediate consequence of it.
325
+
There is not yet agreement that this is a goal worth pursuing.
326
+
What code should be moved from ``base`` to ``ghc-internals`` is also out of scope (as described above in the proposal proper), and without knowing those details, we cannot know whether ``base`` would incidentally become more portable either.
0 commit comments