[Git][ghc/ghc][wip/substitution-via-mapper] Implement substitution via TyCoMapper
Simon Peyton Jones pushed to branch wip/substitution-via-mapper at Glasgow Haskell Compiler / GHC Commits: b25c9866 by Simon Peyton Jones at 2026-08-03T17:00:50+01:00 Implement substitution via TyCoMapper This is a significant bit of refactoring. The dependencies look like this, where each module depends on one above Defines Needs --------------------------------------------------- GHC.Core.TyCo.Rep Type, Coercion TyCoFolder GHC.Core.TyCo.FVs Free-var finders TyCoFolder GHC.Core.TyCo.Make Lots of mkX functions Free vars TyCoMapper GHC.Core.TyCo.Subst Substitution TyCoMapper, mkX functions GHC.Core.Type coreView, typeKind Substitution coercionKind GHC.Core.TyCo.Compare Comparison coreView Some `mkX` functions (such as `mkLRCo`, `mkInstCo`, `mkCastTy`) use substitution, and so are defined in GHC.Core.Type via a hs-boot import. - - - - - 31 changed files: - compiler/GHC/Builtin/Types/Prim.hs - compiler/GHC/Core/Coercion.hs - compiler/GHC/Core/Coercion.hs-boot - compiler/GHC/Core/Seq.hs - compiler/GHC/Core/TyCo/FVs.hs - + compiler/GHC/Core/TyCo/Make.hs - + compiler/GHC/Core/TyCo/Make.hs-boot - compiler/GHC/Core/TyCo/Rep.hs - compiler/GHC/Core/TyCo/Subst.hs - compiler/GHC/Core/Type.hs - compiler/GHC/Core/Type.hs-boot - compiler/GHC/Driver/Main/Compile.hs - compiler/GHC/Iface/Syntax.hs - compiler/GHC/Stg/EnforceEpt/TagSig.hs - compiler/GHC/Tc/Gen/App.hs - compiler/GHC/Tc/TyCl.hs - compiler/GHC/Tc/Utils/Unify.hs - compiler/GHC/Tc/Zonk/TcType.hs - compiler/GHC/Tc/Zonk/Type.hs - compiler/GHC/Types/Arity.hs - compiler/GHC/Types/Basic.hs - compiler/GHC/Types/Cpr.hs - compiler/GHC/Types/Demand.hs - compiler/GHC/Types/Name/Env.hs - compiler/GHC/Types/Name/Occurrence.hs - compiler/GHC/Types/Unique/FM.hs - compiler/GHC/Types/Unique/Map.hs - compiler/GHC/Types/Unique/Set.hs - compiler/GHC/Types/Var/Set.hs - compiler/GHC/Utils/Binary.hs - compiler/GHC/Utils/Outputable.hs The diff was not included because it is too large. View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/b25c9866578dd4c0ca875aa9369e3ead... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/b25c9866578dd4c0ca875aa9369e3ead... You're receiving this email because of your account on gitlab.haskell.org. Manage all notifications: https://gitlab.haskell.org/-/profile/notifications | Help: https://gitlab.haskell.org/help
participants (1)
-
Simon Peyton Jones (@simonpj)