• Benvenuto in Making Videogames!
  • Dai sfogo alla tua fantasia!
  • Crea il tuo Videogioco!
Benvenuto ospite! Login Registrati




Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Linguaggi Esoterici
#1
Un linguaggio di programmazione esoterico è una tipologia di linguaggi di programmazione particolarmente complessi e volutamente meno chiari possibile. Questi linguaggi, popolari fra gli hacker e gli utenti più che abili, non hanno una vera utilità nel mondo reale, ma sono generalmente concepiti per mettere alla prova i limiti della programmazione su computer, come proof of concept per dimostrare una teoria o per semplice divertimento. Alcuni, invece, sono concepiti come esercizio per comprendere meglio il funzionamento di un calcolatore.

Storia


Il primo esempio di linguaggio esoterico è stato INTERCAL, scritto nel 1972 da James M. Lyon e Don Woods, col tentativo di creare un linguaggio totalmente differente da quelli esistenti all'epoca, parodiando elementi di Fortran, COBOL, e assembly.
Venti anni più tardi Wouter van Oortmerssen ha creato FALSE, un linguaggio basato sul concetto di macchina a stack dotato di una sintassi confusa, illeggibile ed estremamente concisa: il compilatore occupa solamente 1024 byte. Questo ha in seguito ispirato Urban Müller a creare un linguaggio ancora più conciso, il brainfuck, composto da soli otto caratteri riconosciuti. Insieme al Befunge creato da Chris Pressey, sono i due linguaggi esoterici più diffusi e seguiti.

Ecco alcuni linguaggi esoterici


Brainfuck


Brainfuck è un linguaggio di programmazione esoterico per computer, creato da Urban Müller intorno al 1993. Il linguaggio viene in taluni casi denominato Brainf*ck, Brainf*** o anche soltanto BF per evitare di offendere la sensibilità altrui.

Struttura del linguaggio

Il primo esempio di linguaggio esoterico è stato INTERCAL, scritto nel 1972 da James M. Lyon e Don Woods, col tentativo di creare un linguaggio totalmente differente da quelli esistenti all'epoca, parodiando elementi di Fortran, COBOL, e assembly.
Venti anni più tardi Wouter van Oortmerssen ha creato FALSE, un linguaggio basato sul concetto di macchina a stack dotato di una sintassi confusa, illeggibile ed estremamente concisa: il compilatore occupa solamente 1024 byte. Questo ha in seguito ispirato Urban Müller a creare un linguaggio ancora più conciso, il brainfuck, composto da soli otto caratteri riconosciuti. Insieme al Befunge creato da Chris Pressey, sono i due linguaggi esoterici più diffusi e seguiti.

Il seguente codice mostra "Hello World!" sullo schermo e manda a capo il cursore:

Codice PHP:
++++++++++
[
   >+++++++>++++++++++>+++>+<<<<-
]
>++. 
Loop iniziale (dopo viene stampata una H)
>+. 
e
+++++++. l
l
+++. o
>++.
<<+++++++++++++++.
>.
+++.
------.
--------.
>+.
>. 

Malbolge


Malbolge è un linguaggio di programmazione esoterico, creato da Ben Olmstead nel 1998, con lo scopo di creare un linguaggio che fosse il più difficile possibile da utilizzare. Andrew Cooke riuscì a scrivere il primo "Hello, world!" solo con l'aiuto di un programma in Lisp.

Malbolge è talmente complesso che il primo programma funzionante, Hello, world è arrivato due anni dopo il suo rilascio:

Codice PHP:
('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2T|nm-,jcL(I&%$#"
`CB]V?Tx<uVtT`Rpo3NlF.Jh++FdbCBA@?]!~|4XzyTT43Qsqq(Lnmkj"Fhg${z@> 

Questo programma legge una stringa e la stampa a video:

Codice PHP:
(aBA@?>=<;:9876543210/.-,JH)('&%$#"!~}|{zy\J6utsrq
ponmlkjihgJ%dcba`_^]\[ZYXWVUTSRQPONMLKJIHGF('C%$$^
K~<;4987654321a/.-,\*)
j
!~%|{zya}|{zyxwvutsrqSonmlO
jLhg`edcba`_^]\[ZYXWV8TSRQ4
ONM/KJIBGFE>CBA@?>=<;{9876w
43210/.-m+*)('&%$#"!~}|{zy\
wvunslqponmlkjihgfedcEa`_^A
\>ZYXWPUTSRQPONMLKJIH*FEDC&
A@?>=<;:9876543210/.-m+*)(i
&%$#"!~}|{zyxwvutsrqpRnmlkN
ihgfedcba`_^]\[ZYXWVU7SRQP3
NMLKJIHGFEDCBA@?>=<;:z8765v
3210/.-,+*)('&%$#"!~}_{zyx[
vutsrqjonmlejihgfedcba`_^]@
[ZYXWVUTSRo 

Fonte : WikiPedia
 
#2
Citazione:Malbolge è talmente complesso che il primo programma funzionante, Hello, world è arrivato due anni dopo il suo rilascio

Stupendo XD XD XD
 
#3
E tu ti lamenti dell'assembly XD, questi linguaggi arrivano proprio al limite.
 
#4
il malbolge è mille volte più difficile del c++ omg <.< e magari pure meno potente ma che se ne vadano u.u
 
#5
Non c'entra nulla col : C++, C etc...

L'ho scritto all'inizio a cosa servono :

Un linguaggio di programmazione esoterico è una tipologia di linguaggi di programmazione particolarmente complessi e volutamente meno chiari possibile. Questi linguaggi, popolari fra gli hacker e gli utenti più che abili, non hanno una vera utilità nel mondo reale, ma sono generalmente concepiti per mettere alla prova i limiti della programmazione su computer, come proof of concept per dimostrare una teoria o per semplice divertimento. Alcuni, invece, sono concepiti come esercizio per comprendere meglio il funzionamento di un calcolatore.
 
#6
ma che! solo einstein potrebbe fare un programma con quei linguaggi xD comunque grazie dell'info!
 
#7
ma in teoria un trojan creato con c++ risulta sempre più potente di uno creato con un linguaggio esoterico beh di certo un trojan col c++ viene riconosciuto all'istante mentre un trojan con linguaggio esoterico è indecifrabile il codice talmente è complesso e l'antivirus non lo rileva..beh sempre utile è xD
 
#8
questi linguaggi sono volutamente incasinati e inutili...ci vuoi che usi un linguaggio che è talmente complesso che il primo programma funzionante, Hello, world è arrivato due anni dopo il suo rilascio !!! [sadomaso]
 
#9
Non c'entrano niente i trojan, non si riuscirebbe nemmeno a scriverli in un linguaggio esoterico.
E comunque l'antivirus non guarda il codice per scoprire se è un malware (non potrebbe nemmeno visto che si fanno con linguaggi compilati).
 
#10
E allora non servono a una cippa <.< come dice wikipedia "non hanno una vera utilità nel mondo reale" e servono solo a incasinarti il cervello xD
 
#11
dark, come dice anche wikipedia, questi linguaggi li usano coloro che sanno i fatti loro, e uno di questi sono gli : Hacker, come li usano ? boh domandaglielo a loro XD.
 
#12
Non li usano gli hacker, li creano e basta (quasi esclusivamente per divertimento).
 
#13
Io non ne conosco di Hacker tu si ? XD io mi sono basato su quello che dici wikipedia.
 
#14
Citazione:non hanno una vera utilità nel mondo reale, ma sono generalmente concepiti per mettere alla prova i limiti della programmazione su computer, come proof of concept per dimostrare una teoria o per semplice divertimento

lolcode, cow, ook!, whitespace, whirl e altri.
Ti sembrano programmi creati con qualche utilità? Ci fanno giusto hello word e programmi stupidi per sfizio personale.

Wikipedia dice che sono popolari tra gli hacker, non che li usano.
 
#15
Va bene, e come parlare con i ciucci che volano. Chiudo la discussione cosi la finiamo di dire boiate che possono confondere chi legge il post.
 
  


Discussioni simili
Discussione Autore Risposte Letto Ultimo messaggio
  Classifica linguaggi di programmazione Riddick 31 7,026 11-08-2013, 12:49 PM
Ultimo messaggio: yuriiacuzzo
  [Aprile] Classifica linguaggi di programmazione Riddick 2 1,764 06-04-2011, 10:36 PM
Ultimo messaggio: steve
  [Marzo] Classifica linguaggi di programmazione Riddick 2 1,946 16-03-2011, 09:30 AM
Ultimo messaggio: KillerZ

Vai al forum:


Browsing: 1 Ospite(i)