Luna是数据处理语言并且如别的语言一样有自己的语法。不同于别的语言,Luna有不止一种语法:可视化、文本。

Luna设计为高可读性语言,具体到文本表示法,主要集中在创建清晰、简明且有表现力的语法。

文本表示法

代码布局

Luna代码对缩进敏感,这表示逻辑嵌套表达式也是可视化嵌套在代码中的表现。

这种布局设计为了最大化提升代码可读性和灵活度。

三条规则阐述:

  • 每个块以当前行或换行开始,块的缩进档次和首个表达式的缩进是相同的。
  • 每个嵌套的代码块应当有比亲代块更多地缩进。
  • 表达式可以跨行,但是所有跨行必须比块本身的缩进多。

Luna不允许混合用SpaceTab做缩进。

只允许用空格做代码缩进

几乎每个块都以“:”开始。

这里提供一些缩进布局不同用法的示例。

# 内联表达式
def sum a b: a + b

# 标准函数定义
def main:
    v = Vector 1 2 3
    print $ checkVector v

# 错误用法:缩进档次和首个表达式的不匹配
def main: v = Vector 123
    print $ checkVector v

作用域

程序中需要一个可用的给定的名字时定义作用域。

每个代码块创建不同的名称作用域。

继承亲代代码块的名称。

任何定义在作用域内的实体不可逃脱边界。

特别是亲代作用域不能访问到子代作用域中的名称。

results matching ""

    No results matching ""