Из моего сборника "Юмор разных лет". Внимание: стена текста :-).
Не принимайте текст серьезно.
Предисловие редактора
Данная работа, в которой предпринимается попытка нестандартного подхода к проблеме психологии любви, представляется очень интересной. Особенно мне понравилась идея «заложил одно — получил совершенно другое» в отличии от банального «что вложил — то и получил».
Однако отмечу, что логику языка понимают только два человека: сам автор и его жена.
Much O.F. LAGER
Предисловие автора
Почему тогда «Male C» , а не «Female C» ? Дело в том, что этот язык нужен скорее для мужчин, чтобы понять логику женщин, а не наоборот — женщины прекрасно понимают мужчин . Поясним на примерах. (в дальнейшем служебные слова языка будем писать в верхнем регистре).
Что означает: GOTO begin;
Мужчина скажет, что он собирался перейти на заданную метку и поэтому поставил безусловный переход. Однако спросите женщину и она вам ответит, что если она куда-то собралась, то это не значит, что именно туда она и пойдет. Если она собиралась в прачечную, затем в продуктовый магазин, то не исключено, что сначала она зайдет в модный магазин, купит там что-нибудь, а затем зайдет к приятельнице обсудить покупку. И это будет ее конечная остановка.
Что означает: WHILE ( hour == 23.00) WORK ();
Мужчина скажет, что он — добытчик и это заставляет его работать допоздна. Женщина же сделает вывод, что мужчина любит работу больше, чем ее.
Что означает: IF (I'd like to eat) I eat; ELSE I don't eat;
С точки зрения мужчины все логично: если он хочет есть, он ест, если нет, то — нет. Однако для женщины все это слишком прямолинейно. Что она животное, что ли? У женщины может быть сто причин для того, чтобы поесть: хочется перекусить, плохое настроение, скрыть смущение, досадить приятелю, съев его деликатес, да мало ли что! А уж насколько иррационально (с точки зрения мужчины) женщины объясняют, почему они едят это и не едят то . Советуем мужчинам прочитать с десяток разных диет и найти логику в то, к примеру, почему в одной диете советуют есть мясо, в другой категорически это запрещено — ведь цель все они преследуют одну и ту же — похудание.
Что означает
It is TRUE;
Everything;
I DO; I DO; it;
FOR ( you ) ...
Мужчина найдет здесь массу синтаксических ошибок (с точки зрения языка C). И только женщина может понять, что это просто любовная песенка Билли Джоэла...
Кое-кто может сказать, что женская логика — не логика вообще. Однако критерий теории — практика, и каждый может убедиться, что такие нелогичные существа, как женщины, вполне успешно существуют в этом мире. Так что начнем.
S. Cool
Поехали
Константы
В Male C нет такого понятия, как константа. Ничто в мире не вечно, даже любовь. Однако есть несколько понятий, о которых точно известно, что они существуют и которые в Male C, таким образом, постоянны. Однако повторяем, что точное значение их неизвестно.
Таких констант несколько:
LOVE /* наиболее важная константа, чаще всего цель программы. Имеет два значения: YES NO */ Эта единственная константа, понять которую можно только из контекста, поскольку необходимо еще знать, какая LOVE имеется ввиду.
SEX /* менее важная константа, чаще всего путь к первой константе */
Примечание: Кое-кто думает наоборот. Без комментариев.
HEALTH /* самая непостоянная константа*/ . Обычно принимает три значения:
o BAD — иногда
o GOOD — иногда
o SO-SO — чаще всего.
MONEY /* критический параметр, всегда не хватает */ Примечание: Некоторые полагают, что с помощью этой константы можно получить все остальные. Без комментариев.
WORK /* средство для наполнения предыдущей константы */ Примечания: Некоторые полагают, что WORK существует только для самовыражения. Комментарий: в доме без туалета жить можно. Но неудобно. Примечание: в Male C+ WORK придается статус оператора, а не константы. Это новые веяния — работа уже не считается необходимой для успеха.
STATE Принимает два состояния:
RULEZ — Все ОК, все отлично, великолепно и пр.
SUX — Все наоборот.
BEER обычно принимает дробные значения, 0.3, 0.5, реже 1, 2
CAR обычно равно 1; зачастую заменяет все остальные константы.
Забегая немного вперед, предлагаем для самостоятельного разбора простенькую программу.
RULEZ;
IF (LOVE == SEX) BAD;
ELSE IF (LOVE == WORK) SO-SO;
ELSE (LOVE == YES) GOOD;
LOVE == NO; VERY BAD;
END;
Короче, если вы чувствуете любовь, но не можете дать ей определение, это хорошо.
Переменные
В Male C нет необходимости явно определять тип переменных, когда их смысл ясен из контекста.
К примеру, если парикмахер плохо уложил вам волосы, это безусловно, Shit. А если он к тому же еще и сжег их, то это DOUBLE Shit. Для женщины Whisky редко бывает DOUBLE, а мужчина вполне может осилить такую порцию.
Wood , конечно, имеет тип FLOAT. А Axe — навряд ли. А для Submarine этот вопрос находится в стадии обсуждения.
Glass обычно INT, но если применить к нему оператор BREAK, то навряд ли оно (он) останется целой(лым).
Skirt лучше всего SHORT (впрочем, вечером можно и LONG). А вот строковая константа (разговор двух женщин) почти всегда LONG а не SHORT.
Если женщина замужем, но на курорте она одна, то Husband для нее понятие VIRTUAL, однако дома, он, конечно, REAL.
Объекты
Объекты — группа переменных, связанных общими свойствами. К примеру, массив Furniture[] содержит набор мебели, а составная переменная Age_of_Women — возраст женщины, потому что он меняется в зависимости от контекста. INT LOVE [SEX, Flirt, LOVE] очевидно обозначает набор состояний любви.
Операции присваивания
Операции присваивания вообще одни из самых популярных у нас операций. Этим занимаются все, начиная с ваших детей и кончая государством. Их смысл в языка Male C тот же.
Цикл DO
По замыслу создателей языка, должен быть самым употребительным оператором. Действительно, разве всех нас не учили в детстве, что единственный путь к известности и достатку — труд? Однако многие из нас выросли и нашли разные пути к достатку и без утомительных циклов DO. К примеру, молодая девушка пишет в газеты бесплатных объявлений: «18 лет, обаятельная-привлекательная 90-60-90, без специальных навыков, рассмотрю предложения от $1000» . Кстати, разберем это объявление на Male C и попробуем сделать выводы.
MONEY is EMPTY;
SEEK ( WORK ); IF ( MONEY $500) BREAK; /* Облом */
DO {
SEX;
WHILE (HEALTH is SO-SO); }
Is STATE GOOD ?
Молодая-привлекательная без особых навыков, но с запросами от $1000 может получить только определенную работу, причем весьма интенсивно. При этом, правда, ответ на последний оператор программы остается открытым.
Особые операторы
SEEK() — поиск. В скобках указывается переменная, по которой ведется поиск. SEEK ( Husband ) и SEEK ( Lover ) далеко не одно и то же, хотя, конечно, каждая женщина надеется, что ее муж всегда будет хорошим любовником, а ее любовник наконец разведется с женой и женится на ней.
FOUND () — найдено! Следующий пример иллюстрирует хорошо известный факт, что искать черную кошку в темной комнате — безнадежное занятие.
DOUBLE Room = Cat = Black;
SEEK ( Cat ); FOUND ( EMPTY );
Оператор RETURN
Все возвращается на круги своя. Таким образом, RETURN непосредственно связан с операторами циклов. Пример:
INT Age;
IF ( Age > 50 ) IF ( WORK is GOOD \!\! Alcohol is EMPTY ) HEALTH is GOOD;
ELSE HEALTH is BAD;
Age != RETURN;
DIE;
END;
Конечно, после 50 здоровье уже не то, особенно если вы злоупотребляли. С другой стороны, «Кто не курит и не пьет, тот здоровенький помрёт» — годы не возвратишь.
Оператор CONTINUE
Большей частью опять же используется в циклах. Рассмотрим пример:
INT Age;
INT Man;
INT Tired is NO;
IF ( Age_of_Women > 30 )
DO { SEX; IF ( Man is Tired ) { SUX; LOVE is NO;
BREAK;}
CONTINUE; }
Если женщине за тридцать и ее мужу где столько же или больше, то для него начинаются трудные времена. Если он будет постоянно ссылаться на усталость, то женщину ждет облом, неудовлетворенность в любви и вообще SUX. А если не будет, но вы полагаете, что будет RULEZ? А вот и нет. Есть только продолжение, продолжение и продолжение.
Оператор SWITCH
Переключаться в жизни необходимо постоянно. Следующий пример иллюстрирует тот простой факт, что отдых — смена деятельности.
DOUBLE Relax;
DO {WORK; WHILE ( HEALTH is SO-SO )}
SWITCH ( MONEY ) { CASE ($1000): С ANARY; CASE ($500): Relax_House;
CASE ($10): BEER;}
HEALTH is GOOD;
Вопрос, как подействуют Канары, Дом Отдыха или пиво на здоровье конкретного индивида, остается открытым.
Оператор BREAK
BREAK — оператор аварийного выхода, чаще всего в негативном смысле (облом). Разберем пример:
CHAR WORK is Empty;
SEEK ( WORK );
FOUND;
SWITCH ( MONEY ) { CASE ($10/Month): BREAK; CASE ($100/Month):
BREAK ;
CASE ($1000/ Month ): RULEZ ; }
Результат поисков работы может быть разным. Если зарплата меньше $1000 в месяц — SUX и BREAK (т. е. облом). Еще пример:
INT Glass;
IF ( SUX ) { DO Glass BREAK; }
RULEZ;
Рецепт улучшения настроения — битье посуды совершенно непонятен мужчинам. Однако, представьте, что на месте Glass (бокала) могли бы оказаться вы...
Оператор GOTO
GOTO — оператор языка, которым пользователи Male C обмениваются с друг другом. Очень удобно: ваш шеф просит вас принести квартальный отчет, а вы посылаете его в $%# до переполнения его стека терпения. Другой случай: даже если вы очень торопитесь, советуем все же воспользоваться переходом, а не бежать сломя голову прямо через дорогу.
В новых веяниях (Male C++) считается, что этот оператор лишний. Однако разберем пример:
define HOUSEKEEPING
include WASHING MACHINE
MAIN ()
{ FLOAT Thing is Dirty;
WHILE (Thing) { Wash;BAD; GOTO HELL;}
HELL: Shop \!\! Barbeshop \!\! Love-story_reading; }
Понятно, что домашняя работа (в частности, стирка) бесконечна, и число грязных вещей (Thing) никогда не кончится. Поэтому необходимо использовать оператор безусловного перехода, которое в данном случае посылает эту работу в HELL. Когда его использовать, зависит от вашего настроения, однако если вы не хотите BAD с вашим мужчиной, старайтесь им не злоупотреблять.
Еще один пример иллюстрирует тот факт, что женщина любит ушами:
CHAR Ask "Do you love me?";
Neverending:
IF ( Ask is 'Yes') GOTO Neverending;
Условные операторы
Смысл этого оператора очевиден: жизнь полна компромиссов и выполнение ваших желаний постоянно наталкивается на массу условий. Надеемся, что наш язык поможет вам в решении ваших проблем. В следующем пункте мы предоставим вам несколько программ для самостоятельного изучения.
Примеры
1. Кандидат на брак.
# UNDEFINE MAN
include ALL MAIN (Target is LOVE);
LONG CHAR Why =« Зачем вы девушки , NICE LOVE, не CONST у них LOVE»;
INT MAN [ Boss, Friend, Nice ...]; INT LOVE [ SEX, Flirt, LOVE];
SEEK ( LOVE );
FOUND MAN;
IF ( Man[Boss] ) FOUND SEX;
IF ( Man[Friend] ) FOUND Flirt;
IF ( Man[Nice] ) DO Why;
ELSE New SEEK;
Примечание: могут сказать, а как же все же найти свою любовь. Ну, дорогие дамы, если вы считаете, что это задачу за вас смогут решить машины...
2. Муж вернулся из командировки...
INT Lover is IN_FRIDGE;
INT Husband is FOOL;
LONG CHAR Kill ( Lover must die! );
INT Furniture[Dresser, Bed, ...];
RETURN ( Husband ); Husband; SEEK ( Lover );
IF ( Furniture[Any] ) FOUND { SAY Kill; SUX; }
ELSE RULEZ ;
Муж, конечно, успокоится, не найдя любовника. Но что будет с любовником, который спрятался в холодильнике? И вправду удовольствия познаются через страдания.
Задачи
Как вы уже поняли, Male C — универсальный язык программирования, посредством которого можно решать обширный круг повседневных задач. взаимоотношений со своей половинкой. Единственный путь изучения языка — говорить на нем. Предлагаем несколько задач для самостоятельного решения:
1. Классический треугольник: вы любите его, он любит другую, а она любит вас. Варианты решений:
o вы добиваетесь его взаимности;
o вы добиваетесь ее взаимности;
o вы добиваетесь их взаимности;
o вы отвечаете взаимностью своей собаке.
Примечание: могут возразить, что классический треугольник выглядит по-другому. Однако мы полагаем, что если двое влюблены в одного, то это не треугольник, а угол.
2. Вариант без соперницы: Вы любите его, а он любит себя. Попробуйте сами найти все решения.
3. Вас шеф активно добивается вас. Варианты решения:
· вы отвергаете его домогания и теряете работу;
· вы уступаете ему и теряете свое достоинство;
· вы знакомите его со своим другом-бандитом и он теряет свое достоинство.
4. Ваш муж постоянно ходит налево. Варианты решения:
· уехать к маме;
· скалкой своротить ему скулу так, чтобы он мог смотреть только направо;
· самой сходить налево.
Множество других проблем вы сможете найти в известной книге, классике нашего дела «1001 проблема про это» а также в журнале «Все проблемы, которые вы хотели решить, но не имели для этого подходящего инструмента».
Премного благодарен тем, кто добрался до конца!Ставьте лайки, подписывайтесь! Буду благодарен комментариям и критике. Скоро выйдет книга "Триста историй из советского детства", куда войдут все истории.