Мозголомы 21 века

School_11

Почти экстремальное программирование: мозголомы 21 века
    
К необычным языкам программирования все давно привыкли. Чуть ли не каждый новый язык принято обзывать «странным» и «в корне отличным от всех предыдущих». И создатели С и творцы Перла с Фортом с рвением призывали «забыть весь предыдущий опыт – этот язык в корне отличается от языков, обычно используемых в практическом программированием». За этой мишурой как-то и забываешь, что помимо практического программирования, есть ещё и теоретическое, экспериментальное. Языки столь странные, что кажутся абсурдными. Но не спешите скоропостижно щёлкать по крестику браузера (или мочалить Ctrl+F4 речь не пойдёт о детских забавах и странных шутках андеграунда. Неужели вы думаете, что в спрятанных за толстыми пуленепробиваемыми стёклами глазах бородатых мужиков, не один десяток лет отдавших железным монстрам, кроется искорка веселья? Отнюдь. Любая наработка в экспериментальном программирование таит в себе цель. Пусть не всегда доступную пониманию простых смертных.
CLWNPA
Большинство людей, познакомившихся с Compiler Language With No Pronounceable Acronym (так называется язык помимо того, что сошли с ума и стройными рядами отправились работать в компьютерные журналы, вынесли интересное мнение: и в программирование есть место жёсткому стёбу. Стоит ли говорить, что авторы языка – Дон Вудс и Джеймс Лион – перед собой такую задачу не ставили. О, воскликнут заросшие профессионалы с воспалённым блеском в глазах, как так, язык полностью абсурдный с идиотской документацией и нулевой практической реализуемостью. Не спешите ломать автору руки и ноги (кто-то вас опередил, хо-хо-хо!).
Обратите внимание, суть языка заключалась в том, чтобы ни одна команда не была похожа на что либо уже созданное. Это ли не чудо! Вы только представьте, большинство языков рождаются друг из друга как генетические мутанты – посредством инцеста. А тут разом появляется питомец с чистой кровью, разобраться в котором не так просто, как с его более популярными собратьями. Не эту ли технологию используют военные в своих разработках? Забудьте про С, AJAX и Linux – ядерными закромами родины и атомными электростанциями управляет такая высокоинтеллектуальная хренотень, что высоколобый разработчик свободного софта обязан совершить харакири собственными заскорузлыми ногтями, лишь бросив взгляд на детище яйцеголовых. Пусть в CLWNPA к инструкциям добавлялись команды please и with the divine help, а другие команды явно выдавали в пользователи поклонника теории Электронных Богов (компьютеры, вирусы, интернет – следующая после человека ступень эволюции т.е. сложностью язык не отличался (разве что набожностью). Но он был первым (или не совсем первым, но это несколько другая история в котором человек вышел за жёсткие рамки самопрограммирования. Вышел, чтобы объятый ужасом вбежать обратно.
BrainFuck
МозгоТрах стал логическим продолжением CLWNPA (кстати говоря, на Хакере был цикл статей по основам языка - все там на самом деле довольно просто ). Если можно не так как все, то почему нельзя не так как всегда? Идея, лёгшая в основу языка, проста как минет асфальтоукладчицы – доказать возможность существование рабочего языка, коренным образом отличавшегося от всех. Главное слово тут – рабочий. Просто создать новый язык программирования сложно, но возможно (примерно как смастерить собственный компьютеры и поставить на него свою же ось а вот сделать так, чтобы на нём решались многие (желательно – все!) современные вычислительные задачи – работа не для талантливых студентов. И ведь удалось же! Решение было найдено, но о нём не вострубили СМИ, а авторам не дали Нобелевской премии – поскольку BrainFuck как ковбой Джо из анекдота никому не было нужен. Никто не мог понять, зачем нужен язык, на котором сакраментальная фраза «Hello world!» выглядела вот так:
++++++++++[>+++++++>++++++++++>+++>+<
<<<-]>++.>+.+++++++..+++.>++.<<++++++
+++++++++.>.+++.———.————.>+.>.
Жалкие овцы, что тут можно сказать, жалкие и недалёкие люди. Не берусь судить, что в ЦРУ использовали этот язык, но то, что им заинтересовались – точно! И не только ЦРУ. Забудьте про все стандарты шифрования – достаточно на БрейнФаке написать аналог WinGuard Pro, чтобы обломать зубы многим дешифровальщикам. Это – чудо. Это – грандиозный шедевр программирования. Это – техногенный прорыв, усиленный оргиазмическим эффектом. Язык можно превратить в нечто неописуемое, сложно поддающееся пониманию, а значит практически безопасное. Кулхакеры, ловите на заметку, пишите письма на МозгоТрахе и его старших детях и не беспокойтесь о спутниках-шпионах.
BrainFuck получил множество продолжений и остался популярным до сих пор: Brainfork (многозадачный FuckFuck (говорят, что некие саратовские программисты разработали и русский аналог, сплошь состоящий из нецензурных слов, но увидеть его воочию, к счастью, не довелось. DoubleFuck; дело дошло до того, что пять лет назад возник язык сплошь состоящий из одних пробелов. Русские программисты долго не мирились с положением «взять идею – сделать по-своему» и разработали язык, сплошь состоящий из самйликов – smilescript. Пожалуй, ни один другой язык не содержит в себе столько эмоций и переживаний! Да вы только представьте лица сотрудников ФАПСИ, занимающихся расшифровкой послания на таком языке. Хо-хо-хо!
Malbolge
Ничем иным как стремлением к тотальной безопасности объяснить появление этого языка нельзя. И действительно, вот где ад для программиста и непаханое поле для контрразведчика. Текст, написанный на этом языке (пусть мы говорим о программирование, но ничто не мешает нам программировать английский и – давайте пофантазируем – родной русский язык) скорее всего никто не признает разумным. В том то вся и фишка! Вот увидите, не пройдёт и десятка лет, как школьнику начнут в курилках разговаривать на Malbolge. Если есть более безопасный язык, то я его знать не хочу – потому что иначе мозг перегрузится и сгорит. Итак, слово «мама» для компьютерного языка или «hello world»:
(=<`:9876Z4321UT.-Q+*)M’&%$H”!~} |Bzy?=|{z]KwZY44Eq0/{mlk**
hKs_dG5[m_BA{?-Y;;Vb’rR5431M}/. 98\6543W10/.R,+O<
Честно говоря, мне кажется, что автор Malbolge страдал редкой формой психического расстройства, а то и не одним, и в детстве его явно перепоили пепси-колой. Написать рабочую программу на Malbolge могли и могут только хакеры, внесённые в золотые летописи компьютеростроения. Стоит заметить, что хакеры, осиливших эту задачу, до сих пор не рассказали как они смогли это сделать – неудивительно. Знал бы я как писать программы на этой тарабарщине, давно бы работал на Японскую мафию и шифровал бы переписку якудзы 28 часов в сутки. Кое-кто думает, что Malbolge и ему подобные языки, достойны только изучения (причём, психиатрического) и реально программировать на них не возможно. Это не так! Пожалуй, поделюсь с вами секретом космической важности – формула, с помощью которой можно программировать

Landstreicher

Старый боян! Уж если на то пошло, читайте классику.
Советую прочитать статью R. Lawrence Clark из специального выпуска СACM за апрель 1984:

davidko

Интересный анахронизм: аббревиатура AJAX была придумана существенно позже, чем ФАПСИ перестало существовать

Ober

Ivan8209

Немного занудства.
> творцы Перла с Фортом
У форта и перла один и тот же творец?
> с рвением призывали «забыть весь предыдущий опыт
Ни разу не слышал о том, чтобы Мур заявлял такое.
---
"Мои слова легко понять и легко осуществить.
Но люди не могут понять и не могут осуществить."

Helga87

Написать собственную операционную систему – это нечто из области научной фантастики. Так каково же создателю собственного языка? Пожалуй, мне это представить не возможно

Сложность разработки нового языка программирования и новой операционной системы (если говорить о минимальной стоимости) отличаются на порядок. Язык наподобие BrainFuck можно за вечер придумать и написать к нему интерпретатор. А вот с ОС возиться и возиться.
Автору статьи полный незачет.

apl13

Да автор статьи - малолетний журналист.

Ivan8209

> (если говорить о минимальной стоимости) отличаются на порядок.
...
> А вот с ОС возиться и возиться.
Наглая ложь.
ОС классов, навскидку, "single programming language" и "batch processing",
пишутся значительно быстрее, чем изобретается новый ЯП:
строение ФС известно, надо только выбрать правильное (FAT, RT-11
но можно обойтись и без ФС, можно даже завести "persistent storage",
message passing IPC не является такой уж сверхсложной технологией,
как и согласующая многозадачность.
При желании, за один день можно пройти весь цикл
от разработки до отладки и каких-нибудь "философов-макаронников",
тем более, если уже есть наработки по "stand-alone/embedded systems."
---
...Я работаю антинаучным аферистом...

otets-mihail

bleyman

Программерское порно! И даже слово COME есть!
Оставить комментарий
Имя или ник:
Комментарий: