INTERPRETEUR BRAINFUCK

webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 - 21 août 2008 à 09:07
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 14 févr. 2009 à 12:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47680-interpreteur-brainfuck

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
14 févr. 2009 à 12:48
le plus fun que j'avais vu pour resoudre un sudoku, c'etait des "depots" APT un peu etranges : ils se servaient de la resolution des dependances d'apt comme d'un systeme de resolution par contraintes, et ils resolvaient des sudokus avec ca :)
cs_exar Messages postés 286 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 22 avril 2012 1
14 févr. 2009 à 12:43
Mais de rien ! Tu as bien fait ça ! Ton implémentation d'une machine de Turing est originale en PHP, c'est ce qui lui donne son intérêt. On est parfois étonné du langage de prog utilisé pour résoudre un problème. Ainsi, j'ai une fois vu un package PL/SQL Oracle qui résolvait des SUDOKU... Ce n'est pas ce que j'aurais choisi comme langage (même si je le connais sur le bout des doigts), mais ça fonctionne !
Bonne continuation sur la même voie !
A+ !
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
14 févr. 2009 à 12:18
merci :)
cs_exar Messages postés 286 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 22 avril 2012 1
14 févr. 2009 à 09:44
Amusant ! Comme le disent TATCTIC et ALAIN PROVISTE (qui me rappelle le pédiatre chez qui mes parents m'envoyaient quand j'étais gamin et qui s'appelle Provis... Pour la petite histoire...), il s'agit d'une machine de Turing. Il y aurait moyen de faire aussi cela, par exemple, avec des lettres, des chiffres, voire, pourquoi pas, des notes de musique.
Bien foutu, bravo !
cs_Alain Proviste Messages postés 908 Date d'inscription jeudi 26 juillet 2001 Statut Modérateur Dernière intervention 1 février 2015 2
6 sept. 2008 à 02:09
puisqu'effectivement un interpreteur brainfuck est très exactement equivalent à une machine de turing dont il est l'exemple le plus représentatif
tatactic Messages postés 20 Date d'inscription mardi 15 mars 2011 Statut Membre Dernière intervention 14 janvier 2012
25 août 2008 à 12:23
Pour ceux que ça peut intéresser il y a une machine de Turing virtuelle appelée "Visual Turing" (version 1 et 2).
Bon amusement.
J'espère que ça en amusera quelques uns.
Nico
Skreo Messages postés 53 Date d'inscription samedi 12 novembre 2005 Statut Membre Dernière intervention 25 août 2008
25 août 2008 à 10:49
Sympa ;-)
J'avais fait un interpréteur comme ça (ou plutôt un compilateur) il y a un peu plus d'un an : http://www.skreo.net/article-2905-21372-interpreteur-de-brainfuck.html
Optitech Messages postés 134 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 3 janvier 2009
23 août 2008 à 10:49
> je testerais ca plus tard, la je suis sur une version ocaml de "manipulation de code brainfuck"

LoL
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 août 2008 à 22:48
ah non, j'avais pas vu STDIN, et j'avais rien vu sur php.net pour faire autrement. je testerais ca plus tard, la je suis sur une version ocaml de "manipulation de code brainfuck"
cs_yoman64 Messages postés 592 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 4 décembre 2008
22 août 2008 à 22:42
Hello,

Une toute petite question, pourquoi tu ouvre un pointeur vers le stdin alors que php en initialise un directement, à savoir STDIN ?

Je me demande surtout si il y a une raison spécifique à ce choix, si STDIN a volontairement été oublié :P

Sinon excellente source, comme toujours, bien que je sois trop paresseux pour la tester, j'ai quand même pris la peine de lire le code ^^ :)
Optitech Messages postés 134 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 3 janvier 2009
22 août 2008 à 18:31
Caml dur ... oui quand on à jamais touché à un langage fonctionnel et FORTEMENT typé (ce qui est super), mais une fois que tu y a touché c'est assez simple. Une chose important pour faire du Caml : "Il faut avoir confiance à la récurcivité"

Sinon pour ta source Coucou747 (non là il nul le jeu de mot que je viens d'avoir en tête), code code et super ! J'ai hate de me lancé dans le brainfuck pour le testé à font :)
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 août 2008 à 18:23
c'est un langage assez mathematique oui, mais c'est pas un langage difficile, regarde, meme moi j'y arrive :)

tu peux regarder ici :
http://www.codyx.org/snip_lang_objectivecaml_45.aspx

si tu veux continuer une discution ocaml, tu peux creer un topic dans le bar et m'envoyer l'adresse en mp, ca sera probablement moins poluant :)
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
22 août 2008 à 18:07
ok, merci, j'ai entendu dire que c'est un langage dur et très mathématique...

J'ai également entendu dire que l'ocaml est utilisé dans la sécurité...

a++
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 août 2008 à 18:00
pour faire simple, sisons qu'il y a plusieurs caml, notement l'ocaml et le camllight.

l'ocaml est un langae imperatif, fonctionnel et objet. On peut en faire des choses tres interessantes, d'une facon totalement differente d'autres langages.
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
22 août 2008 à 17:39
A bon, on peut faire quoi en CAml ? quelle différence avec l'Ocaml ?

a++
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 août 2008 à 17:37
c'est tres bien le caml, on peut en faire des choses super !
Optitech Messages postés 134 Date d'inscription samedi 19 octobre 2002 Statut Membre Dernière intervention 3 janvier 2009
22 août 2008 à 13:10
> branifuck powaaa

Je viens de trouvé le langage qui me fait aimé CamL
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
21 août 2008 à 19:11
il y a quelques mois, je reflechissais sur la facon de "compiler" un pseudo langage en brainfuck

c'est _vraiment_ pas simple...
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
21 août 2008 à 19:02
lol, pas conseillé par contre ça peut être utile pour les mot de passes ou plutot pour les message qu'on veut pas que tout le monde puisse lire...

a++

PS : ça doit être chaud d'écrire un livre ou un programme en brainfuck...
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
21 août 2008 à 18:59
Ca doit être sympa un livre en brainfuck :D

J'avais pas noté avant, alors voila c'est chose faite :)
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
21 août 2008 à 18:40
Salut coucou747,

Belle source...

Moi aussi je vais la tester juste pour voir ce que je peus faire en brainfuck un peut plus difficile qu'un Hello World! lol

@codefalse : le brainfuck malgrès son nom n'est pas un langage difficile a apprendre (j'y suis arrivé en 20 minutes en déchifrant un message de pysco68...), il n'y a que 8 carractère possible...

Bon après c'est vrai qu'il faut vraiment bien connaitre la table de carractère ascii...

a++

PS : 10/10
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
21 août 2008 à 15:49
merci :)

codefalse, on a vu un mec au concours google code jam contest, il a resolu au moins un exo en brainfuck.
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
21 août 2008 à 12:29
Ah la masturbation intellectuelle :)
Rien de tel pour se muscler la matière grise et arriver a lire n'importe quel code plus facilement ^^
J'avais jeter un oeil sur ces langages il y a quelques temps mais pas eu le temps de me poser vraiment dessus dû à l'intérêt minime dans le métier.
Ceci dit c'est marrant de voir qu'il y ait des secoués comme moi qui regarde ça et pire ...font un interpréteur ;)
Non sans rire j'aime beaucoup et a quoi bon faire que des trucs utiles et lisibles quand on peut faire dans l'inutile, l'illisible mais surtout indispensable ^_^
Merci à toi coucou747 :)
djmmix Messages postés 152 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 29 avril 2009
21 août 2008 à 12:25
je connaissai pas le brainfuck,j'ai fait quelque recherche (wiki ^^')
langage simple mais dur a mettre en oeuvre c'est le cas de le dire faut ce bruler les neurone avec sa jolie source :)

PS:ta écris "Hello World!" :p
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
21 août 2008 à 10:18
Mais qui code en ca !!! :D

Je testerais bien ton code mais chuis trop fainéant pour me brainfucker mon cerveau :D
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
21 août 2008 à 09:07
Yeah faut que je teste ça juste pour le fun ^^
Rejoignez-nous