W bibliotece można znaleźć nasze programy, a także te które uznaliśmy za ciekawsze.
Jeśli znalazłeś lub napisałeś aplikację w brainfuck'u twoim zdaniem wartą uwagi, podeślij ją nam na e-mail promyk@doleczek.pl.
Kto wie jak wielu osobom jeszcze się spodoba.
In the library you can find our programs as well as those which we found interesting.
If you have created or found some code written in Brainfuck which you think is worth seeing, send it to us at promyk@doleczek.pl.
Who knows how many others will like it too.
Proste i edukacyjne
Simple and educational
Ambitniejsza opcja
More advanced
API
Strona którą masz przed sobą posiada wbudowane API,
które pozwala na przekazywanie kodu programu do uruchomienia w adresie URL.
W ten sposób, jeśli posiadasz stronę, blog lub inne miejsce w internecie gdzie publikujesz swój kod napisany w Brainfuck'u,
możesz także umieścić link który pozwoli go wykonać.
This page has internal API,
that allows to run code provided in the URL.
This way, if you have your own page, blog or other place in internet where you publish your Brainfuck code,
you can add link to run your code.
Powyższy link otworzy stronę z załadowanym kodem. Zakładka będzie się nazywała "Hello World". Dodatkowo program zostanie uruchomiony.
The example above will open page with code. Tab with code will be named "Hello World". Additionaly code will be executed.
O projekcie
About the project
Trudno zdecydować czy Brainfuck jest bardziej intrygująco ciekawy, czy rozkosznie zagmatwany.
Nie mniej jednak warty uwagi. Więcej na jego temat można znaleźć na
Wikipedii.
Brainfuck is a very tricky language with some interesting properties, that make it noteworthy.
You can find more about it at
Wikipedia.
Wartościowym i inspirującym materiałem są algorytmy zawarte na
esolangs
- gorąco polecamy.
You can also find some very useful tricks and solutions at
esolangs.org.
Skróty klawiszowe - pozwalające na wykonywanie pewnych czynności szybciej:
CTRL + N - nowy program;
CTRL + ENTER - uruchomienie programu z aktualnej zakładki;
CTRL + P - pauza - wstrzymanie programu na chwilę;
CTRL + X - zamknięcie terminalu z aktualnej zakładki;
CTRL + S - zapisz aktualną zakładkę;
CTRL + D - zaawansowane - podgląd pamięci i rejestrów;
CTRL + Left - przejście na zakładkę po lewej;
CTRL + Right - przejście na zakładkę po prawej;
CTRL + Z - wysyła znak o wartości zero (często oznacza się w ten sposób koniec łańcucha znaków).
Keyboard shortcut - you can do some things quicker:
CTRL + N - new program;
CTRL + ENTER - run program in the active tab;
CTRL + P - pause program;
CTRL + X - closing terminal within the active tab;
CTRL + S - save code from the active tab;
CTRL + D - advanced view of memory and registers;
CTRL + Left - go to the previous tab;
CTRL + Right - go to the next tab;
CTRL + Z - sends zero char to the program (some programs use it as a sign: end of string).
Projekt powstał jako próba sił w starciu z kilkoma technologiami, technikami i bibliotekami, którego efekty możecie oglądać.
Bootstrap - część wizualna;
jQuery - mechanika strony;
wielowątkowość - nawet najdłuższe programy w Brainfuck'u nie zwieszają strony, gdyż są dzielone i zarządzane w mniejszych częsciach;
AJAX - doładowywanie programów z biblioteki;
wersje językowe - szybka zmiana bez przeładowywania strony;
debug mode - istnieje możliwość podglądu pamięci i rejestrów wirtualnej maszyny Brainfuck'a;
drag'n'drop - możliwość przeciągania i upuszczania plików z kodem na stronie co owocuje ich otwarciem;
download - pobieranie plików źródłowych z poziomu strony (opcja w menu plików);
resize - automatycznie rozszerzające się okna z tekstem;
UTF-8 - wsparcie dla kodowania znaków UTF-8;
Open graph - dodatkowe metatagi opisujące stronę;
CSS3 background pattern - ciekawe zastosowanie CSS3;
API - pozwala zewnętrznym stronom na korzystanie z dobrodziejstw tego projektu;
Inteligentne usuwanie komentarzy - także z niewykonywanych pętli;
uglifyJS - kod JavaScriptu został skrócony i zoptymalizowany.
Utilized libraries, solutions and implemented capabilities:
Bootstrap - visual part;
jQuery - engine;
AJAX - dynamic loading from the library;
CSS3 background pattern - light and interesting;
debug mode - advanced options for developers;
drag'n'drop - drag and drop a file with the Brainfuck code over this page to open it;
resize - dynamic resizing of windows with code;
UTF-8 - support for UTF-8 encoding;
API - runs code from other pages;
Smart comments removal - additionaly removes loops that will be never executed;
uglifyJS - JavaScript optimisation.
Jeśli uważasz ten projekt za wartościowy - udostępnij informację o nim :-)
If you find this project interesting - Share it! :-)