笔者于 2020 年 7 月提出 HVML 编程语言并公开了相关的规范。一年后,即 2021 年 7 月,我们成立了一个攻坚团队并正式开始了 HVML 解释器(PurC)的开发。次月起,即 2021 年 8 月,我们通过“考鼎录”公众号发表 HVML 的开发月报,向关注 HVML 的各位朋友汇报相关研发进展。

本文是 HVML 开发月报的第三期。

在笔者发表于 2018 年的《三谈操作系统》一文中提到,一个操作系统区别于其他操作系统最为重要的技术特征就是围绕某个特定编程语言形成的应用编程接口(API)。我将这个技术特征比喻为操作系统的基因。要设计一个全新的操作系统,就必须在某个编程语言基础上设计一套完备的、可扩展的、易用的应用编程接口,而 HVML 就是笔者为正在开发中的下一代操作系统——合璧操作系统——设计的全新编程语言。

第一次听说 HVML 的朋友,可以阅读如下文章以了解其背景:《合璧操作系统的大胆技术突破:漫谈 HVML,它的由来和未来》

本文作为 HVML 开发月报的第三期,主要包括如下内容:

  • 9 月完成的工作内容

  • 下一步计划

  • HVML 兴趣小组

  • 常见问题及解答

9 月完成的工作内

2021 年 9 月,在研发团队的努力下,我们完成了如下工作:

  1. 完成了 HVML 解析器以及 vDOM 构造器的编码工作以及测试框架的开发:
    • 断词状态机共有 113 种状态。
    • vDOM 树的插入模式共有 10 种。
    • 解析错误共有 54 种。
    • 相关测试用例超过 600 个。
  2. 重构了常用动态变体对象的实现,并完成对应的测试框架:
    • 定义了描述二进制结构的标记方法,用于将二进制数据结构读入 PurC,并将其使用 PurC 变体表达。
    • 将 $MATH$FILE$FS 封装到独立的共享库中,用于实现按需装载。
    • 使用 bc 对比测试 $MATH.eval$MATH.eval_l 和 $L.eval 方法。
    • 共完成超过 800 个测试用例。

下一步计划

预计 2021 年 10 月,团队将完成用于支持 HTTP、LCMD、LSQL 等协议的数据获取器及内置执行器。

预计 2021 年 11 月,团队将完成 HVML 解释器和一个调试用渲染器。

预计 2021 年 12 月,完成 PurC 1.0,并正式发布 HVML 规范 1.0 并公开相关设计文档。

HVML 兴趣小组

HVML 兴趣小组是一个虚拟小组,主要成员是对 HVML 及相关技术感兴趣的业内人士,这个小组主要通过微信群聊沟通。

如有兴趣加入该群聊,您可以通过点击“Contact”在后台留言,留下您的微信号,小编加您好友之后拉您入群。

常见问题及解答

Q:HVML 是针对嵌入式和物联网使用的吗?

A:不是。HVML 是一种通用的胶水语言,主要用来开发跨平台的 GUI 应用,因此,HVML 的目标平台包括传统的桌面、智能手机、平板、嵌入式设备和物联网设备。

Q:HVML 是打算取代现有的 Web 前端开发技术,比如 JavaScript 吗?

A:没有这个计划,也没有这个想法。HVML 的渲染器会用到 Web 前端技术,但目的并不是取代现有的 Web 前端开发技术,而是为跨平台 GUI 应用的开发提供另外一种技术框架。

Q:在哪里可以看到 PurC 和 xGUI 的源代码。

A:PurC 和 xGUI 仍然处在开发状态,暂时不向公众开放其代码仓库。

Q:未来会开源 PurC 和 xGUI 吗?

A:会的,而且我们会使用商业友好的宽松许可证(如 LGPL)发布 PurC 和 xGUI。

Q:如何赞助 HVML 相关的项目?

A:个人打赏性质的赞助,您可以点击文后的原文链接。大额的赞助,可点击“Contact”留下联系方式,我们的小编会联系您。

原文链接

https://store.fmsoft.cn/campaign/denoteoss-lt

附:商标声明

本文提到的产品、技术或者术语名称,涉及北京飞漫软件技术有限公司在中国或其他地区注册的如下商标:

  1. 飛漫

飛漫

  1. FMSoft

FMSoft

  1. 合璧

合璧 合璧 合壁

  1. HybridOS

HybridOS

  1. HybridRun

HybridRun

  1. MiniGUI

MiniGUI

  1. xGUI

xGUI

  1. miniStudio

miniStudio

  1. HVML

HVML

  1. 呼噜猫

呼噜猫

  1. Purring Cat

Purring Cat

  1. PurC

PurC