Version 35 (modified by trac, 7 years ago) (diff)

Haskell' Status Page

DO NOT EDIT! This page is automatically generated by

Accepted Proposals

Remove n+k patterns Expressions see RemovalCandidates
KindAnnotations #84 Declarations and Bindings
ScopedTypeVariables #67 #81 Declarations and Bindings specification of syntax that binds type variables
NondecreasingIndentation #53 Syntax Reference
RelaxedDependencyAnalysis #65 Declarations and Bindings
remove FixityResolution from the context-free grammar #30 Expressions
add InfixTypeConstructors #78 Declarations and Bindings
add EmptyDataDeclarations #25 Declarations and Bindings dependency on KindAnnotations
add HierarchicalModules #24 Modules See addendum
add ExistentialQuantification (existential components) #26 Declarations and Bindings syntax of existentials
add PolymorphicComponents #57 Declarations and Bindings Draft available
dependency on Rank2Types or RankNTypes
add RankNTypes or Rank2Types #60 Declarations and Bindings RankN or Rank2?
add multi-parameter type classes (MultiParamTypeClasses) #49 Declarations and Bindings see MultiParamTypeClassesDilemma
add ForeignFunctionInterface #35 FFI
add Concurrency #74 Concurrency draft text: Concurrency/DraftReportText

Completed Proposals

DoAndIfThenElse #23 Syntax Reference
add PatternGuards #56 Expressions
fix comment syntax grammar (LineCommentSyntax) #42 Lexical

Rejected Proposals

Remove string gaps Lexical
Class aliases #101 Declarations and Bindings
add implicit parameters #38 Declarations and Bindings
allow tuple sections #69 Expressions
add MultiWayIf #77 Expressions
add Linear implicit params #43 Declarations and Bindings
add views #73 Declarations and Bindings
control export and import of class instances #19 Modules
Allow import declarations anywhere at the top level #82 Modules
Replace named fields with an extensible record system #100 N/A
Move existing named field (record) system to an addendum #99 N/A
Require explicit quantification on all expression bound type signatures #28 Expressions
add LambdaCase #41 Expressions
add MagicUnderscore #44 Expressions
add Parallel List comprehensions #55 Expressions
allow data constructors to be exported and imported readonly #62 Modules
add PartialTypeAnnotations #86 Declarations and Bindings
add Arrows #13 Expressions
make Underscore caseless #72 Lexical treatment of underscore-only identifiers
ImpreciseExceptions #39 Libraries

Undecided Proposals

DerivingInstances Declarations and Bindings
Simpler layout specification Syntax Reference
Liberalised type synonyms Declarations and Bindings subsumes TypeSynonymInstances
Standalone Derived Instances Declarations and Bindings
Disambiguate record fields Expressions GHC Users Guide
RecordPatternMatching Expressions
Overload string literals Expressions
Remove upper/lower case distinction Lexical
Polymorphic record update take II Expressions
Record abstraction tweak Declarations and Bindings
Open statement Expressions
Polymorphic record update Expressions
First-class record syntax Declarations and Bindings
Label-based pattern-matching Expressions
updating non-existant record fields Expressions
Re-allow record punning Expressions
require space around dot as operator Lexical See also #20, QualifiedIdentifiers
See also CompositionAsDot
Remove class context on data definitions Declarations and Bindings see RemovalCandidates
Remove ~ patterns Expressions see RemovalCandidates
namespace cleanup: TagExportsWithNamespace, ModuleSystem Modules
add closed classes #18 Declarations and Bindings
add Associated Types #14 Declarations and Bindings
add FunctionalDependencies #36 Declarations and Bindings
add overlapping or incoherent instances #54 Declarations and Bindings
Allow Undecidable Instances #71 Declarations and Bindings
add GADTs #37 Declarations and Bindings
add recursive do syntax #64 Expressions
Eliminate tabs #68 Lexical
relax restriction on signatures of class methods #17 Declarations and Bindings
unified and extensible annotations #88 Compiler Pragmas
Reform the MonomorphismRestriction #80 Declarations and Bindings
add First Class Labels #92 Declarations and Bindings
add Blockable #33 FFI
add ForeignData #34 FFI
clarify module system proposals #48 Modules
get rid of unary '-' operator #50 Expressions
Prelude re-organisation proposal #58 Standard Prelude
improve module interfaces #95 Modules
Replace the array indexing operator, '!' #96 Libraries
replace the Read class #61 Libraries
Eliminate . as an operator #20 Lexical
Natural numbers #79 Predefined Types and Classes
add Flexible Contexts #31 Declarations and Bindings
add a binary IO interface #15 Libraries
standardize the System.FilePath? module #89 Libraries
more liberal kind inference #85 Declarations and Bindings
MonomorphicPatternBindings #103 Declarations and Bindings treatment of pattern bindings with explicit type signatures
improve Defaulting rules #21 Declarations and Bindings scope of default clauses
impact on existing defaults
generalized deriving for newtype (NewtypeDeriving) #52 Declarations and Bindings specification that does not use the term "the same representation"
overlap with TypeSynonymInstances
BangPatterns #76 Expressions top-level bang patterns
interaction with ! as an operator
bang-pattern polymorphism
existentials and bang patterns
interaction with MonomorphicPatternBindings
add NewPragmas #51 Compiler Pragmas choose specific pragmas to standardize
FlexibleInstances #32 Declarations and Bindings choice of instance conditions for termination of typechecking
poor interaction with NewtypeDeriving?
fix the lexical syntax for QualifiedIdentifiers #39 Lexical permit qualified identifiers in definitions?
interaction with CompositionAsDot
allow TypeSynonymInstances #70 Declarations and Bindings superseded by NewtypeDeriving?
Not very useful without FlexibleInstances and/or OverlappingInstances
DoAndIfThenElse for case-statements too? Syntax Reference