Unixtopia

main/ artigos/

H

É uma futura linguagem de programação minimalista e experimental em desenvolvimento por Hermian, com base nos ideais SMR. É um trabalho em andamento e vai mudar muito. Foi planejado que no futuro ele deveria substituir gradualmente C e Assembly como linguagem SMR preferida, mas ainda é cedo para isso. A linguagem é inspirada principalmente em Assembly, Forth, C e outras. Quão minimalista deve ser H? A especificação deve caber em uma folha de papel A4, usando ambos os lados, e usará um compilador auto-hospedado mínimo sem pré-processador e recursos sofisticados com cerca de 2KLOC de código, toda a base de código auto-hospedada deverá incluir um compilador, otimizador, interpretador.

H pretende ser a base de uma tecnologia de computador nova e não capitalista construída do zero, que deve culminar na criação do computador de domínio público SMR desejado. Esta tecnologia é derivada do modelo de uma sociedade ideal e visará objetivos completamente diferentes, como ajudar todos os seres vivos o máximo possível sem escravizá-los, isso torna H astronomicamente diferente em filosofia e design de linguagens infantis capitalistas tóxicas e de merda, como C++ e Rust, que busca fascismo e escravidão dos humanos ao culto da produtividade. H está planejado para interagir de perto com um shell, embora as duas sejam independentes.

H é minimalista, low-level, com mínima abstração, portátil, imperativo e stack-based, usando notação polonesa padrão ou a reversa. Pode ser compilado ou interpretado. Existem apenas tipos de dados inteiros primitivos, tamanho inteiro nativo por padrão com possibilidade de especificar largura exata quando necessário, interpretação assinada e não assinada é deixada para o programador, e ponteiros opcionais que podem ser usados como variáveis, para gerenciar várias pilhas ou criar matrizes. Sua é implementação completamente de domínio público sob CC0. Não tem biblioteca padrão.

Possivelmente não haverá keywords em inglês, os comandos podem ser símbolos matemáticos curtos. O source-code pode permitir apenas símbolos ASCII, sem unicode. Pode haver um pré-processador opcional que usa o próprio H. Funções e recursão são suportadas. Muitos recursos da linguagem são opcionais e nunca sobrecarregam o programador se ele não os usa. Pode haver versões simplificadas da linguagem, como um mini H, que também são especificadas. A única I/O em H puro é a entrada padrão e a saída padrão, não há para arquivos, tela, rede, a linguagem apenas processa valores de entrada em valores de saída, o manuseio de I/O mais complexo é deixado para bibliotecas ou um ambiente de encapsulamento, como o shell H.


Impulsionado por nada. Todo conteúdo é disponível sob CC0 1.0 domínio público. Envie comentários e correções para Mr. Unix em victor_hermian@disroot.org.