Changes between Version 1 and Version 2 of Organizing_The_Proposals


Ignore:
Timestamp:
Apr 13, 2007 12:55:57 AM (7 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