Investigate ListSetOps module
It seems that the ListSetOps
module is very inefficient and there are probably better ways to do what it does elsewhere in GHC. This is an open ended ticket to:
- Investigate where functions from
ListSetOps
are used in GHC. - Investigate how easy it is to remove the usages of these functions.
- Remove the module if it is feasible to do so.
Seems like it might be good for a newcomer? Someone else can tag it so if they agree.
Trac metadata
Trac field | Value |
---|---|
Version | 8.0.1 |
Type | Task |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
- Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Relates to
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- Matthew Pickering changed weight to 5
changed weight to 5
- Matthew Pickering added Ttask Trac import labels
added Ttask Trac import labels
- Matthew Pickering changed title from Investivate ListSetOps module to Investigate ListSetOps module
changed title from Investivate ListSetOps module to Investigate ListSetOps module
- Author Developer
Pacak reports that he has 352760 "Over-long notElem in unionLists" messages for 500 modules
- Author Developer
Here are the examples from his log:
Feedback NewAboutYoursAPIHelp 4.1 KB, Plain text Soft wrap Raw text Duplicate 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 [directory-1.2.6.2, filepath-1.4.1.0, resourcet-1.1.7.5, foreign-var-0.1, iteratee-compress-0.3.4, lzma-0.0.0, mmorph-1.0.6, pipes-4.2.0, pipes-safe-2.2.4, relstuff-iteratee-0.2.4, Chart-1.8, ListLike-4.5, MemoTrie-0.6.4, StateVar-1.1.0.4, adjunctions-4.3, aeson-0.11.2.0, attoparsec-0.13.0.2, base-orphans-0.5.4, base64-bytestring-1.0.0.1, bifunctors-5.4.1, blaze-builder-0.4.0.2, bytes-0.15.2, case-insensitive-1.2.0.7, cereal-0.5.3.0, colour-2.3.3, comonad-5, contravariant-1.4, cookie-0.4.2.1, data-default-class-0.1.2.0, distributive-0.5.0.2, dlist-0.8, enummapset-th-0.6.1.0, exceptions-0.8.3, fmlist-0.9, free-4.12.4, hashable-1.2.4.0, hmatrix-0.18.0.0, hsc-extras-0.1.0.0, http-client-0.5.1, http-types-0.9.1, influxdb-0.10.0, iteratee-0.8.4.6, kan-extensions-5.0.1, kickchan-0.1.0.4, lens-4.14, lifted-base-0.2.3.8, linear-1.20.5, monad-control-1.0.1.0, mtl-2.2.1, network-2.6.2.1, network-uri-2.6.1.0, old-locale-1.0.0.7, operational-0.2.3.2, parallel-3.2.1.0, parsec-3.1.11, piecewise-polynomial-0.0.0.2, prelude-extras-0.4.0.3, profunctors-5.2, reflection-2.1.2, retry-0.7.4.1, scientific-0.3.4.9, semigroupoids-5.1, simconf-0.23.1.1, snappy-0.2.0.2, split-0.2.3.1, sqroll-0.0.0.6, stm-2.4.4.1, streaming-commons-0.1.15.5, tagged-0.8.5, thyme-0.3.5.5, transformers-base-0.4.4, transformers-compat-0.5.1.4, unix-2.7.2.0, unordered-containers-0.2.7.1, utf8-string-1.0.1.1, vector-space-0.10.3, vector-th-unbox-0.2.1.6, zlib-0.6.1.1, HUnit-1.3.1.1, QuickCheck-2.9.1, ansi-terminal-0.6.2.3, ansi-wl-pprint-0.6.7.3, beamable-0.2.0.0, binary-0.8.3.0, containers-0.5.7.1, ghc-boot-th-8.1, hostname-1.0, murmur-hash-0.1.0.9, pretty-1.1.3.3, primitive-0.6.1.0, random-1.1, regex-base-0.93.2, regex-posix-0.95.2, template-haskell-2.12.0.0, test-framework-0.8.1.1, test-framework-hunit-0.3.0.2, test-framework-quickcheck2-0.3.0.3, text-1.2.2.1, tf-random-0.5, time-1.6.0.1, transformers-0.5.2.0, vector-0.11.0.0, xml-1.3.14, hsyslog-4, array-0.5.1.1, base-4.9.0.0, bytestring-0.10.8.1, deepseq-1.4.2.0, ghc-prim-0.5.0.0, integer-gmp-1.0.0.1] [Journal.Types, Network.BeamServer.Internal, Data.MemoTrie, Data.Functor.Rep, Data.Attoparsec.Internal.Types, Data.Functor.Compose, Data.Functor.Product, Data.Functor.Sum, Data.Bifunctor.Biff, Data.Bifunctor.Clown, Data.Bifunctor.Flip, Data.Bifunctor.Join, Data.Bifunctor.Joker, Data.Bifunctor.Product, Data.Bifunctor.Sum, Data.Bifunctor.Tannen, Data.Bifunctor.Wrapped, Data.Bytes.Get, Data.Bytes.Signed, Data.Bytes.VarInt, Data.IntMap.Base, Data.IntSet.Base, Data.Map.Base, Data.Sequence, Data.Set.Base, Data.DList, GHC.LanguageExtensions.Type, Internal.Devel, Internal.Matrix, Internal.Modular, Internal.Numeric, Network.HTTP.Client, Database.InfluxDB.Types, Data.Functor.Day, Data.Functor.Yoneda, Control.Lens.At, Control.Lens.Internal.Indexed, Control.Lens.Reified, Control.Lens.Tuple, Control.Lens.Wrapped, Control.Lens.Zoom, Linear.V1, Linear.V2, Data.BeamableOrphans, Data.EnumMap.Lazy, Data.EnumMap.Strict, Prelude.Orphans, Control.Monad.Trans.Control, Network.URI, Numeric.Polynomial, Numeric.Polynomial.Log, Numeric.Polynomial.Piecewise, Text.PrettyPrint.Annotated.HughesPJ, Text.PrettyPrint.HughesPJ, Control.Monad.Primitive, Data.Profunctor.Rep, Control.Retry, Data.Tagged, Language.Haskell.TH.Syntax, Data.Text, Data.Text.Lazy, Data.Thyme.Calendar.Internal, Data.Thyme.Clock.Internal, Data.Thyme.Clock.TAI, Data.Thyme.Internal.Micro, Data.Thyme.LocalTime, Data.HashMap.Base, Data.HashSet, Data.Vector, Data.Vector.Primitive, Data.Vector.Storable, Data.Vector.Unboxed, Data.Vector.Unboxed.Base, Data.AffineSpace, Data.Basis, Data.VectorSpace, Codec.Compression.Zlib.Stream, System.Posix.Syslog, Control.Applicative, Data.Complex, Data.Either, Data.Functor.Const, Data.Functor.Identity, Data.List.NonEmpty, Data.Monoid, Data.Semigroup, Data.Type.Equality, Data.Version, Data.Void, GHC.Exts, GHC.Generics, GHC.IO.Exception, GHC.TypeLits] Pasted 36 minutes ago — Expires in 7 days
- Matthew Pickering mentioned in issue #13128
mentioned in issue #13128
- Ben Gamari added Pnormal label
added Pnormal label
- Ben Gamari marked this issue as related to #20016 (closed)
marked this issue as related to #20016 (closed)
Please register or sign in to reply