wiki:RemovalCandidates

Version 17 (modified by ross@…, 8 years ago) (diff)

--

These are features which we might want to consider for removal or replacement with something better/cleaner.

  • eliminate tab stops in layout
  • n + k patterns
    • For removal: we have been saying it will happen for a while now, we should make good on it.
  • NegativeSyntax
  • ~ patterns
    • For removal: can be simulated with 'where' or 'let' clauses
    • Against removal:
      • fine control of strictness can require careful placement of these and let/where would obscure what is happening and get very verbose with nested ~ patterns.
      • are used in several safe programing idioms that would not be workroundable.
  • the monomorphism restriction
  • classes (no really, there are people who advocate this!)
  • class contexts on data definitions
    • For removal: they add no extra useful expressivity that is not already present in the function signatures which use the datatype.
  • the Prelude (or at least, seriously trim it to the minimum possible)
  • Defaulting
  • record syntax (see also ExistingRecords)