house Posted March 6, 2006 at 06:57 PM Report #17088 Posted March 6, 2006 at 06:57 PM Uma linguagem de programação esotérica é uma linguagem criada para testar os limites das linguagens de programação de computadores e por vezes criada apenas por piada. Não existe qualquer intenção deste tipo de linguagens vir a ser usado para criar software para empresas nem algo do género, serve meramente de entertenimento para programadores mais "curiosos". O termo "esotérico" foi adoptado com intenção única de diferenciar este tipo de linguagens dos outros tipos de linguagens mais populares e usadas (para não dizer mesmo mais úteis). Por exemplo, uma das primeiras linguagens esotéricas é a linguagem "INTERCAL", criada em 1972 por 2 indivíduos (James Lyons e Don Woods). Exemplo do famoso programa "Hello World" em INTERCAL (por norma, deve ser o primeiro programa a ser criado quando um indivíduo se inicia numa linguagem de programação nova): DO ,1 <- #13 PLEASE DO ,1 SUB #1 <- #234 DO ,1 SUB #2 <- #112 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 <- #214 PLEASE READ OUT ,1 PLEASE GIVE UP Hoje em dia o INTERCAL já não se usa, foi melhorado e deu origem ao C-INTERCAL. Mas temos mais linguagens esotéricas famosas, como por exemplo o Brainfuck (criado por Urban Müller, em 1993). Na primeira versão da linguagem, eram usadas cerca de 30000 células de memória de 1 Byte. Mas existem versões desenvolvidas mais recentemente que vão até 4 Bytes por cada célula de memória. Exemplo de um pedaço de código em Brainfuck: O código a seguir imprime todos os caracteres até que o ponto final seja clicado. >>>>++++++[-<+++++++>]<++++<,>[ ->+<]>[-<+<->>]<<[ >[->+<]>[-<+ <+>>]<<.,>[->+<]>[-<+<->>]<<]>. Também temos outra linguagem bastante conhecida que dá pelo nome de Befunge, que mais tarde deu origem à variante Befreak e que também foi "misturada" com a linguagem Brainfuck dando origem à linguagem PATH (também bastante conhecida). Um exemplo do aspecto desta última: $}++++++++++++++++\ / \ /}.---.+{\/+++++++v/!/ { \}.}.{{{\ -/ ++{/ /+++++.+/\v \ {\}++++++++\ \+++.---\ \-{++}/ \++++}}++++/ /--.----//.}++++!/v {-. \ \--------/ /+{/- / }}}/ \++}/ \ +.# Outros exemplos: Befunge: v>v>v>v "8*",", á4,u,o, l,"n"!5 O,M"d"2 ",",",* >^>^>^, @ < False: "Olá mundo! " Gammaplex: X"Ola Mundo"XXSXrRE L00P: +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++. ---.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++.-------------------------------------------------- -------------------------------------------------------------------------------- -------------------.+++++++++++++++++++++++++++++++++++++++++++++.++++++++.----- --.----------.+++++++++++.----------------------------------------------.& SNUSP: /++>++++++++++++>>++++<- \/\/\/\ \<< \ // \/\/< $ >++++++++++++++++ !\ ?/\/-<+\- /<.>.>>.---\/ <++> \ ? . \<<+.+++++\.\-\ / / \>++/> /-----.+++/\+<\?/!+++++++/!/ >>/ \--.----------.>++++ /\ +.# Durante o processo de criação de uma linguagem esotérica, o objectivo mais comum é remover ou substituir as características convencionais mantendo, ainda assim, uma linguagem que seja Turing-complete.
David Pintassilgo Posted March 6, 2006 at 07:15 PM Report #17096 Posted March 6, 2006 at 07:15 PM WOOOWW!!! 😛 Gostei do post! 🙂 Axo que é realmente um artigo interecante para publicar na Revista na categoria "Curiosidades" 🙂 cool stuffs to check. http://blog.zxcoders.com//
deathseeker25 Posted March 6, 2006 at 07:19 PM Report #17097 Posted March 6, 2006 at 07:19 PM Gostei do artigo. 🙂
Warrior Posted March 13, 2006 at 10:53 PM Report #18168 Posted March 13, 2006 at 10:53 PM http://techzonept.com/showthread.php?t=84880
Recommended Posts