跳到主要内容

功能特性

提示
  • 盘古 OS 的设计仍在逐步改进与完善中,本文将随时发生变化,感兴趣的朋友们可以时刻保持关注;
  • 在下方的版权声明中有本文作者的联系方式,有不同意见和相关建议的朋友可以与其保持联系;
  • 也可在本文底部的评论区登录 Github 后,直接发表您的观点;
版权声明

名称无关

变量名、类型名、函数名不是必须的,实际均通过其唯一标识做引用, 可在任意时刻以任意字符命名变量、类型和函数。名称只是为代码阅读者而提供的, 便于理解代码逻辑,其对代码编译和执行是无意义的。

可在任意位置直接使用未定义的名称, 再在运行或发布前由编译器/解释器检查并提示开发者补充实现。

函数即对象

函数的执行逻辑为 AST 树形结构,同时包含参数列表、唯一标识、返回类型、 私有性、说明文档、使用样例、修订版本、创建人、所在包(模块)等信息。

对象的行为模式不仅与其类型相关,还与其「如何被使用」(使用场景)相关。

对象即进程

应用内的对象都在独立进程(类似 Erlang 中的概念)中并行执行, 对象间通过消息交互数据和协调动作。

对象类似于生物细胞,各自按既定的模式运行,通过信息流协调整体行为, 从而构成一个完整的生物体。

有限类型

仅包含类型:

  • 数字(Number):包括整数、小数
  • 字符串(String):
  • 二进制(Byte):
  • List:[a, b, c, ...]
  • Map:键值对,如:{a: 1, b: 'b', ...}
  • Set:不含重复数据的List
  • 联合类型(Union Types):Boolean也是联合类型。在Elm中本质为函数

异常

  • 正常和错误输出均可在固定位置以固定方式查看,不存在异常信息被隐藏的情况