As cinco linguagens de programação mais difíceis do mundo





Todos nós estamos falando apenas sobre C, C +, Java, Python e assim por diante, mas enquanto isso, existem linguagens na natureza que podem ser chamadas não apenas de complexas, mas também inacessíveis para a maioria dos programadores. Eles são chamados de linguagens de programação esotéricas (ou ezolangi, da abreviação de esolang).



As linguagens esotéricas não servem para realizar tarefas de programação comuns. Eles são criados para fazer uma prova de conceito ou apenas para fins de entretenimento.

Abaixo está uma lista das cinco linguagens de programação mais assustadoras ( nota do tradutor: se você tiver candidatos mais dignos que não são mencionados pelo autor, ficaríamos felizes em saber sobre eles nos comentários). Tentei escrever um 'Hello World!' em cada um deles - foi divertido.



Malbolge



Esta linguagem foi cunhada em 1998 por Ben Olmsted. É considerado o mais difícil de todos. Eles dizem que o próprio autor não escreveu um único programa em sua criação. O código que exibe as palavras Hello World! Apareceu dois anos inteiros depois que Olmsted concluiu a linguagem.



Aqui está um trecho de código para exibir o Hello World! em Malbolge:



(=<`#9]~6ZY32Vx/4Rs+0No-&Jk)"Fh}|Bcy?`=*z]Kw%oG4UUS0/@-ejc(:'8dc


E é isso que dá:





Este e todos os trechos de código a seguir foram escritos pelo autor e iniciados em tio.run



INTERCAL



Jim Lyon e John Woods desenvolveram INTERCAL em 1972 como uma paródia de uma variedade de linguagens de programação. Foi originalmente chamado de "uma linguagem compilada que não tem contrações pronunciáveis".



O INTERCAL implementou recursos especialmente projetados para dificultar a vida de um programador. Por exemplo, ele usa o modificador PLEASE e similares. O compilador pode rejeitar o código se PLEASE ocorrer nele sem a regularidade adequada. Explicação? "Não é educado o suficiente." Se o modificador PLEASE aparecer com muita freqüência no código, o compilador rejeitará o código como "muito educado".



Aqui está um trecho de código para exibir o Hello World! no INTERCAL:



DO ,1 <- #13
PLEASE DO ,1 SUB #1 <- #238
DO ,1 SUB #2 <- #108
DO ,1 SUB #3 <- #112
DO ,1 SUB #4 <- #0
DO ,1 SUB #5 <- #64
DO ,1 SUB #6 <- #194
DO ,1 SUB #7 <- #48
PLEASE DO ,1 SUB #8 <- #22
DO ,1 SUB #9 <- #248
DO ,1 SUB #10 <- #168
DO ,1 SUB #11 <- #24
DO ,1 SUB #12 <- #16
DO ,1 SUB #13 <- #162
PLEASE READ OUT ,1
PLEASE GIVE UP


E é isso que dá:





Brainfuck



Brainfuck nasceu em 1993 por Urban Müller, que pretendia ser divertido para outros programadores. Já pelo nome fica claro que a linguagem visa tornar o mais difícil possível para quem trabalha com ela entender o que está acontecendo.



Todo o idioma consiste em oito caracteres separados, que são usados ​​para implementar qualquer operação. O primeiro compilador, desenvolvido por Mueller, tinha apenas 296 bytes.



Aqui está um trecho de código para exibir o Hello World! no Brainfuck:



++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
 ..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.


E aqui está o que dá:





VACA



COW foi criado por Sean Geber em 2003. O significado do nome deste idioma ficará claro para você quando vir o código. Em termos de dificuldade, COW é comparável ao Brainfuck. Em termos quantitativos, existem mais quatro comandos em COW - um total de doze para todo o idioma.



Aqui está um trecho de código para exibir o Hello World! em COW:



MoO MoO MoO MoO MoO MoO MoO MoO MOO moO MoO MoO MoO MoO MoO moO MoO MoO MoO MoO moO MoO MoO MoO MoO moO MoO MoO MoO MoO MoO MoO MoO
 MoO MoO moO MoO MoO MoO MoO mOo mOo mOo mOo mOo MOo moo moO moO moO moO Moo moO MOO mOo MoO moO MOo moo mOo MOo MOo MOo Moo MoO MoO 
 MoO MoO MoO MoO MoO Moo Moo MoO MoO MoO Moo MMM mOo mOo mOo MoO MoO MoO MoO Moo moO Moo MOO moO moO MOo mOo mOo MOo moo moO moO MoO 
 MoO MoO MoO MoO MoO MoO MoO Moo MMM MMM Moo MoO MoO MoO Moo MMM MOo MOo MOo Moo MOo MOo MOo MOo MOo MOo MOo MOo Moo mOo MoO Moo


E aqui está o que dá:





Espaço em branco



Whitespace foi publicado na Durham University, seus autores são Chris Morris e Edwin Brady. Ele foi apresentado ao público em geral em 1º de abril de 2003.



A ideia básica é que espaços, tabulações e novas linhas são combinados na linguagem para escrever programas. O interpretador ignora todos os outros caracteres, tratando-os como comentários ao código.



Aqui está um trecho de código para exibir o Hello World! no espaço em branco. No trecho a seguir, cada espaço, tabulação e avanço de linha são precedidos por S, T e L, respectivamente:



S S S T	S S T	S S S L
T	L
S S S S S T	T	S S T	S T	L
T	L
S S S S S T	T	S T	T	S S L
T	L
S S S S S T	T	S T	T	S S L
T	L
S S S S S T	T	S T	T	T	T	L
T	L
S S S S S T	S T	T	S S L
T	L
S S S S S T	S S S S S L
T	L
S S S S S T	T	T	S T	T	T	L
T	L
S S S S S T	T	S T	T	T	T	L
T	L
S S S S S T	T	T	S S T	S L
T	L
S S S S S T	T	S T	T	S S L
T	L
S S S S S T	T	S S T	S S L
T	L
S S S S S T	S S S S T	L
T	L
S S L
L
L


E aqui está o que dá:





Existem muitas outras linguagens esotéricas semelhantes a essas. Você pode seguir o link para se familiarizar com eles. Neste site você pode encontrar compiladores e intérpretes para quase todos os idiomas. Copie o código de qualquer uma das páginas da Wikipedia e brinque com ele o quanto quiser.



All Articles