On Mon, May 26, 2003 at 06:48:20PM +0000, François Boisson wrote: > PS: Tu peux donner une présentation succinte de Brainfuck :-), le nom me > plait
C'est le langage le plus petit du monde, au point que c'est presque plus un assembleur pour machine virtuelle qu'un langage... Donc: Il y a un pointer, qui se déplace dans une mémoire initialisée à 0. Le programme est consititué d'une suite d'instructions parmi: > incrémente le pointeur ( ++p ) < décrémente le pointeur ( --p ) + incrémente le pointé ( ++*p ) - décrémente le pointé ( --*p ) . écrit le pointé à l'écran , saisit un nombre, l'écrit dans le pointé [ Saute après le ] correspondant si le pointé est nul ] Saute au [ correspondant Un exemple qui écrit les premiers nombres de la suite de Fibonacci: +++++++++++ >+>>>>++++++++++++++++++++++++++++++++++++++++++++ >++++++++++++++++++++++++++++++++<<<<<<[>[>>>>>>+> +<<<<<<<-]>>>>>>>[<<<<<<<+>>>>>>>-]<[>++++++++++[- <-[>>+>+<<<-]>>>[<<<+>>>-]+<[>[-]<[-]]>[<<[>>>+<<< -]>>[-]]<<]>>>[>>+>+<<<-]>>>[<<<+>>>-]+<[>[-]<[-]] >[<<+>>[-]]<<<<<<<]>>>>>[+++++++++++++++++++++++++ +++++++++++++++++++++++.[-]]++++++++++<[->-<]>++++ ++++++++++++++++++++++++++++++++++++++++++++.[-]<< <<<<<<<<<<[>>>+>+<<<<-]>>>>[<<<<+>>>>-]<-[>>.>.<<< [-]]<<[>>+>+<<<-]>>>[<<<+>>>-]<<[<+>-]>[<+>-]<<<-] Formidable! (version commentée: http://esoteric.sange.fi/brainfuck/bf-source/prog/fibonacci.txt) Le langage a été prouvé "Turing-complete", donc on doit pouvoir réécrire Linux avec... Le plus gros interêt bien sûr est de résoudre les problèmes de logiques/math qui vont avec: "Quelle est la plus petite chaine d'instructions pour créer la constante 5? Et la constante 25?" 5 est facile: +++++ 15: >+++++[<+++++>-] (à vue de nez... je suis pas spécialiste) Voilà voilà. "Brainfuck" dans google ne renvoie que des liens sur ce langage, et pas d'insanités. Si ça, c'est pas plus facile à apprendre qu'Ocaml... Bien sûr, il est peut-être plus difficile de faire qqch avec ;) /Y -- Marbles should be kept together.