Changes between Version 1 and Version 2 of Organizing_The_Proposals


Ignore:
Timestamp:
Apr 13, 2007 12:55:57 AM (8 years ago)
Author:
diatchki
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Organizing_The_Proposals

    v1 v2  
    33This page groups the various proposals for Haskell' into four distinct categories.
    44
     5
    56== Syntax ==
    67
    7 This category contains proposal that primarily addresses
    8 issues of lexing and parsing.  Of particular importance are
    9 questions of ambiguity and understandability.
     8These proposals primarily addresses issues of lexing and parsing.
     9Of particular importance are questions of ambiguity and understandability.
    1010
    1111 * #23 [wiki:DoAndIfThenElse if-then-else in do notation]
     
    1414
    1515 * #53 [wiki:NondecreasingIndentation Non-decreasing indentation]
     16 * #39 [wiki:QualifiedIdentifiers Lexical syntax of qualified identifiers]
     17 * #72 [wiki:Underscore Make _ caseless]
     18 * #30 [wiki:FixityResolution Remove from the context-free grammar]
    1619
    1720
    18  * fix lexical syntax for qualified idetnifiers
    19  * make _ caseless
    20  * fixity resolution
     21== Language Convenience ==
    2122
    22 
    23 = Language Convenience =
    24 
    25 Primarily provides a convinient way to do
    26 something that we could pretty much do something similar
    27 previously.
    28 
    29   (questions about usability and readability)
     23These proposals provide a more convenient way to do something that we can already do
     24(but perhaps in a "clunky" way).
     25Of particular interest are questions about usability and readability.
    3026
    3127 * #25 [wiki:EmptyDataDeclarations Empty Data Declarations]
     
    3430
    3531 * #70 [wiki:TypeSynonymInstances Type synonym instances]
    36 
    37   - New pragmas
    38   - Bang patterns
    39   - Deriving arbitrary instances for newtypes
    40   - Improve defaulting rules
    41   - Kind annotations
    42   - Monomorphic pattern bindings
    43   - Scoped type variables
    44 
     32 * #51 [wiki:NewPragmas New pragmas]
     33 * #76 [wiki:BangPatterns Bang patterns]
     34 * #52 [wiki:NewtypeDeriving Generalized deriving for newtype]
     35 * #21 [wiki:Defaulting Improve defaulting rules]
     36 * #84 [wiki:KindAnnotations Kind annotations]
     37 * #103 [wiki:MonomorphicPatternBindings Monomorphic pattern bindings]
     38 * #67, #68 [wiki:ScopedTypeVariables Scoped typed variables]
    4539
    4640
    4741== Type System ==
    4842
    49 This category contains proposals related to the type system
    50 and how the type checker works.
    51   (Deep questions about the static behavior of programs.)
     43These proposals are related to the type system and how the type checker works.
     44They affect the static semantics of programs in fairly deep ways.
    5245
    5346 * #60 Higher-rank polymorphism ([wiki:RankNTypes],[wiki:Rank2Types],[wiki:PolymorphicComponents]
     
    5548 * #49 [wiki:MultiParamTypeClasses Multi-parameter type classes] (see also [wiki:MultiParamTypeClassesDilemma])
    5649
    57  * [wiki:RelaxedDependencyAnalysis Relaxed dependency analysis]
    58   - Flexible instances
     50 * #65 [wiki:RelaxedDependencyAnalysis Relaxed dependency analysis]
     51 * #32 [wiki:FlexibleInstances Flexible instances]
    5952
    6053
    6154== Critical Constants ==
    6255
    63 Primarily provides sets of constants with
    64 specified operational behavior.
    65 
    66   (Deep questions about dynamic behavior)
     56These proposals provide sets of constants with specified operational behavior.
     57They affect the dynamic semantics of programs in fairly deep ways.
    6758
    6859 * #74 [wiki:Concurrency Concurrency]
     
    7061 
    7162 * #39 [wiki:ImpreciseExceptions Imprcise exceptions]
    72 
    73 
    74 
    75 
    76 
    77 
    78 
    79 
    80 || fix the lexical syntax for QualifiedIdentifiers || #39 || SM       ||         || permit qualified identifiers in definitions?                 
    81 ||                                     ||        ||         ||                   ||
    82 || FlexibleInstances                   || #32    ||         ||                   || choice of instance conditions for termination of typechecking
    83 ||                                     ||        ||         ||                   || poor interaction with NewtypeDeriving?
    84 ||                                     ||        ||         ||                   ||
    85 || add NewPragmas                      || #51    || JM      ||                   || choose specific pragmas to standardize
    86 ||                                     ||        ||         ||                   ||
    87 || make [wiki:Underscore] caseless     || #72    || RN      ||                   || treatment of underscore-only identifiers
    88 ||                                     ||        ||         ||                   ||
    89 || BangPatterns                        || #76    ||         ||                   || top-level bang patterns
    90 ||                                     ||        ||         ||                   || interaction with ! as an operator
    91 ||                                     ||        ||         ||                   || bang-pattern polymorphism
    92 ||                                     ||        ||         ||                   || existentials and bang patterns
    93 ||                                     ||        ||         ||                   ||
    94 || ScopedTypeVariables                 || #67, #81 || MS    ||                   || specification of syntax that binds type variables
    95 ||                                     ||        ||         ||                   ||
    96 || generalized deriving for newtype (NewtypeDeriving) || #52 ||  JM         ||   || specification that does not reference "the same representation"
    97 ||                                     ||        ||         ||                   || overlap with TypeSynonymInstances
    98 || remove FixityResolution from the context-free grammar || #30 || SM ||         || None
    99 ||                                     ||        ||         ||                   ||
    100 || improve [wiki:Defaulting] rules     || #21    ||         ||                   || scope of default clauses
    101 ||                                     ||        ||         ||                   || impact on existing defaults
    102 ||                                     ||        ||         ||                   ||
    103 || KindAnnotations                     || #84    || BH, AL  ||                   || None
    104 ||                                     ||        ||         ||                   ||
    105 || MonomorphicPatternBindings          || #103   || RN      ||                   || treatment of pattern bindings with explicit type signatures
    106 ||                                     ||        ||         ||                   ||
    107