Edytujesz „Brainfuck”

Z Nonsensopedii, polskiej encyklopedii humoru

Uwaga: Nie jesteś zalogowany. Jeśli wykonasz jakąkolwiek zmianę, Twój adres IP będzie widoczny publicznie. Jeśli zalogujesz się lub utworzysz konto, Twoje zmiany zostaną przypisane do konta, wraz z innymi korzyściami.

Ta edycja może zostać anulowana. Porównaj ukazane poniżej różnice między wersjami, a następnie zapisz zmiany.

Aktualna wersja Twój tekst
Linia 1: Linia 1:
{{Programowanie}}
{{Programowanie}}
'''Brainfork''' - (''Brainf**k, Brainfuck, BF'') jest [[Egzotyczne języki programowania|egzotycznym językiem programowania]]. [[Ekspert|Eksperci]] (nie wiadomo dlaczego, ale z nimi się nie dyskutuje) uważają, że [[prezentowanie poziomu (języki programowania)|prezentuje bardzo niski poziom]], niższy nawet od [[Asembler|asemblera]], można by nawet rzec, że żenujący. Jednak nie przeszkadza to milionom programistów tutaj przed milionami użytkowników używać tego języka do pisania [[Program|programów]].
{{cytat|Najważniejsze jest niewidoczne dla oczu.|[[Antoine de Saint-Exupéry]] zapytany, czemu nie napisał „Małego Księcia” w [[Java|Javie]]}}
==Historia Brainfork'a==
'''Brainfuck''' (''Brainf**k, BF'') [[Ezoteryczne języki programowania|ezoteryczny język programowania]]<ref>Nie pytaj, skąd ta nazwa</ref>. [[Ekspert|Eksperci]] (nie wiadomo dlaczego, ale z nimi się nie dyskutuje) uważają, że prezentuje bardzo niski poziom, niższy nawet od [[Asembler|asemblera]], można by nawet rzec, że żenujący. Jednak nie przeszkadza to milionom programistów tutaj przed milionami użytkowników używać tego języka do pisania [[Program|programów]].
Brainfork został całkowicie wymyślony przed wojną przez Braina Forka - kambodżańskiego [[surrealizm|surrealistę]], widzącego w programowaniu nową dziedzinę sztuki. Do tworzenia tego języka zainspirowało go zjawisko zbierania się chipsów pod klawiaturą. Jako, że sam język jest zupełnie bez sensu i do [[Fryderyk Nietzsche|niczego]] się nie przydaje, szybko stał się jednym z najważniejszych narzędzi współczesnego programisty.


==Składnia Brainfork'a==
== Historia Brainfucka ==
Programy napisane w Brainfork'u składają się z ciągu niżej podanych znaków, pozostałe są ignorowane i traktowane przez [[kompilator]] za dostateczny powód wyświetlenia masy błędów i zawieszenia [[komputer|komputera]].
Brainfuck został całkowicie wymyślony przed wojną przez Braina Fucka kambodżańskiego [[surrealizm|surrealistę]], widzącego w programowaniu nową dziedzinę sztuki. Do tworzenia tego języka zainspirowało go zjawisko zbierania się [[Chipsy|chipsów]] pod [[Klawiatura|klawiaturą]]. Jako, że sam język jest zupełnie bez sensu i do [[Fryderyk Nietzsche|niczego]] się nie przydaje, szybko stał się jednym z najważniejszych narzędzi współczesnego programisty.
{|border="1" cellspacing="0" cellpadding="5"
!Znak
!Znaczenie
|---
|align="center"|>
|align="center"|Operator ingrediencji, penetruje następny zgodnie z ruchem wskazówek zegara obszar pamięci
|---
|align="center"|<
|align="center"|Operator degrediencji, penetruje poprzedni zgodnie z ruchem wskazówek zegara obszar pamięci
|---
|align="center"|+
|align="center"|Operator inkremacji, zwiększa ilość śmiesznych wspomnień w miejscu pamięci wskazywanym przez wskazujący wskaźnik
|---
|align="center"|-
|align="center"|Operator dekremacji, zmniejsza ilość śmiesznych wspomnień w miejscu pamięci wskazywanym przez wskazujący wskaźnik
|---
|align="center"|.
|align="center"|Operator out, komputer robi zakodowaną w tym miejscu pamięci czynność
|---
|align="center"|,
|align="center"|Operator in, komputer słucha co do niego mówi użytkownik, i w zależności od humoru zapamiętuje to lub i nie
|---
|align="center"|[
|align="center"|Operator skoku, skacze za najbliższe ], jeśli we wskazywanym przez wskazujacy wskaźnik miejscu w pamięci nie ma żadnych wspomnień
|---
|align="center"|]
|align="center"|Operator odskoku, skacze przed najbliższe [
|}


Podsumowując operatory '>' i '<' służą do przeszukiwania pamięci, '+' i '-' do oczyszczania lub dodawania wspomnień, '.' do przypominania, ',' do zapamiętywania, a '[' i ']' do uzykania efektu [[deżawi]].
== Składnia Brainfucka ==
==Modyfikacje==
Programy napisane w Brainfucku składają się z ciągu niżej podanych znaków, pozostałe są ignorowane i traktowane przez [[kompilator]] za dostateczny powód do wyświetlenia masy błędów i zawieszenia [[komputer osobisty|komputera]].
Pisanie w Brainfork'u stało się swoistego rodzaju testem umiejętności programistycznych, szczególnie jest to widoczne w środowisku [[Kambodża|kambodżańskich]] koderów, gdzie powstało około 2000 ze wszystkich 3000 modyfikacji podstawowej wersji Brainfork'a. Oto niektóre z nich:

* [[BrainBrain]] - wersja bardzo ambitna, umożliwiono [[programowanie obiektowe]]
W skrócie: operatory '>' i '<' służą do przeszukiwania pamięci, '+' i '-' do oczyszczania lub dodawania wspomnień, '.' do przypominania, ',' do zapamiętywania, '[' i ']' do uzykania efektu [[déjà vu|deżawi]], a 'Y' do [[seks|rozmnażania]]. Wystarczy.
* [[VisualFork]] - komercyjna wersja wyprodukowana przez potentata branży - [[Microsoft]]

* [[DoubleFork]] - przeszukiwanie pamięci odbywa się teraz wzdłuż i wszerz
== Przykładowe programy ==
* [[BrainDamage]] - umożliwia przeszukiwanie podświadomości komputera oraz wpływanie na jego [[ego]]
=== Hello, world ===
* [[HardFork]] - czy 2 znaki wystarczają? polemika trwa nadal
Program wypisujący tekst „Nienawidzę świata, a jeszcze bardziej siebie”
* [[BrainLamer]] - wersja light dla tzw. [[chacker|chackerów]] (nie mylić z hackerami!)
* [[UmbaUmba]] - z definicji przeznaczony jest dla naszych najbliższych krewnych w świecie zwierząt, czyli dla [[panda|pand]]
==Przykładowe programy==
===Hello world===
Program wypisujący tekst "Nienawidzę świata, a jeszcze bardziej siebie"
<pre>
<pre>
.. ..
.. ..
Linia 25: Linia 59:
.+.
.+.
</pre>
</pre>
===INDoctor===

=== INDoctor ===
Program do dowodzenia twierdzeń metodą [[indukcja matematyczna|indukcji matematycznej]] (wiersze od 44364436 do 44364448).
Program do dowodzenia twierdzeń metodą [[indukcja matematyczna|indukcji matematycznej]] (wiersze od 44364436 do 44364448).
<pre>
<pre>
Linia 44: Linia 77:
</pre>
</pre>


[[Kategoria:Egzotyczne języki programowania]]
== Zobacz też ==
* [[BeFunge]]
* [[COW]]
* [[HQ9+]]
* [[Malbolge]]

{{Przypisy}}
{{stopka}}
[[Kategoria:Ezoteryczne języki programowania]]
Cc-white.svg Wszystko, co napiszesz na Nonsensopedii, zgadzasz się udostępnić na licencji cc-by-sa-3.0 i poddać moderacji.
NIE UŻYWAJ BEZ POZWOLENIA MATERIAŁÓW OBJĘTYCH PRAWEM AUTORSKIM!
Anuluj Pomoc w edycji (otwiera się w nowym oknie)