笔者于 2020 年 7 月提出 HVML 编程语言并公开了相关的规范。一年后,即 2021 年 7 月,我们成立了一个攻坚团队并正式开始了 HVML 解释器(PurC)的开发。次月起,即 2021 年 8 月,我们通过“考鼎录”公众号发表 HVML 的开发月报,向关注 HVML 的各位朋友汇报相关研发进展。
本文是 HVML 开发月报的第五期。
在笔者发表于 2018 年的《三谈操作系统》一文中提到,一个操作系统区别于其他操作系统最为重要的技术特征就是围绕某个特定编程语言形成的应用编程接口(API)。我将这个技术特征比喻为操作系统的基因。要设计一个全新的操作系统,就必须在某个编程语言基础上设计一套完备的、可扩展的、易用的应用编程接口,而 HVML 就是笔者为正在开发中的下一代操作系统——合璧操作系统——设计的全新编程语言。
第一次听说 HVML 的朋友,可以阅读如下文章以了解其背景:《合璧操作系统的大胆技术突破:漫谈 HVML,它的由来和未来》。
本文作为 HVML 开发月报的第五期,主要包括如下内容:
- 11 月完成的工作内容
- 下一步计划
- HVML 兴趣小组
- 常见问题及解答
11 月完成的工作内容
2021 年 11 月,在研发团队的努力下,我们完成了如下工作:
- 用于支持 FILE、HTTP、HTTPS、FTP、LCMD、LSQL 等协议的数据获取器以及 PurC 中的数据获取器实现。
- 除 SQL 之外的十二个内置执行器的实现。
- HVML 解释运行模块的如下功能:
- 增强变体模块,根据 HVML 规范要求,实现变体的数值化、布尔化、字符串化等。
- 增强变体模块,可监听容器的变化。
- 表达式及目标文档元素对应的原生实体对象。
- 基于 GNU Midnight Commander 完成了调试用渲染器的框架代码及服务器端代码。
- 确定了解释器和渲染器的数据交换协议。
- 重新梳理或整理了如下规范文档:
下一步计划
2021 年 12 月,团队将完成:
- HVML 解释运行模块,主要包括:
- 执行栈、栈帧及变量管理。
- 错误及异常处理。
- 主要 HVML 动作标签的实现。
- 和渲染器的对接。
- 完成调试用渲染器。
预计 2021 年 12 月底,团队将完成 PurC 的初始版本,届时,一些简单的 HVML 程序就可以运行起来了。
另外,我们将在 2022 年元月,发布 HVML 规范(发布候选版)、HVML 预定义变量(发布候选版)以及如下源代码仓库:
- PurC Fetcher,可独立运行的网络协议处理程序,支持 FILE、HTTP、HTTPS、FTP、LCMD、LSQL 等协议。
- PurC Midnight Commander,基于 GNU Midnight Commander 的调试用渲染器,可解析并在字符终端上展现 uDOM 树。
HVML 兴趣小组
HVML 兴趣小组是一个虚拟小组,主要成员是对 HVML 及相关技术感兴趣的业内人士,这个小组主要通过微信群聊沟通。
如有兴趣加入该群聊,您可以通过点击“Contact”在后台留言,留下您的微信号,小编加您好友之后拉您入群。
目前 HVML 兴趣小组正在围绕如下两个规范文档展开工作:
常见问题及解答
Q:HVML 是针对嵌入式和物联网使用的吗?
A:不仅仅是。HVML 是一种通用的胶水语言,主要用来开发跨平台的 GUI 应用,因此,HVML 的目标平台包括传统的桌面、智能手机、平板、嵌入式设备和物联网设备。
Q:HVML 是打算取代现有的 Web 前端开发技术,比如 JavaScript 吗?
A:没有这个计划。HVML 的渲染器会用到 Web 前端技术,但 HVML 的目的并不是取代现有的 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
附:商标声明
本文提到的产品、技术或者术语名称,涉及北京飞漫软件技术有限公司在中国或其他地区注册的如下商标:
- 飛漫
- FMSoft
- 合璧
- HybridOS
- HybridRun
- MiniGUI
- xGUI
- miniStudio
- HVML
- 呼噜猫
- Purring Cat
- PurC