引入了 D 語言的微控制器程式設計運行時

Dylan Graham 提出了一種輕量級執行時間 LWDR,用於對配備即時作業系統 (RTOS) 的微控制器進行 D 程式設計。目前版本針對 ARM Cortex-M 微控制器。開發並非旨在完全涵蓋所有D功能,而是提供基礎工具。記憶體分配是手動完成的(新建/刪除),沒有垃圾收集器,但有許多使用 RTOS 工具的鉤子。

所提供的版本支援:

  • 結構的類別和堆實例的分配和銷毀;
  • 不變量;
  • 斷言;
  • 合約、基本 RTTI 工具(以 Typeinfo 為代價);
  • 接口;
  • 虛函數;
  • 抽象類別和靜態類別;
  • 靜態數組;
  • 分配、釋放動態數組和調整動態數組的大小;
  • 將元素新增至動態數組並連接動態數組。

處於實驗性功能狀態:異常和 Throwables(因為它們需要清除程式支援)。

未實現:

  • 模組構造函數和析構函數;
  • 模組資訊;
  • 線程局部變數(TLS);
  • 代表和閉會;
  • 關聯數組;
  • 共享和同步資料;
  • 散列物件。

來源: opennet.ru

添加評論