Blaise — um novo compilador Pascal

Graeme Geldenhuys, designer de interface gráfica do usuário fpGUIsistemas de montagem PasBuild, sistemas de teste Teste FP e depurador opdebugger introduzido Blaise — um compilador para o dialeto da linguagem de programação Object Pascal.

O objetivo do autor era criar uma linguagem livre das características obsoletas e frequentemente redundantes que se acumularam ao longo de décadas.

As principais características do novo dialeto:

  • Para todos os objetos criados dinamicamente — strings, interfaces, instâncias de classe — é utilizado um único sistema de controle automático baseado em contagem de referências.

  • O tipo de objeto foi removido e propõe-se o uso de "record" em seu lugar, para o qual já existem definições de método disponíveis.

  • Os operadores de E/S obsoletos assign, reset, rewrite, blockread e os tipos file e text foram removidos.

  • Propõe-se um único tipo de string, que substitui ShortString, AnsiString, WideString, OpenString e UnicodeString.

  • Removemos a instrução `with`, que frequentemente levava a erros difíceis de detectar.

  • Adicionada definição de variáveis ​​no ponto de uso.

Para gerar código de máquina, o compilador usa QBE (c9x.me)Um gerador baseado em LLVM está em desenvolvimento.

Os planos do projeto incluem a criação de um servidor LSP, suporte a linguagens no Visual Studio Code e a criação de uma ferramenta para migração de Delphi e Free Pascal.

Fonte: linux.org.ru