Label: ♦chinese(中文)

[58] 道语言修改建议概括

Comment

道语言修改建议概括

1 被接受的建议:

 Top
再次感谢那些提出建议的朋友。
  1. 在创建协程或发生器时省略函数名前的符号 @ ,因为协程或发生器定义时 会使用 yield 语句,使得 @ 其实是多余的。
    Andrew Cooke (python-list)
    修改后:
    • 在调用一个 包含 yield 语句的函数时,按通常方式调用;
    • 在调用一个包含 yield 语句的函数时,创建并返回一个协程或发生器对象。
  2. 对于自增自减运算( ++i, --i, i++, i-- ), 仅支持前缀式,而不再支持后缀式,以避免习惯了其他语言的用户混淆。
    Andor (newsmth.net), and others
  3. 双精度浮点数改用 D 后缀,而不是双零 00 结尾。 双零结尾在自动生成道语言代码时会导致隐藏陷阱。
    Andor (newsmth.net)
  4. switch-case选择语句里的,对应于同一代码块的多个条件值使用 逗号而不是冒号分隔。
    Andor (newsmth.net)
    如果不作修正,在注释掉某些代码块时可能导致陷阱:
    switch(value)
    {
         caseC1  :
              #{ temporarily disabled
            do_sth();
            #}

         caseC2  :
         caseC3  :
              do_sth_else();
         default:
    }
    如果按如下使用逗号分隔条件值则没问题:
    switch(value)
    {
         caseC1  :
              #{ temporarily disabled
            do_sth();
            #}

         caseC2  ,
                  C3  :
              do_sth_else();
         default:
    }


2 未决定建议:

 Top
  1. 使用类型关键字list/map/tuple/array构造数据:
    list(...), map/dict(...), tuple(...), array(...).
    Andor (newsmth.net)
    这些并不是绝对必要的,可能只是部分人觉得需要这些。
  2. 少许强制性代码规范: 语句关键字与括号之间强制使用空白字符, 而函数调用的函数名与括号之间不允许空白字符?
    Andor (newsmth.net)
  3. 元组构造:
    强制元组的第一个元素必须带名称, 但名称可省略而仅带定义名称的运算符 => ,如:
    tup1  =  (  x  =>1.0,  2.0)# named first item
    tup2  =  (=>1.0,  2.0)# anonynous first item
    tup3  =  (=>1.0)# ok for one item tuple

    这可以解决单元素元组问题,特别是在作代码修改时, 本来含有多个元素的元组可能会被改成只含单个元素, 而这是道语言解释将不再把它当作元组。
    不过,这个问题在道语言里存在的机会会很少, 因为道有类型检查系统,如果某个元组变量的定义 不小心变成了被括号括起来的单元素,那么,类型系统就能发觉此值跟该变量的 定义类型或用法不匹配,会在编译时报错。

如果你有任何建议或看法,不妨发在跟帖里。先谢了。
Comments

Change picture:

Choose file:

123 4
56 78910 11
121314151617 18
192021222324 25
26272829

fu: ... I forgot to say something about the plan for the whole new year in my previous reply. Well, besides w ... (Jan.19,01:40)

fu: ... Happy new dragon year (which will start from this sunday)! Actually, it was a busy month (I wish th ... (Jan.18,22:46)

ybabel: What's the plan for the new year ? Hello 'vry budy :- ) happy new year (when is the new year for you Fu ?) I saw you come back and comm ... (Jan.18,18:59)

This site is powered by Dao
Copyright (C) 2009,2010, daovm.net.
Webmaster: admin@daovm.net