Red 语言发布的 2021 回顾介绍了在过去一年所做的重点工作,涉及到解释器、格式化、分割 (Split)、命令行模块 (CLI Module)、用于标记的编码译码器 (Markup Codec) 和 IPv6 数据类型等。
据介绍,Red 语言在 2021 年大约关闭了 120 个 issue,平均每月 10 个,此外还合并了近 50 个 PR。虽然这些数字看起来比较小,不过开发团队表示他们还要投入时间和精力到更深层次的工作以及其他任务中,所以综合来说,项目仍在稳定发展。至于大家希望的 issue 和待处理的 PR 数目都为 0,开发团队表示这对 Red 这样的项目来说是不现实的。毕竟核心团队需要花费大量时间来处理更大和更复杂的任务。
下面回顾一下 Red 语言在 2021 年 Q4 的 Roadmap:
- 提供 `format` 和 `split`,不过已被延期至 2022 年 1 月完成
- 批准通过 `CLI` 模块,处于待合并状态,后续根据需要再改进
- 由于对格式化 (format) 特性进行了过度的设计讨论,标记编码译码器 (Markup Codec) 花费的时间比预期的要长
- Interpreter instrumentation,包含 PoC 调试器和性能分析器,花费的时间比预期长,现已完成
- 异步 I/O 已完成,此外还计划添加 `IPv6!` 作为数据类型(实验性质),可能会发生变化
- 改进动画方言,@toomasv 的 `diagram` 方言将会降低优先级,并移动至 2022 Q1 完成
- 音频模块已有 3 个工作后端和 1 个基础的端口实现。下一步是更高级别的设计、设备和格式化枚举,以及设备控制。1 个“端口”可能不是解决所有这些问题的方法,但这是第一步
- 动画方面有许多优秀的案例,例如 Anim-text-fx 和 Animate-markers,@GalenIvanov 创造的方言将会作为 Red 的标准补充
团队也确定好了 2022 年的 Roadmap,不过下面的顺序不代表实现的先后顺序,因为计划经常发生改变。
- 实现 `Table` 模块、`node!` 数据类型和其他 REP 审查
- 实现完整的 HTTP/S 协议和基本的 Web 服务器框架
- 发布新的 DiaGrammar 版本
- 提供动画方言 (Animation dialect)
- 使用新的发布流程
- 更服务器之家站并上线
- 发布 Red/C3(包含 ETH 2.0 客户端协议)
- 确定 Red 语言规范(原则、核心语言、评估规则、数据类型规范(包括文字形式)、Action/Native 规范、模块规范
- 提供 64 位支持(有可能通过 LLVM 实现,但团队表示从 Zig 了解到,LLVM 的重大更改对于小型团队来说可能会非常痛苦。因此他们应该会自己实现,尽管这是一项艰巨的任务)
- 针对 Android 的更新
- Red Spaces 跨平台图形用户界面
- 模块和封装系统设计
- RAPIDE(快速 API 开发环境)
根据 Red 语言的版本发布记录,其最近的更新是 2018 年发布的 0.6.4 版本,此版本提供了 Simple GC,自此之后未再发布更新。期待 Red 语言在 2022 年的表现。
详情查看公告。
Red 编程语言是一门简单易学的编程语言,受到了 REBOL 很大的启发,由于它有本地代码编译器,Red 的应用领域更加广泛——下到系统编程上到高级脚本,同时提供了对现代的多核 CPU 并发编程的支持。相信 Red 语言能让你体会到编程的乐趣。
特性
- 支持函数式,命令式和符号化编程
- 基于 Prototype 的对象系统
- Homoiconic(同像性,也就是说数据的表现形式和代码的语法是一样的,数据可以是代码,代码也可以是数据)
- 支持静态编译和 JIT 编译
- 支持并发和并行编程(actors,并行容器)
- 通过内建的低级编程语言(Red/System)支持系统级编程
- 支持脚本化和 REPL 交互环境
- 高可嵌入性(类似 Lua)
- 低内存使用量,支持垃圾回收
- 极小的运行环境(1MB)
本文地址:https://www.oschina.net/news/178098/redlang-2021-review