Jump to content

Битник (язык программирования)

Битник
Парадигма Стек-ориентированный
Разработано Клифф Л. Биффл
Разработчик Клифф Л. Биффл
Впервые появился 2001 год ; 23 года назад ( 2001 )
ТЫ Кросс-платформенный
Веб-сайт скала /эзотерический /битник .html
Под влиянием
л33т [1]

Beatnik — это простой стек-ориентированный эзотерический язык программирования , созданный Клиффом Л. Биффлом. Программа битников состоит из любой последовательности английских слов. Каждому слову присваивается балл, который можно получить за него в игре «Эрудит» . Значение балла определяет, какая функция выполняется. Функции включают в себя помещение оценки следующего слова в стек, тестирование стека, переход вперед или назад в программе и другие операции со стеком. [2] [3] [4] [5] [6] [7] [8]

Разметка

[ редактировать ]

Переводчик читает слова в стихотворении , игнорируя знаки препинания, пробелы и символы новой строки . Некоторые функции состоят из одного слова, другие имеют аргумент (это функции из двух слов ). Двухсловные функции описываются ниже в виде " 5,n". Это означает как слово, значение которого равно 5, так и следующее слово (значение которого равно ' n') читаются. [2] [3]

Команды
Значение слова Псевдокод Описание
<5 NOOP Необязательно: переводчик может посмеяться над вами.
5,н push(n) Поместите значение следующего слова в стек.
6 pop() Вытащите число из стека и сбросьте его.
7 push(pop()+pop()) Вставьте два числа, сложите их и нажмите результат.
8 push(input()) Введите символ и введите его значение.
9 print(pop()) Введите число и выведите его как символ.
10 push(pop()-pop()) Вставьте два числа, вычтите первое из выпавших чисел из второго и нажмите результат.
11 a = pop(); b = pop(); push(a); push(b) Вставьте два числа, поменяйте их местами и верните обратно.
12 a = pop(); push(a); push(a) Введите номер и нажмите его дважды.
13,н if(top()==0) jump(+n) Вставьте число и пропустите вперед n (на самом деле n+1 ) слов, если число равно нулю.
14,н if(top()!=0) jump(+n) Вставьте число и пропустите вперед n (на самом деле n+1 ) слов, если число не равно нулю.
15,н if(top()==0) jump(-n) Вставьте число и пропустите n слов назад, если число равно нулю.
16,н if(top()!=0) jump(-n) Вставьте число и пропустите n слов назад, если число не равно нулю.
17 exit() Остановите программу.
18-23 NOOP Необязательно: может посмеяться над вами, но только если у него был плохой день.
>23 Вызывает «аплодисменты битников».
Легенда
Псевдокод Значение
NOOP Нет операции
pop() удалить значение из вершины стека и вернуть его
push(x) поместить x в стек
print(x) напечатайте символ х
input() прочитать символ от пользователя. Блокируется до тех пор, пока символ не будет прочитан.
; разделяет несколько операторов. Они выполняются по порядку.
if(expression) statement тогда и только тогда, когда выражение истинно, выполните оператор
jump(x) переместить место чтения вперед или назад на x слов.

Вот значения букв скрэббла для справки.

Привет, мир

[ редактировать ]

Пример « Hello World » на языке битников. [9]

Soars, larkspurs, rains.
Indistinctness.
Mario snarl (nurses, natures, rules...) sensuously retries goal.
Agribusinesses' costs par lain ropes (mopes) autos' cores.
Tuner ambitiousness.
Flit.
Dour entombment.
Legals' saner kinking lapse.
Nests glint.
Dread, tied futures, dourer usual tumor grunts alter atonal
  garb tries shouldered coins.
Taste a vast lustiness.
Stile stuns gad subgroup gram lanes.
Draftee insurer road: cuckold blunt, strut sunnier.
Rely enure pantheism: arty gain groups (genies, pan) titters, tattles, nears.
Bluffer tapes?  Idle diatom stooge!
Feted antes anklets ague?  Remit goiter gout!
Doubtless teared toed alohas will dull gangs' aerials' tails' sluices;
Gusset ends!  Gawkier halo!

Enter abstruse rested loser beer guy louts.
Curtain roams lasso weir lupus stunt.
Truant bears animate talon.  Entire torte originally timer.
Redo stilt gobs.

Utter centaurs;
Urgent stars;
Usurers (dilute);
Noses;
Bones;
Brig sonar graders;
Utensil silts;
Lazies.
Fret arson veterinary rows.

Atlas grunted: "Pates, slues, sulfuric manor liaising tines,
  trailers, rep... unfair!  Instant snots!"

Sled rested until eatery fail.
Ergs fortitude
  Indent spotter
Euros enter egg.
Curious tenures.
Torus cutlasses.
Sarong torso earns cruel lags it reeled.

Engineer: "Erase handbag -- unite ratification!"

oaring oaten donkeys unsold, surer rapid saltest tags
BUTTERED TIBIA LUGS REWIRING TOILETS
anion festers raring edit epilogues.
DIRGE ROTOR.
linnet oaring.
GORE BOOTIES.
Ironed goon lists tallest sublets --
Riots,
Raucous onset.

Ignobly, runners' diet anguishes sunrise loner.
Erode mob, slier switcher!
Loaners stilt drudge pearl atoll, risking hats' ends.

Rebind sitters.

Toga epistles -- crud lard.  (Pager purse dons souls.)

glob title a curio hired rites shed suds lade grease strut arctic revs toad
unless idlers rind stilt region land GERMICIDES SULTANA GUTS gill siting leans
nice spurs
tests gloves
roused asp

Holes!  Moles!  (Sores!)
Hygienists!  Scars!  (Asses!)
Smells spell rares.

Cubs instant sing in parse goodies.
Rosin.  Unhelpful sisal acres.  Slope told.
MALENESS PASTA LAB.  "Infirmary vine," rang illiterates (beans).
Rosin sours, insults truss abalones, nailed rules, helical atlases.
Dear remodeling stings mar rents.
Sunless shiner orb (silly idol.)
Clarity disses senna.
Vagabonds sauted; sloes performed gelds.
Alter post radial lip sectioning gums.
Saint Towellings.
Larger aeons telephone stolid char, pal!
Boats Dean forsook, rosters, tunas, terrariums -- united, traced.
Nude pagoda careens.

См. также

[ редактировать ]
  1. ^ «Язык программирования l33t» . www.oocities.org . Проверено 23 марта 2016 г.
  2. ^ Перейти обратно: а б «Битник-Эсоланг» . esolangs.org . Проверено 23 марта 2016 г.
  3. ^ Перейти обратно: а б Биффл, Клифф (19 мая 2001 г.). «Битник – cliffle.com» .
  4. ^ Группа, Книги (01.07.2010). Эзотерические языки программирования: Intercal, Brainfuck, Befunge, язык программирования Шекспира, Whitespace, Ook!, Beatnik, Piet, Malbolge, Chef (на немецком языке). ООО «Дженерал Букс». ISBN  9781158960996 .
  5. ^ «Битник | Технологии кошачьего глаза» . catseye.tc . Проверено 25 марта 2016 г.
  6. ^ «Битник» . wiki.tcl.tk. ​Проверено 25 марта 2016 г.
  7. ^ «Acme::Beatnik — search.cpan.org» . search.cpan.org . Проверено 25 марта 2016 г.
  8. ^ Палок-Берже, Камилла (1 января 2009 г.). Поэтика кодов компьютерной сети (на французском языке). Издания современных архивов . ISBN  9782914610704 .
  9. ^ «Программа Hello world на эзотерических языках – Эсоланг» . esolangs.org . Проверено 23 марта 2016 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d751694407d0c674c8c9b355d178fcfb__1722471000
URL1:https://arc.ask3.ru/arc/aa/d7/fb/d751694407d0c674c8c9b355d178fcfb.html
Заголовок, (Title) документа по адресу, URL1:
Beatnik (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)