6 pontos por xguru 2023-11-24 | 1 comentários | Compartilhar no WhatsApp
  • Lançado oficialmente como padrão ISO/IEC 1539-1:2023. PDF com 674 páginas

Novos recursos e mudanças

  1. Mudança no limite de comprimento
    • O limite de comprimento de linha no formato de código-fonte livre foi aumentado para 10.000 caracteres.
    • O limite de 255 linhas de continuação foi removido, e o limite de comprimento de instrução foi aumentado para 1 milhão de caracteres.
  2. Comprimento de variáveis de caractere
    • Quando uma variável alocável de comprimento adiado é definida por atribuição interna, ela é alocada com o comprimento correto pelo processador.
  3. Expressões condicionais
    • Adicionadas expressões condicionais (na forma value = (a > 0.0 ? a : 0.0)).
  4. Argumentos condicionais
    • Adicionados argumentos condicionais; todos os argumentos devem ter o mesmo rank, tipo e kind.
  5. Arrays com componentes coarray
    • Objetos de tipos com componentes coarray podem ser arrays ou alocáveis, mas o próprio coarray não é.
  6. Put with Notify
    • Recurso popular na comunidade SHMEM, por exemplo: x[10 notify=nx] = y.
  7. Reduction Specifier no Do Concurrent
    • Uso de variáveis de redução (reduction variable) dentro da instrução do concurrent.
  8. Procedimentos simples
    • Um procedimento puro (pure procedure) altera variáveis apenas por meio de argumentos, enquanto um procedimento simples (simple procedure) referencia variáveis apenas por meio de argumentos.
  9. Tipos enumerados
    • Suporte a novos tipos enumerados (enum bind(c) etc.).
  10. Uso de subscritos com array de inteiros
    • É possível usar arrays de inteiros para especificar vários subscritos.
  11. Uso de rank e limites com array de inteiros
    • Uso de rank e limite inferior em arrays de forma assumida e arrays de forma explícita.
  12. Melhorias no System Clock
    • Os argumentos de system clock do Fortran 2018 foram aprimorados para oferecer suporte a vários kinds de inteiro.
  13. Constantes nomeadas adicionais de tipos intrínsecos
    • Novas constantes nomeadas adicionadas ao módulo iso_fortran_env.
  14. Melhorias no procedimento intrínseco c_f_pointer
    • Adicionado um argumento opcional extra para especificar o limite inferior em c_f_pointer.
  15. Uso expandido de constantes BOZ
    • Constantes binárias, octais e hexadecimais (BOZ) podem ser usadas em inicialização, construtores de array, construtores de enumeração etc.
  16. Funções trigonométricas que operam em graus
    • Funções trigonométricas que calculam valores em graus (sind(x), cosd(x), tand(x) etc.).
  17. Funções trigonométricas que operam em unidades de meia volta
    • Funções trigonométricas que calculam valores em unidades de meia volta (180 graus) (sinpi(x), cospi(x), tanpi(x) etc.).
  18. Seleção de kind lógico
    • Função selected_logical_kind(bits) para especificar o tamanho de armazenamento do tipo lógico.
  19. Recursos obsoletos e removidos aos quais não houve novas adições
    • Nenhum novo recurso foi adicionado à lista de recursos obsoletos e removidos.

1 comentários

 
xguru 2023-11-24

O resumo dos novos recursos foi tirado de "The new features of Fortran 2023", apresentado por John Reid.
Ao enviar esse PDF para o PDF GPT (requer assinatura do GPT Plus), ele faz um bom resumo.

Fortran - linguagem de programação paralela de alto desempenho