引入了 D 语言的微控制器编程运行时

Dylan Graham 提出了一种轻量级运行时 LWDR,用于对配备实时操作系统 (RTOS) 的微控制器进行 D 编程。 当前版本针对 ARM Cortex-M 微控制器。 开发并不旨在完全覆盖所有D功能,而是提供基础工具。 内存分配是手动完成的(新建/删除),没有垃圾收集器,但有许多使用 RTOS 工具的钩子。

所提供的版本支持:

  • 结构的类和堆实例的分配和销毁;
  • 不变量;
  • 断言;
  • 合同、基本 RTTI 工具(以 Typeinfo 为代价);
  • 接口;
  • 虚函数;
  • 抽象类和静态类;
  • 静态数组;
  • 分配、释放动态数组和调整动态数组的大小;
  • 将元素添加到动态数组并连接动态数组。

处于实验性功能状态:异常和 Throwables(因为它们需要清除程序支持)。

未实现:

  • 模块构造函数和析构函数;
  • 模块信息;
  • 线程局部变量(TLS);
  • 代表和闭会;
  • 关联数组;
  • 共享和同步数据;
  • 散列对象。

来源: opennet.ru

添加评论