Fortaleza (linguagem de programação) - Fortress (programming language)

Fortaleza
Desenvolvedor Sun Labs
Apareceu pela primeira vez 2006
Último lançamento
1.0_5033 / 7 de setembro de 2011 ; 9 anos atrás  ( 07/09/2011 )
Disciplina de digitação Estático
Plataforma Java SE 1.6+
SO Plataforma cruzada
Licença BSD
Local na rede Internet github .com / stokito / fortress-lang
Influenciado por
Fortran , Scala , Haskell

Fortaleza é uma experimental interrompido linguagem de programação para computação de alto desempenho , criado pela Sun Microsystems com o financiamento da DARPA de Alta Produtividade Computing Sistemas projeto. Um dos designers de linguagem foi Guy L. Steele Jr. , cujo trabalho anterior inclui Scheme , Common Lisp e Java .

Projeto

O nome "Fortress" tinha a intenção de conotar um Fortran seguro , ou seja, "uma linguagem para computação de alto desempenho que fornece abstração e segurança de tipo no mesmo nível dos princípios da linguagem de programação moderna". Os recursos da linguagem incluem paralelismo implícito , suporte a Unicode e sintaxe concreta semelhante à notação matemática . A linguagem não foi projetada para ser semelhante ao Fortran. Sintaticamente, é mais parecido com Scala , Standard ML e Haskell . O Fortress foi projetado desde o início para ter várias folhas de estilo sintáticas. O código-fonte pode ser renderizado como texto ASCII , em Unicode ou como uma imagem aprimorada. Isso permitiria o suporte de símbolos matemáticos e outros símbolos na saída renderizada para facilitar a leitura. Uma ferramenta baseada no emacs chamada fortify transforma o código-fonte do Fortress baseado em ASCII em saída LaTeX .

O Fortress também foi projetado para ser altamente paralelo e ter uma rica funcionalidade contida em bibliotecas, desenhando em Java. Por exemplo, a for construção de loop era uma operação paralela, que não necessariamente iteraria de maneira estritamente linear, dependendo da implementação subjacente. No entanto, a for construção era uma função de biblioteca e poderia ser substituída por outra versão do gosto do programador, em vez de ser embutida na linguagem.

Os designers do Fortress tornaram sua sintaxe o mais próxima possível do pseudocódigo e analisaram centenas de artigos de ciência da computação e matemática , cursos, livros e periódicos usando pseudocódigo para extrair os padrões de uso comum da língua inglesa e notação matemática padrão quando usada para representar algoritmos em pseudocódigo . Então eles fizeram o compilador tentando manter uma correspondência um-para-um entre o pseudocódigo e o executável Fortress.

História

Fortress foi uma das três linguagens criadas com financiamento do projeto High Productivity Computing Systems ; as outras eram X10 da IBM e capela de Cray, Inc . Em novembro de 2006, quando a DARPA aprovou o financiamento para a terceira fase do projeto HPCS, o X10 e o Chapel foram financiados, mas o Fortress não, levando à incerteza sobre o futuro do Fortress.

Em janeiro de 2007, Fortress foi lançado como código aberto. A versão 1.0 da Fortress Language Specification foi lançada em abril de 2008, junto com uma implementação compatível voltada para a Java Virtual Machine .

Em julho de 2012, Steele anunciou que o desenvolvimento ativo do Fortress cessaria após um breve período de desaceleração, citando complicações com o uso do sistema de tipos do Fortress em máquinas virtuais existentes.

Exemplo: Olá, mundo!

Esta é a versão Fortress do programa hello world arquetípico , conforme apresentado no Cartão de Referência Fortress :

component hello
export Executable
run() = println(“Hello, World!”)
end

A instrução export torna o programa executável e cada programa executável no Fortress deve implementar a função run () . O arquivo onde o programa é salvo para compilação deve ter o mesmo nome que aquele especificado na instrução do componente inicial . A função println () é o que gera a mensagem "Hello, World!" palavras na tela.

Veja também

Referências

links externos