Это командная говядина, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
Beef - гибкий интерпретатор Brainfuck
СИНТАКСИС
говядина [ВАРИАНТ] ... ФАЙЛОВ
ОПИСАНИЕ
Beef - гибкий интерпретатор языка программирования Brainfuck.
Его можно настроить с помощью параметров, описанных ниже, что позволяет запускать
Программы Brainfuck, которые делают предположения о поведении интерпретатора.
Beef не устанавливает произвольных ограничений на размер ленты памяти, используемой программой, и
распределяет ячейки памяти по мере необходимости.
ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ
-с, --store =ЧТО
Выберите значение для сохранения на ленте по достижении конца ввода. ЧТО
по умолчанию «ноль» (сохранить ноль); другие возможные значения: `eof '(store -1,
значение, обычно присваиваемое константе C EOF) или `то же '(оставьте значение нетронутым)
-д, - включить-отладку
Включите поддержку отладки. По умолчанию инструкции по отладке не выполняются.
-о, --output-file =ФАЙЛОВ
Записать вывод программы в ФАЙЛОВ
-я, --input-file =ФАЙЛОВ
Прочитать ввод программы из ФАЙЛОВ
ФАЙЛОВ может быть локальным путем или любым URI, поддерживаемым GIO. Если ФАЙЛОВ - стандартный ввод или
будет использоваться стандартный вывод, в зависимости от контекста.
МОЗГ АНГЛИЙСКИЙ ЯЗЫК
Программы Brainfuck работают на ленте памяти, которая содержит практически неограниченное количество
клетки; каждая ячейка может хранить значение, которое можно рассматривать либо как символ, либо как
целое число (его кодировка ASCII) в зависимости от контекста. Курсор указывает
в одну из ячеек, которая считается текущей; курсор можно перемещать
вокруг по желанию.
Исходный файл Brainfuck состоит из ряда инструкций Brainfuck; любой символ, который
не инструкция считается комментарием и игнорируется. Есть исключения из этого
правило, см. ниже.
Инструкции Brainfuck:
+ Увеличить значение в текущей ячейке на единицу
- Уменьшить значение в текущей ячейке на единицу
> Переместите курсор на одну ячейку вправо
< Переместите курсор на одну ячейку влево
[ Начать цикл. Инструкции, содержащиеся в цикле, выполняются до тех пор, пока
значение текущей ячейки не равно нулю
] Завершить цикл, начатый [инструкцией
, Прочитать символ из ввода и сохранить его в текущей ячейке
. Записать значение текущей ячейки в выход
# Выгрузите содержимое ленты памяти в целях отладки. Эта инструкция
игнорируется, если не указан параметр --enable-debugging
Если первая строка исходного файла начинается с волшебной последовательности #! это игнорируется.
Это позволяет вам выполнять программу Brainfuck без явного вызова Beef, как вы
подойдет, например. программа на Python.
Символ ! имеет особое значение для Beef: он отмечает конец программного кода, а
начало его ввода. Если этот символ присутствует в исходном файле, ввод времени выполнения будет
игнорировать.
ПРИМЕРЫ
Классическая программа Hello World могла быть написана на Brainfuck как
++++++++++ [> +++++++> ++++++++++> +++> + <<<< -]> ++.> +. + +++++
+ .. +++.> ++. << +++++++++++++++.>. +++. ------ .-------- .> +.>.
Следующая программа Brainfuck может использоваться для замены кошка(1) полезность:
#! / usr / bin / beef
, [.,]
Это, конечно, при условии, что вам не нужно ничего из кошка(1) причудливые параметры командной строки, вы
иметь оболочку с рабочим перенаправлением ввода-вывода и чувством юмора.
АВТОРЫ
Андреа Болоньани[электронная почта защищена]>.
Используйте говядину онлайн с помощью сервисов onworks.net