Um tempo de execução para programação de microcontroladores é introduzido para a linguagem D

Dylan Graham apresentou um LWDR de tempo de execução leve para programar microcontroladores equipados com um sistema operacional de tempo real (RTOS) em linguagem D. A versão atual é voltada para microcontroladores ARM Cortex-M. O desenvolvimento não visa cobrir totalmente todas as capacidades de D, mas fornece ferramentas básicas. A alocação de memória é feita manualmente (novo/excluir), não há coletor de lixo, mas há vários ganchos para usar ferramentas RTOS.

A versão apresentada suporta:

  • alocação e destruição de instâncias de classe e heap para estruturas;
  • invariantes;
  • afirma;
  • contratos, ferramentas básicas de RTTI (às custas da Typeinfo);
  • interfaces;
  • funções virtuais;
  • classes abstratas e estáticas;
  • matrizes estáticas;
  • alocar, liberar e redimensionar matrizes dinâmicas;
  • adicionar elementos a uma matriz dinâmica e concatenar matrizes dinâmicas.

No status de recursos experimentais: exceções e Throwables (pois requerem suporte de limpeza).

Não implementado:

  • construtores e destruidores de módulos;
  • Informações do módulo;
  • variáveis ​​locais de thread (TLS);
  • delegados e encerramentos;
  • matrizes associativas;
  • dados compartilhados e sincronizados;
  • objetos com hash.

Fonte: opennet.ru

Adicionar um comentário