View Full Version : [Brainfuck] Programming Language
Qualcuno ne hai mai sentito parlare di questo particolare linguaggio di programmazione?
http://www.muppetlabs.com/~breadbox/bf/
Che ne pensate? :D
banryu79
27-02-2013, 08:24
Qualcuno ne hai mai sentito parlare di questo particolare linguaggio di programmazione?
http://www.muppetlabs.com/~breadbox/bf/
Che ne pensate? :D
Sì, è noto. Personalmente, a parte avergli dato un'occhiata veloce, non l'ho mai usato, penso sia più una curiosità/divertimento che altro. Cioè ci puoi giocare, se la cosa ti diverte, e magari in sè la cosa può anche insegnarti un paio di cose, però non penso uno lo impari per poi usarlo in produzione, ecco :D
Se ti interessano ste cose, dai un'occhio a questa pagina: https://en.wikipedia.org/wiki/Esoteric_programming_languages
Sì, è noto. Personalmente, a parte avergli dato un'occhiata veloce, non l'ho mai usato, penso sia più una curiosità/divertimento che altro. Cioè ci puoi giocare, se la cosa ti diverte, e magari in sè la cosa può anche insegnarti un paio di cose, però non penso uno lo impari per poi usarlo in produzione, ecco :D
Ho letto che è un linguaggio completo quindi tecnicamente si potrebbe realizzare un qualunque algoritmo.
La cosa è interessante, ma sembra parecchio difficile con sto linguaggio. :D
Se ti interessano ste cose, dai un'occhio a questa pagina: https://en.wikipedia.org/wiki/Esoteric_programming_languages
Ci darò un occhio appena riesco! :)
banryu79
27-02-2013, 11:10
Ho letto che è un linguaggio completo quindi tecnicamente si potrebbe realizzare un qualunque algoritmo.
La cosa è interessante, ma sembra parecchio difficile con sto linguaggio. :D
Sì è Turing-completo, se è questo che intendi. Solo che è un esempio di Turing tarpit (https://en.wikipedia.org/wiki/Turing_tarpit), eh :D Cioè non è affatto... uh, diciamo "agevole"? farci qualcosa di realmente utile (leggi, complesso).
Tanto per essere brutalmente chiari: è fatto per giocarci e diversi, sperimentare. In questo senso può essere utile, forse :)
Sì è Turing-completo, se è questo che intendi. Solo che è un esempio di Turing tarpit (https://en.wikipedia.org/wiki/Turing_tarpit), eh :D Cioè non è affatto... uh, diciamo "agevole"? farci qualcosa di realmente utile (leggi, complesso).
Tanto per essere brutalmente chiari: è fatto per giocarci e diversi, sperimentare. In questo senso può essere utile, forse :)
Si beh, però trovo veramente affascinante il fatto che con 8 comandi puoi fare pressochè qualunque cosa ( anche se, chiaro, è difficilissimo ).
Ma in termini di altezza/bassezza del linguaggio, dove si pone tra i grandi noti ( C, Java, Python, ecc.. )?
wingman87
27-02-2013, 22:23
Sì è molto affascinante e probabilmente se stai facendo l'università avrai un esame di teoria della computabilità che tratta approfonditamente l'argomento. Nel frattempo puoi vedere la definizione di linguaggio Turing-completo
https://en.wikipedia.org/wiki/Turing_completeness
E la macchina di turing
https://en.wikipedia.org/wiki/Turing_machine
Sì è molto affascinante e probabilmente se stai facendo l'università avrai un esame di teoria della computabilità che tratta approfonditamente l'argomento. Nel frattempo puoi vedere la definizione di linguaggio Turing-completo
https://en.wikipedia.org/wiki/Turing_completeness
E la macchina di turing
https://en.wikipedia.org/wiki/Turing_machine
Purtroppo argomenti di informatica teorica ne ho fatti ben pochi. Spero nella specialistica di rifarmi un po'. Anche perchè non ho realmente idea cosa implichi che il linguaggio sia turing-completo.
Devo dire che questi linguaggi esoterici si rivelano tutti molto interessanti, anche se all'atto pratico non ci si combina molto.
cdimauro
28-02-2013, 01:02
Brainfuck: nomen omen.
E' puro esercizio di stile per dimostrare che è possibile realizzare un linguaggio minimale Turing-completo. Inutilizzabile all'atto pratico; da cui il nome.
Vi riporto la domanda fatta a banryu:
Ma in termini di altezza/bassezza del linguaggio, dove si pone tra i grandi noti ( C, Java, Python, ecc.. )?
wingman87
28-02-2013, 11:49
Vi riporto la domanda fatta a banryu:
Secondo me da nessuna parte perché non è un linguaggio intuitivo per gli esseri umani, ergo non è di alto livello.
D'altra parte con un set di istruzioni così ristretto non può avvantaggiarsi di una buona quantità di istruzioni macchina, rendendolo comunque inefficiente e poco "vicino alla macchina".
Secondo me da nessuna parte perché non è un linguaggio intuitivo per gli esseri umani, ergo non è di alto livello.
D'altra parte con un set di istruzioni così ristretto non può avvantaggiarsi di una buona quantità di istruzioni macchina, rendendolo comunque inefficiente e poco "vicino alla macchina".
Capisco.. Tutto ciò mi delude assai :( .. Ho pensato sarebbe stato molto performante ( a discapito della facilità di lettura da parte del programmatore ) date le poche istruzioni molto di base.
The_ouroboros
28-02-2013, 12:30
ristrettezza/semplicità di sintassi != velocità :stordita:
ristrettezza/semplicità di sintassi != velocità :stordita:
Non lo so. Però credo che scrivere in assembler risulti più performante che scrivere in C ( supponendo che entrambe le soluzioni sia state scritte in maniera egualmente intelligente )
Non lo so. Però credo che scrivere in assembler risulti più performante che scrivere in C ( supponendo che entrambe le soluzioni sia state scritte in maniera egualmente intelligente )
Attenzione: brainfuck è qualcosa di diverso dall'assembler.
The_ouroboros
28-02-2013, 14:13
Non lo so. Però credo che scrivere in assembler risulti più performante che scrivere in C ( supponendo che entrambe le soluzioni sia state scritte in maniera egualmente intelligente )
aehm... Asm è una cosa C è un altra...
E' ovvio che due pere siano diverse da due banane... :)
Attenzione: brainfuck è qualcosa di diverso dall'assembler.
aehm... Asm è una cosa C è un altra...
E' ovvio che due pere siano diverse da due banane... :)
Si, forse non era chiaro dal messaggio che ho scritto. Non intendevo in alcun modo dire che Brainfuck è assembler.
Cercavo solo di far capire che credevo che siccome il linguaggio è più aspro ( come asm ) allora probabilmente sarebbe stato più performante, visto che ( come asm ) ha istruzioni molto di base.
The_ouroboros
28-02-2013, 16:45
La povertà non implica nulla.
Il livello di un Linguaggio e altra cosa.
È un bel giocattolino cmq:D
Inviato dal mio Sony Xperia P
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.