Linguagem De Programação Hack: Linguagem de programação

Hack é uma linguagem de programação para o HipHop Virtual Machine (HHVM), criado pelo Facebook.

Linguagem De Programação Hack: História, Características, Sintaxe Nota: Para outros significados de Hack, veja Hack (desambiguação).

A linguagem é um software de código aberto sob a licença BSD.

Hack
Linguagem De Programação Hack: História, Características, Sintaxe
Surgido em 2014
Criado por Julien Verlaguet, Alok Menghrajani, Drew Paroski, e outros
Estilo de tipagem estática, dinâmica, fraca
Influenciada por PHP, Java, C#, .torini
Licença: Licença BSD
Página oficial hacklang.org

História

A linguagem foi introduzida em 20 de março de 2014. Antes do anúncio público da nova linguagem de programação, o Facebook já havia implementado e testado a linguagem em uma grande parte de seu website.

Hack permite que programadores usem tipagem estática e tipagem dinâmica. Este sistema de tipos é chamado de tipagem gradual, que também é implementado em outras linguagens como ActionScript. O sistema de tipos do Hack permite que tipos possam ser especificados para argumentos de funções, valores de retorno de funções, e propriedades de classes; entretanto, tipos de variáveis locais não podem ser definidos.

Características

Hack interopera sem problemas com o PHP, uma linguagem de script de código aberto, de propósito geral, largamente utilizada, especialmente adaptada para desenvolvimento web e que pode ser embutida de HTML. A maioria dos scripts PHP válidos também funcionam em Hack; entretanto, muitas das funcionalidades e construtores de linguagem pouco utilizados do PHP não são suportados em Hack.

Hack estende a indução de tipo, disponível no PHP 5, introduzindo a tipagem estática, adicionando novos tipos (para tipos escalares como inteiros e strings, por exemplo) e estendendo o uso da indução de tipos (para propriedades de classe ou valores de retorno de função, por exemplo). Entretanto, tipos de variáveis locais não podem ser especificados. Uma vez que Hack usa um sistema de tipos gradual, no modo padrão, a indicação do tipo não é obrigatória, mesmo nos locais onde elas não podem ser inferidas; o sistema de tipos assumirá que o autor está correto e aceitará o código. Entretanto, um modo "estrito" está disponível, no qual a indicação de tipo é obrigatória.

Sintaxe

A estrutura básica de um arquivo de script Hack é similar à de um script PHP com poucas mudanças. Um arquivo Hack inicia com em oposição à para scripts PHP:

hh echo 'Olá Mundo'; 

O script acima, similar ao PHP, será executado e a seguinte saída será enviada ao navegador:

Olá Mundo 

Um importante ponto a se perceber é que, diferente do PHP, código Hack e HTML não podem se misturar. Normalmente você pode misturar código PHP e HTML em um mesmo arquivo, por exemplo:

              Linguagem De Programação Hack: História, Características, Sintaxe - Wiki Português (Portuguese)                          echo '  Olá Mundo  '; ?>   

Este tipo de código não é suportado pelo Hack; neste caso é necessário usar XHP ou um motor de template.

Funções

Hack permite que tipos possam ser especificados para argumentos de funções e valores de retorno de funções. Em Hack estes tipos são indicados da seguinte forma:

hh // Funções Hack possuem indicação de tipo function negar(bool $x): bool {     return !$x; } 

Ver também

Referências