Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Brainfuck

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search
Versija spausdinimui nebėra palaikoma ir gali turėti atkūrimo klaidų. Prašome atnaujinti savo interneto naršyklės žymes ir naudoti numatytąją interneto naršyklės spausdinimo funkciją.

Brainfuck - viena iš pirmų programavimo kalbų, kur specialiai žmonėms durninti buvo skirta. Kažkokie hakeriai ją išrado, tai paskui sakė, kad proto krušimas - tai kažkokia ezoterika. Tai šituo proto krušimo pavadinimu toji Brainfuck ir pavadinta.

Sako, kad kai buvo sisteminių administratorių diena, tai kažkurį kartą tą reikalą organizavęs Ričardas Savukynas davė specialiai visiems tą Brainfuck panaudoti, kad visi sužinotų. Tai nedaugelis teįstengė tą uždavinį išspręst...

Išties tai Brainfuck kalba labai daug kuo primena paprastą asemblerį, tiktai kad užrašymas yra kažkoksai kvailas. Bet taip ar anaip, visvien gi tenka dirbti su kažkokiais registrais, skaitliukais ir adresų inkrementacijomis. Taip kad skirtumas tėra išorinis, bet ne vidinis.


Hello World Brainfuck kalboje

+++++ +++++             initialize counter (cell #0) to 10
[                       use loop to set the next four cells to 70/100/30/10/40
    > +++++ ++              add  7 to cell #1
    > +++++ +++++           add 10 to cell #2 
    > +++                   add  3 to cell #3
    > +                     add  1 to cell #4
    > ++++                  add 4 to cell #5
    <<<<< -                  decrement counter (cell #0)
]                   
> ++ .                  print 'H'
> + .                   print 'e'
+++++ ++ .              print 'l'
.                       print 'l'
+++ .                   print 'o'
>>> ++++ .              print ','
<< ++ .                 print ' '

< +++++ +++ .           print 'w'
 ----- --- .            print 'o'
+++ .                   print 'r'
----- - .               print 'l'
----- --- .             print 'd'
> + .                   print '!'
> .                     print '\n'