Fortaleza (linguagem de programação) - Fortress (programming language)
Desenvolvedor | Sun Labs |
---|---|
Apareceu pela primeira vez | 2006 |
Último lançamento | 1.0_5033 / 7 de setembro de 2011
|
Disciplina de digitação | Estático |
Plataforma | Java SE 1.6+ |
SO | Plataforma cruzada |
Licença | BSD |
Local na rede Internet | github |
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
- Site do Project Fortress
- Cronograma Ativo de Especificação e Implementação de Referência
- A especificação do idioma Fortress (a versão mais recente é 1.0, 31 de março de 2008)
- The Soul of Fortress - Entrevista com o desenvolvedor do Fortress Guy Steele
- Fortress Open Source Project Home (Licença BSD)
- Grupo de Pesquisa de Linguagem de Programação da Sun
- Publicações e especificações da Fortaleza
- Plug-in Fortress para Eclipse (alfa)
- FAQ da Fortaleza
- Slides do tutorial do Fortress
- Listas de mala direta de fortalezas
- Artigo Lambda the Ultimate
- A substituição do Fortran da Sun torna-se o código-fonte aberto (CNET News.com, 12 de janeiro de 2007)
- Apresentação da fortaleza
- Paralelo por padrão - uma apresentação de visão geral da fortaleza anotada