All accepted GHC Proposals¶
- GHC Proposals
- 1 Principles for GHC
- A Proposal for Proposals
- Overloaded Record Fields
- Revise Levity Polymorphism
- Declare
Constraint
is not apart fromType
- Make unboxed tuple patterns lazy / warn on unbanged strict patterns
- Hexadecimal Floats in Haskell
- Pattern synonym construction function signatures
- Standalone kind signatures
- More explicit
forall
s - Overhaul deriving instances for empty data types
- Require namespacing fixity declarations for type names and
WARNING
/DEPRECATED
pragmas - Extend
-Wall
withincomplete-uni-patterns
andincomplete-record-updates
- Add more fixed size primitive types, like
Int8#/Word8#
- Underscores in Numeric Literals
- Deprecating STM invariant mechanism
- Type-level type applications
- A syntax for visible dependent quantification
- Embrace
Type :: Type
- BlockArguments Extension
- As patterns in pattern synonyms
- Unlifted Newtypes
- Explicit specificity in type variable binders
- Treat kind variables and type variables identically in
forall
- Define Kinds Without Promotion
- Source plugins
- Refining the plugin recompilation API
- Quantified Constraints
- 1 Linear Types
- 2 Current status
- 3 Motivation
- 4 Proposed Change Specification
- 5 Effect and Interactions
- 6 Costs and Drawbacks
- 7 Alternatives
- 8 The Core corner
- 9 Unresolved questions
- 10 Implementation Plan
- UnliftedArray
- Deriving Via
- Offer more array resizing primitives
- Type Annotated Quoters
- Type Applications in Patterns
- Allow ScopedTypeVariables to refer to types
- Deprecating Exports
- Remove the * kind syntax
- Replace the
atomicModifyMutVar#
primop - Binding type variables in lambda-expressions
- Add
setField
toHasField
- NoFieldSelectors
- Remove an undocumented StableName guarantee
- List instances for a type in GHCi
- Make rebindable
fail
work with overloaded strings - Unrestricted Overloaded Labels
- The dot type operator
- Lower precedence for {-# UNPACK #-}
- Meaning-preserving parsing rules for SCC annotations
- Clean up printing of foralls
- Allow
qualified
to follow module name - Make
forall
a keyword - Make Q (TExp a) into a newtype
- Pointer Rep
- Levity-polymorphic Lift
- MINIMAL should warn about extra definitions
- Qualified do
- Function Result Type Signatures
- Whitespace-sensitive operator parsing (~, !, @, $, $$, -)
- Ambiguous Type per-signature pragma
- Compile with threaded RTS by default
- Unsaturated Type Families
- Overloaded Quotations
- Unlifted Datatypes
- Quick Look Impredicativity
- Add winapi pseudo calling convention
- 1 Visible forall in types of terms, and types in terms
- Record Dot Syntax
-XNoImplicitForAll
,-XNoPatternSignatureBinds
- Simplify subsumption
\cases
- Multi-way lambda expressions- Delimited continuation primops
- Enable
-Wnoncanonical-monad-instances
and-Wnoncanonical-monoid-instances
by default - Defaults and backpack/hs-boot
- 1 Decorate exceptions with backtrace information
- Negative Literals Improved
- Unify
Nat
andNatural
- DuplicateRecordFields without ambiguous field access
- Add
sumToTag#
primop - Syntax for Modifiers: a generalization of linear-types syntax
- Export
~
fromData.Type.Equality
- The GHC20XX process
- 1 Design for Dependent Types
- GHC 2021
- The
Char
kind - Stable GADT constructor syntax
- Cleanup lexical structure of numbers and identifiers
- 1 Generalized, named, and exportable
default
declarations - OPAQUE pragma
- Invisible binders in type declarations
- 1 Unsatisfiable
- 1 Fine-Grained Unused Warnings
- 1 Modern Scoped Type Variables
- Sized primitive literals
- 1 Non-punning list and tuple syntax
- 1 Unicode Ellipsis
- 1 Allow expressions in SPECIALISE pragmas
- Allow record wildcards for empty records
- Deep Subsumption
- 1.
NoFieldSelector
s as a datatype and field annotation - 1 Add warning for incomplete record selectors
- 1 Generalising Type and Constraint
- 1 Or Patterns
- 1 jsem: parallelism semaphores for GHC
- 1
WARNING
pragmas with categories - 1 Disallow constraints in kinds
- 1 Higher Order Patterns in Rewrite Rules
- 1 Multiline strings
- 1 Deprecated instances
- 1 Namespace-specified imports
- 1 HasField redesign
- 1 Split
-Wunused-imports
- Extension Lifecycle Framework
- Change the semantics of -fhpc
- 1 GHC2024
- 1 Meaningful main return types
- 1 Fix quantification order for (a op b) and (a %m -> b)
- 1 Import shadowing
- GHC Steering Committee Bylaws
- How to Accept a Proposal
- Haskell committee guidelines for respectful communication