Brainfuck 1
Brainfuck "Hello World!":
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.@
Ha ezt olvasod az mar erossen felkelthette az erdeklodesed. Mi is az a brainfuck? Egy programozas definiciojanak megfelelo nyelv, de annal semmivel nem nyujt tobbet. Es pont ez a varazsa is. Mas szoval egy Turing Automata vezerlesi nyelv. :)
Par mondatban akkor hat aljon itt mit miert hogyan, nomeg egy ket pelda.
From WIKI: (lasd linkek)
A nyelvet Urban Müller készítette Amiga OS 2.0 alá azzal a céllal, hogy olyan Turing-nyelvet hozzon létre, amire a lehető legkisebb fordítóprogramot meg tudja írni. (Ez eredetileg 240 byte hosszú volt, de híresztelések szerint sikerült később 200 byte alatt megírnia.)
Futtatas:
Hat mi sem egyszerubb.
- Ubuntun:
apt-get install bfVigyazz: 13,9KB is lehet. :) - tobbi Linux: Sorry, de megoldhato gondlom.
- Windows: :P amugy http://www.4mhz.de/
- Live: Mert hogy ilyen is van. :) http://www.ircbot.hu/bf/bi.html
Jelentesek:
+: pointer ertek +1-: pointer ertek -1>: pointer pozicio +1<: pointer pozicio -1[: ciklus nyit]: ciklus zar.: pointer ertek kiiras (ASCII kod),: pointer ertek beolvasas (ASCII kod)- minden mas karaktert nem vesz figyelembe a BF, igy boseges commentezesre van mod.
Leiras:
Hat ezen meg dolgoznom kell, megprobalom mas megkozelitesbol, rovidebben, es sikerelmennyel gazdagabban demonstralni a BF-et, mint azt a masodik linken lathatjatok. Ezt nem ebben az irasban fogom megkiserelni, de ami kesik nem mulik. :) Jo lenne magyarorszagon is megszeretteteni, megismertetteni a nyelvet.
Addig is megegy kedvcsinalo a linkeket leszamitva, "Ertelmesebb" ASCII karakterek: +++++++++++++[>++++++++++<-]>---[>+.<-] Vagyis egy szorzas, majd egy ugyanilyen hosszu ciklus, n-ig minden elemet kiirva.
Szebben, jobban es kicsit bonyolitva:
+++[>++++<-]>[>++++++++<-]>->+++++[>++++++<-]>+<<[>>+.<<-]
Pbrain:
Avagy "procedural brainfuck". Vagyis eljarasokkal bovitett BF, mely definialja meg az alabbi parancsokat:
(: eljaras definialas kezdete. Az aktualis pointerbe lesz mentve): Eljaras definialasanak a vege.:: Aktulis pointeren levo eljaras futtatasa
Ugy velem nem sok magyarazatra szorul, bonyolultabb programoknal jol jon. Errol ennyit, ugyse ismeri minden fordito.
Linkek:
- http://www.ircbot.hu/bf/?site=home
- Jo kis magyar leiras: http://www.ircbot.hu/bf/brainfuck_tutorial.txt
- Tovabbi linkek: http://www.ircbot.hu/bf/?site=forrasok
- http://hu.wikipedia.org/wiki/Brainfuck
- http://www.iwriteiam.nl/Ha_BF.html
- http://www.hevanet.com/cristofd/brainfuck/
A nemsokara varhato tovabbi irasokban egy ket egyszerubb majd bonyolultabb programot szeretnek kicsit feldolgozni, felig meddig laikusoknak szanva.
(Ha geek vagyok ugyis van bf2c fordito.
http://www.hevanet.com/cristofd/brainfuck/dbf2c.b)
Jo szorakozast!