али не связываться с блатными. Волк улыбнулся еще шире, так что явственно обозначились клыки: - Ты меня, старого волка не уважаешь? Будешь платить 30%. Первый взнос - завтра. Не будет - готовь молоток для отбивных. Назавтра Ниф-Ниф был уже у своего брата, Наф-Нафа. Наф-Наф исправно платил все налоги, а остаток прибыли - местной милиции. Милиция выстави- ла у него несколько постов с автоматами, провела тревожную кнопку и воо- бще любила его, жаловала и доила почем зря. - НАФига ты теневик? - спросил он брата. Неучтеный нал - основа для криминала. Ничего, НАФаляем ему НАФиг. Моя милиция - меня бережет. Назавтра Волк пожаловал к братьям. Его уже ждали крутые львы из мест- ного РУОП. Волка повязали и отправили в предварилку. При обыске у него обнаружили пистолет, гранату, пулемет и наркотики. Однако на следующий день его отпустили за отсутствием состава преступления. Все улики таинс- твенно исчезли. Наф-Нафу позвонил сам начальник отделения и сказал, что Волк - уважаемый гражданин, ничего за ним не числится. И вообще посове- товал с такой крупная фигурой договориться по-хорошему. - НАФиг я содержу все ваше отделение! - хрюкнул Наф-Наф и бросил тру- бку. В течении недели у Наф-Нафа сгорел офис, склад, взорвалась машина, арестовали несколько крупных грузов на таможне и пр. Запахло жареной свининой. Милиция разводила руками и симулировала активную работу. А в конце недели пришел Волк и, ласково оскалясь, попросил 40%. Братья отп- равились к Нуф-Нуфу. Нуф-Нуф встретил их в скромной землянке. Он был воротилой не мельче братьев, но предпочитал не высовываться. - НУФигли пришли? - спросил он поросят. - НАФиг, волк достал, - потупившись, - ответил Наф-Наф. - НУФедь говорил же вам! Это какой Волк? - Да НИФсе ли равно? - добавил Ниф-Ниф. - НУФсе не так просто. Наверное, из молодых, да ранних, - задумчиво сказал Нуф-Нуф сам себе, сыпанул добрую порцию кокаина на пятачок и шум- но сделал "Нуф-Нуф". После этого радостно хрюкнул и стал куда-то зво- нить. Нуф-Нуф имел старую, надежную "крышу", которой исправно платил. "Кры- ша" выслушала его и назначила Волку "стрелку". На "стрелке" Волку вежли- во объяснили, что он зарвался и посягнул на чужую полянку. Кусок был ла- комый, но до склоки дело не дошло - не те были времена. В результате сейчас тройка работает вместе и вместе платит "крыше" 15%. Мораль не на, о которой вы подумали. Мне лично более симпатичен Наф-Наф. Но в лесу - волчьи законы. Мальчиш-Кибальчиш Семья Мальчиша-Кибальчиша жила в пригороде столицы. Дед был старым вором в законе, еще довоенной закалки, много сидел, много видел. Сейчас он отошел от дел, но его слово по-прежнему всегда было решающим. Отец Мальчиша был крупным "авторитетом", имел солидный кусок территории сто- лицы под своим контролем и трудился с утра до вечера. Сам Кибальчиш еще был Мальчишом, но уже тискал девок по дворам, тайком курил анашу и бил морды фраерам. Все шло чино-гладко, но пришли трудные времена. На "Мерседесе-600", весь увешанный золотом, приехал крупный авторитет в гости. И рассказал, что откуда-то из-за гор, то ли с востока, то ли с юга, прибыла в столицу орда "белых" отморозков без понятий и начала вой- ну за передел территорий. Война шла нешуточная, каждый день отстреливали по нескольку отрядов отца. На семейном совете было решено взяться за это всем миром. Отец связал "скотчем" три "рожка", обернул "калаш" бинтом, поцеловал Мальчиша и с друзьями отправился наводить порядок. Прошла не- деля, прошла другая. Вскоре в почтовом ящике начали появляться посылки. Сначала левая рука, затем правая, затем нога... А вскоре приехал тот же "авторитет" на простых "Жигулях" и так же просто одетый. И рассказал, что теснят отморозки наших. Совсем мало пра- вильных бандитов в столице осталось. Вздохнул дед, достал с завалинки старый военный "ТТ", выкопал на огороде "Дегтярев", вытащил из подпола ведро патронов, погладил Мальчиша по голове и сел в джип. Больше его не видели. Только джип Мальчиш увидел в "Криминальной хронике", растрелян- ный, как решето. Мало смелых осталось в пригороде. Совсем худые настали времена. Воров в законе отстреливали, как простых депутатов, "авторитетов" взрывали, как попкорн. Пришел, воровато озираясь, тот "авторитет". И золото его куда-то подевалось, и перстни-накололки, и гонор. Рассказал, что совсем вытеснили отморозки наших из столицы. Старый дед поднялся со скамейки. С Ульяновым от полиции в опломбиро- ванном вагоне сматывался. С Камо банк брал. С Феликсом имущество кулаков экспоприировал. С самим Джугашвили сидел за бандитизм. Сунул растопырен- ные пальцы в кастет - не попал. Поднял заточку, не удержал и уронил себе на ногу. Достал обрез времен коллективизации, но не смог даже передер- нуть затвор. Сел он снова на скамейку и смачно выругался. И тогда бросил Мальчиш-Кибальчиш клич по "качалкам": - И отцы наши головы сложили, и деды. За нашу территорию воевали, против жадных буржуинов. Негоже нам, мальчишам, по норам отсиживаться. И много за ним пошло. Даже Мальчиш-Плохиш услышал песню "Мы смело в бой пойдем..." и допел "И я за вами". Но, услышав "И как один умрем", тихо отстал от толпы: "Идите сами". А Мальчиш-Кибальчиш круто взялся за дело. В считанные дни приезжая банда была растреляна, похоронена, эсгу- мирована, расчленена, кремирована... Молодым неведома была пощада. Жад- ные буржуины, понявшие было голову в неразберихе, были обложены еще большей данью в целях компенсации потерь. А в это время Мальчиш-Плохиш понял, что остался без сладкого и отпра- вился прямо в логово буржуинов. Там он рассказал, что у Мальчиша-Ки- бальчиша нет никаких связей ни в милиции, ни в прокуратуре, ни даже в депутатском корпусе. И всего-то их осталось - кот наплакал. Обрадованные буржуины заложили банду в РУОП и она была в один день вся повязана. Мальчиш-Плохиш получил свою корзину "Сникерсов" и бочку "Марса", а Мальчиш-Кибальчиш - вышку. Милиция получила награды, а буржуинов все ра- вно обложила данью другая банда. Мораль: зло наказано, но все осталось по-прежнему. Золушка С Золушкой вообще все было не в струю. В "желтой" прессе было нес- колько версий происшедшего. Типа так: Золушка родом была с Украины и приехала в Москву за хорошей жизнью. Для хорошей жизни нужны были бабки. Бабки не спешили сыпаться с неба. Пройдясь по рукам, ей пришлось устроиться в семью нового русского домра- ботницей. Золушкой ее прозвали потому, что она любила ковыряться в нера- ботающем камине и была соответственного цвета. В этой семье было двое братьев-подростков. Но на потуги Золушки они обращали ноль внимания, потому что были голубыми. Пока папа заколачивал бабки, переводя государственное имущество в личное, братья заколачивали богемную жизнь. Однажды в столицу приехала заграничная знаменитость. Знаменитость имела несколько титулов, в том числе принца. Кроме того, она была голу- бого цвета и, по слухам, даже педофилом. Поэтому на тусовку, устроенную ей, собрался вся голубая кровь столицы. Золушке там делать было нечего. Однако накануне к ней явилась дальняя немецкая родственница и подарила обалденное платье от Кардена, стальные башмачки и "Мерседес-600". И пре- дупредила, что все это имущество - заложеное-перезаложенное и ровно в полночь судебные исполнители найдут ее хоть под землей и лишат всего. Золушка прикинула что-то к носу, постриглась, завернула платье от Ка- рдена в джинсы, напялила на себя полпуда металла (в тон башмачкам) и от- правилась на вечер. Знаменитость в это время развлекалась с братьями в строго охраняемом Луна-парке. Братья прихватили с собой портативные фо- тоаппараты и снимали знаменитость в пикантных позах. Золушка не могла терпеть такое унижение своего кумира и решила ему отдаться. Не сразу, конечно, а к часикам двенадцати. Но принц был настолько без ума от Золушки, что пытался затащить ее в постель, даже не отмыв ее как следует. Отбиваясь, Золушка заехала стальным башмачком по голове знаменитости и еле успела сделать ноги до полуночи. После того, как принцу наложили десять швов на череп, стальной башма- чок изъяли в качестве вещественного доказательства и объявили всеобщий розыск. А тут еще отец братьев предъявил многомиллионный иск знаменитос- ти за совращение. В это время Золушка под видом врача пробралась к зна- менитости, предъявила второй стальной башмачок и предложила пожениться. Знаменитость прикинула, что свадьба замнет ненужные слухи и поднимет по- пулярность. Свадьба состоялась, но принц не стал натуралом. Мораль: Смотрите в 121 серии. Про Ивана-дурака В одной люмпенской семье было три брата - два умных, один дурак. Пока умные заколачивали свои кровные 200 на заводе, исправно напивались по субботам и колотили своих жен, Иван-дурак верховодил местной шпаной и никуда работать идти не хотел. К началу новых времен Иван-дурак уже отсидел пару сроков и все махну- ли на него рукой. Однако Иван подсуетился и устроился депутатом близко к правительству. Прошло время. Завод обанкротился, братьям не платили зар- плату месяцами, а Иван-дурак исправно открывал предприятия, получал на них государственные ссуды и исправно их банкротил. Так он сварганил себе крупный капиталец, ездил в "Мерседесе", носил золотые цепи, разговаривал с подчиненными только по мобильному телефону и в основном из заграницы. Однажды царь этого государства (который, конечно же, официально име- новался Президентом) решил выяснить, за что люди у него получают зарпла- ту. Он вызвал к себе Ивана и спросил, кем он работает. Иван смутился, потому что сам этого не знал. Тогда он в очередной раз смотался заграни- цу, выбил там, сям несколько кредитов и отмазался на некоторый срок. Прошло еще время. Царь решил идти войной в непокорные горы. Горцы грабили поезда, скрывали преступников, нагло ухмыляясь пенитенциарной системе. Царь вызвал Ивана-дурака и послал на войну. Иван умел воевать только в постели и за столом и подставлять свою голову не хотел. Кроме того, у него были старые нефтяные связи с горцами и прерывать их не хо- телось. Бросив ребят под пули горцев, он через соседние государства исп- равно снабжал друзей оружием и преумножил свой капитал. Шло время. Царь старел. Оглядевшись, он обнаружил, что оброс лизоблю- дами и казнокрадами и решил очиститься. Вызвав Ивана-дурака, он потребо- вал от него декларацию о доходах. Иван-дурак не знал, что это такое и только гнул пальцы. Братья радовались, что наконец-то дурак погорел и ждали перемен. Но наивный царь до сих пор не понял, что живет не при мо- нархии, а при капитализме, где деньги - это все. Иван слегка покаялся, отошел от дел, но рассадил своих людей в правительстве так густо, как семечки в арбузе. Когда царь отошел от дел, Иван официально начал руко- водить страной. Мораль: пока умный думает, как руководить, дурак - руководит. Бременские музыканты. Бременские музыканты были из местечка Бремена - захолустье Малорос- сии. Изучив четыре аккорда на гитаре, сварганив ударную установку из пи- онерских барабанов и колпаков от "Жигулей", они устроили турне по горо- дам и весям. Хотя у них имелась классная "фанера" от "Майского лая", деньги давались с трудом, потому что народ в глубинке был неденежный, а аренда залов дорожала. Подумав, они отправились в столицу. Однако в столице таких "музыкантов" было пруд пруди. К счасью, ушлый руководитель зацепил дочь одного из боссов столичного шоу-бизнеса. Взяв ее в ансамбль, он сделал ей имидж, голос и тело. Остальное сделало теле- видение. Мораль: Никакой. Чаще смотрите и слушайте, что вам поют. ПАЛЕК FAQ и анкета по новым русским (НР) Ответы на часто задаваемые вопросы по НР (FAQ) В: Сколько радиотелефонов нужно НР? О: Три. Один - чтобы говорить, другой - чтобы указывать в магазине, тре- тий для крутизны. В: Почему НР носят золотые цепи толщиной в палец? О: Потому что цепь толщиной в руку может сломать шею. В: У меня есть "Мерседес-600", радиотелефон, цепь, красный пиджак... (далее следует список). Можно ли меня считать НР? О: Нет. Настоящие НР не умеют писать. В: Почему НР не едят руками? О: Потому что еда проваливается между пальцев. В: Правда ли, что большинство НР занимается рэкетом? О: Неправда. Большинство НР называют это бизнесом. В: Почему НР не знают языков? О: Потому что доллары принимают везде. В: Откуда произошло выражение, популярное у НР "забить стрелку" и что оно означает? О: В истории отечественной космонавтики две собаки вознеслись очень вы- соко. Однако затем Белку посадили на цепь, а Стрелку забили для опытов. Так вот. Если НР отказывается от цепи, ему назначают встречу. В: Почему НР любят питбулей - этих злобных, толстых, тупомордых собак? О: Каждый выбирает по себе... В: Что означает наколка НР в виде перстня на пальце - черно-белый прямо- угольник, разделенный по диагонали? О: Жизнь делится на две половины. Белая - нынешнее состояние НР... Теперь, когда вы получили некоторое представление о НР, попробуйте протестировать себя - может и вы из их числа? Анкета Вы - НР или ...? 1. На улице у вас сел аккумулятор в радиотелефоне. Вы: пользуетесь телефоном-автоматом - 1 идете в офисс (домой) и меняете его - 5 покупаете новый радиотелефон - 10 у меня нет радиотелефона - 0 2. Вы иногда одеваете красный пиджак - 1 Вы иногда носите красный пиджак - 5 Вы иногда снимаете красный пиджак - 10 у меня нет ни одного костюма - 0 3. В вашу иномарку въехал "Жигуль". Вы подходите к водителю и: начинаете спорить, кто виноват - 1 сразу требуете деньги - 5 спокойно спрашиваете, есть ли у него квартира- 7 немедленно начинате бить ему морду - 10 у меня "Запорожец" - 0 4. Предыдущая ситуация, но водитель - женщина: признаете свою вину - 1 предлагаете деньги - 5 приглашаете ее к себе на квартиру - 7 не меняете тактики - 10 аналогично - 0 5. Предыдущая ситуация, но женщина - вы: судорожно ищите документы во всех сумочках - 1 предлагаете расплатиться натурой - 5 приглашаете к себе на квартиру - 7 с криком "А все равно!" разбиваете ему заодно ветровое стекло - 10 6. При встрече с другом вы: поднимаете шляпу - 1 поднимаете руку - 5 поднимаете пальцы - 10 поднимаете его с тротуара - -5 7. 2 Х 2 = ? 4 - 1 3.(9) - 3.(9) зависит от того, продаем или покупаем - 5 не приставайте ко мне с мелочами, для этого есть калькулятор - 10 это джип, что ли? - 0 8. Что такое 1/3 ? первое марта - 1 треть - 5 столько прибыли остается после налогов - 10 один пузырь на троих - 0 9. Что такое "2!" ? 1*2 1 то, что обычно приносит из школы мой лоботряс- 5 универсальный ответ на вопрос: "Сколько у вас квартир; машин; любовниц и пр. - 10 Два с восклицательным знаком. - 0 10. Что такое "гнилой базар"? рынок, на котором нет санэпидемстанции - 1 кухня в коммуналке - 5 эта писанина - 10 выяснения, где взять денег на бутылку - 0 11. Кто думает, что вы - НР? вы - 1 ваши друзья - 5 ваши враги - 10 ваша собака - 0.5 никто - 0 12. После работы вы: едете домой - 1 едите в сауну - 5 уезжаете из сауны - 10 идете домой через пивную - 0 13. Вам доводилось разводить: кур - 1 руками - 2 мосты - 5 третий ответ с помощью второго - 20 лохов - 10 супругов - 0 предыдущий ответ с помощью второго ответа - -5 пиво - -10 3 кг. Fr с помощью предыдущего ответа - FF 14. Вы видите на дороге водителя "Мерседеса", который возится с колесом. Вы: бросаетесь ему помогать - 1 уступаете свою запаску - 5 спокойно вызываете по сотовому техпомощь - 10 с криком "Так ему, гаду!" бьете стекла - 0 предлагаете выпить пива - -5 15. Ваш босс уезжает в отпуск. Вы: начинаете удвоенно работать - 1 начинаете удвоенно сачковать - 5 отправляетесь к нему, но так, чтобы он этого не знал - 7 отправляетесь к его жене, но так... - 10 16. У вас есть карты: мест, где деньги лежат - 5 несколько колод - 0 кредитные - 10 Blaster-16, мульти- и SVGA - 1/0!+1/1!+1/2!+1/3!+... 17. Вы передвигаетесь по дому: на своих двоих - 1 на своих двоих телохранителях - 10 на "Запорожце" - 20 ползком до холодильника - -1 18. Ваши соседи: проверенные люди - 5 проверенные склочники, алкоголики и дебоширы - 0 у меня нет соседей - 10 19. Ваша секретарша хорошо: одевается - 1 раздевается - 10 она вообще ничего хорошо сделать не может! - 3 я сам за секретаршу - 0 20. В магазине продавец предлагает вам великолепную вещь, но у вас не хватает на нее немного. Вы: просите его показать вещь дешевле - 3 посылаете шофера домой за деньгами - 10 посылаете продавца ... - 0 21. Что означает "в натуре"? в самом деле - 1 без одежды - 3 в зоопарке - 0 22. Словарь Даля дает такое определение НР: "быстро разбогатевшие русские" - 10 "новорожденные русские" - 10 "отмытые русские" - 10 в словаре Даля такого словосочетания нет - 5 что такое словарь Даля? - -5 Суммируйте ответы, проверим результаты: меньше 50 - я их тоже ненавижу. меньше 100 - по-русски вы сечете, но на нового русского не тянете. 100-200 - вы на правильном пути больше 200 - братан, в натуре, как ты сумел прочитать эту лажу? X.5 - и вы ей верите? X.(9) - привет, коллега! Lamers must die! < 0 - а вы знаете, что один "Мерседес" = 40 тыс. бутылок водки? FF - и вы остались живы?! e (2.71) - срочно сообщи телефон, у меня комп загнулся. Male C - язык программирования для женщин Предисловие редактора Сложность операционных систем и программного обеспечения для них рас- тет по экспоненте. Программы становятся монстрообразными и неработоспо- собными. В этом свете данная работа, в которой предпринимается попытка нестандартного подхода к этой проблеме, представляется очень интересной. Особенно мне понравилась идея "заложил одно - получил совершенно другое" в отличии от банального "что вложил - то и получил". Однако я не не могу отметить, что логику его языка понимают только два человека: сам автор и его жена. Much O.F. LAGER Предисловие автора Естественно, первый вопрос к названию этой книги: зачем нужен специ- альный язык программирования для женщин? До этой книги все языки програ- ммирования писались мужчинами и для мужчин. А суть в том, что любой язык программирования - прежде всего язык логики, а женская логика существен- но отличается от мужской. Редактор (кстати, мой друг по светлому пиву) правильно заметил, что основное преимущество программ на Male C в том, что они пишутся не для решения задач, ответ которых известен; программы на этом языке пишутся для нахождения нетривиальных решений. Почему тогда "Male C", а не "Female C"? Дело в том, что этот язык ну- жен скорее для мужчин, чтобы понять логику женщин, а не наоборот - жен- щины прекрасно понимают мужчин (но это не значит, что они разделяют их взгляды). Поясним на примерах. (в дальнейшем служебные слова языка будем писать целиком в верхнем регистре). 1. Что означает? GOTO begin; Мужчина скажет, что он собирался перейти на заданную метку и поэтому поставил этот БЕЗУСЛОВНЫЙ переход. Однако спросите женщину и она вам от- ветит, что если она куда-то собралась, то это не значит, что именно туда она и пойдет. Если она собиралась в прачечную, затем в продуктовый мага- зин, то не исключено, что сначала она зайдет в модный магазин, купит там что-нибудь, а затем зайдет к приятельнице обсудить покупку. И это будет ее конечная остановка. 2. Что означает? WHILE (hour == 23.00) WORK(); Мужчина скажет, что он - добытчик и это заставляет его работать до- поздна. Женщина же сделает вывод, что мужчина любит работу больше, чем ее. 3. Что означает? IF (I'd like to eat) I eat; ELSE I don't eat; С точки зрения мужчины все логично: если он хочет есть, он ест, если нет, то - нет. Однако для женщины все это слишком прямолинейно. Что она животное, что ли? У женщины может быть сто причин для того, чтобы по- есть: хочется перекусить, плохое настроение, скрыть смущение, досадить приятелю, съев его деликатес, да мало ли что! А уж насколько иррацио- нально (с точки зрения мужчины) женщины объясняют, почему они едят ЭТО и не едят ТО. Советуем мужчинам прочитать с десяток разных диет и найти логику в то, к примеру, почему в одной диете советуют есть мясо, в дру- гой категорически это запрещено - ведь цель все они преследуют одну и ту же - похудание. 4. Что означает It is TRUE; Everything; I DO; I DO; it; FOR (you) ... Мужчина найдет здесь массу синтаксических ошибок (с точки зрения язы- ка C). И только женщина может понять, что это просто любовная песенка Билли Джоэла... Кое-кто может сказать, что женская логика - не логика вообще. Однако критерий теории - практика, и каждый может убедиться, что такие нелогич- ные существа, как женщины, вполне успешно существуют в этом мире. Так что начнем. S. Cool 1. Константы В Male C нет такого понятия, как константа. Ничто в мире не вечно, даже любовь. Однако есть несколько понятий, о которых точно известно, что они существуют и которые в Male C, таким образом, постоянны. Однако повторяем, что точное значение их неизвестно. Таких констант несколько: LOVE /* наиболее важная константа, чаще всего цель программы. Имеет два значения: YES NO */ Эта единственная константа, понять которую можно только из контекста, поскольку необходимо еще знать, какая LOVE имеется ввиду. Примечание: Некоторые считают, что существует множество промежуточных значений этой константы. Комментарий: осетрина бывает свежей или... SEX /* менее важная константа, чаще всего путь к первой константе */ Примечание: Кое-кто думает наоборот. Без комментариев. HEALTH /* самая непостоянная константа. Обычно принимает три значения: BAD - иногда GOOD - иногда SO-SO - чаще всего. */ MONEY /* критический параметр, всегда не хватает */ Примечание: Некоторые полагают, что с помощью этой константы можно получить все остальные. Без комментариев. WORK /* средство для наполнения предыдущей константы */ Примечания: Некоторые полагают, что WORK существует ТОЛЬКО для самовыражения. Комментарий: в доме без туалета жить можно. Но неудобно. Примечание: в Male C+ WORK придается статус оператора, а не константы. Это новые веяния - работа уже не считается необходимой для успеха. STATE /* вообще-то, это константа из языка Male C+, однако в послед- нее время она введена в большинство трансляторов языка С. Хотя мы счита- ем, что Male C+ более мужско-шовинисткий диалект, но... */ Принимает два состояния: RULEZ - Все ОК, все отлично, великолепно и пр. SUX - Все наоборот. Примечание: В Male C вводится еще несколько констант, к сожалению, мужско-шовинистских. Не вдаваясь в подробности, мы опишем несколько для полноты картины: BEER /* обычно принимает дробные значения, 0.3, 0.5, реже 1, 2 */ CAR /* обычно равно 1; зачастую заменяет все остальные константы */ SPORT /* если не WORK, не SEX и не BEER, но SPORT, однако чаще всего в пассивной форме наблюдения */ Забегая немного вперед, предлагаем для самостоятельного разбора прос- тенькую программу с использованием вышеописанных констант (заметьте, что смысл программы надо искать исходя не только из одних операторов). RULEZ; IF (LOVE == SEX) BAD; ELSE IF (LOVE == WORK) SO-SO; ELSE (LOVE == YES) GOOD; LOVE == NO; VERY BAD; END; Короче, если вы чувствуете любовь, но не можете дать ей определение, это хорошо. 2. Переменные 2.1. Одиночные переменные Переменные в языке Male C имеют примерно то же самое значение, что и в других языках. Однако, как в старых языках, в Male C нет необходимости явно определять тип переменных, когда их смысл ясен из контекста. К примеру, если парикмахер плохо уложил вам волосы, это безусловно, Shit. А если он к тому же еще и сжег их, то это DOUBLE Shit. Для женщины Whisky редко бывает DOUBLE, а мужчина вполне может осилить такую порцию. Wood, конечно, имеет тип FLOAT. А Axe - навряд ли. А для Submarine этот вопрос находится в стадии обсуждения. GLASS обычно INT, но если применить к нему оператор BREAK, то навряд ли оно (он) останется целой(лым). Skirt лучше всего SHORT (впрочем, вечером можно и LONG). А вот стро- ковая константа (разговор двух женщин) почти всегда LONG а не SHORT. Если женщина замужем, но на курорте она одна, то Husband для нее по- нятие VIRTUAL, однако дома, он, конечно, REAL. Многие женщины хотели бы иметь CHAR (приходящую уборщицу), но чаще всего это остается UNSIGNED мечтой и пахать на кухне и на уборке прихо- дится самой. Charge может быть STATIC, а вот CURRENT (электрический) - по опреде- лению нет. Особый тип переменной - LOGICAL. Хотя она принимает всего два значе- ния TRUE и FALSE, это не значит, что на основании ее значения можно при- нимать какие-либо действия. Если MONEY is EMPTY, это еще не значит, что купить новую шляпку невозможно (особенно не советуем высказываться об умственных способностях своей жены, которая все же сделала это). Примечание: в Male C+ и некоторых диалектах C для решения этой проб- лемы вводятся дополнительные значения этой переменной, типа ALMOST.TRUE или BETWEEN.TRUE.FALSE. Мы считаем, что в этом нет необходимости, т.к. не решается главная проблема: выбор. Если ваш муж возвращается очень поздно, в подпитии, странно пахнет духами и при этом говорит, что задер- жался на работе, это может хоть ALMOST.TRUE, хоть ALMOST.FALSE, все рав- но ничего, кроме скалки, не поможет. Через три месяца после вашей же- нитьбы жена может принести вам чернокожего младенца. Если при этом она убеждает вас, что ни с кем, кроме вас, последний год в близких отношени- ях не была, ваша LOVE к ней может заставить считать это и за BETWEEN. TRUE.FALSE и даже за TRUE. Однако вы, вероятней всего, будете едиствен- ным в этом убеждении. 2.2. Наборы переменных Наборы переменных - группа переменных, связаных общими свойствами. К примеру, массив Furniture [] содержит набор мебели, а составная перемен- ная Age_of_Women - возраст женщины. INT LOVE [ SEX, Flirt, LOVE] очевид- но обозначает набор состояний любви. 3. Операции присваивания. Операции присваивания вообще одни из самых популярных у нас операций. Этим занимаются все, начиная с ваших детей и кончая государством. Операции присваивания для переменных в общем такие же, как и в обычном C, кроме некоторых неважных случаев для упрощения понимания программ. Примеры: MONEY = $100 то же самое, что MONEY is $100 IF ( FOUND ) то же самое, что FOUND STATE is RULEZ то же самое, что RULEZ 4. Цикл DO. По замыслу создателей языка, должен быть самым употребительным опера- тором. Действительно, разве всех нас не учили в детстве, что единствен- ный путь к известности и достатку - труд? Однако многие из нас выросли и нашли разные пути к достатку и без утомительных циклов DO. К примеру, молодая девушка пишет в газеты бесплатных объявлений: "18 лет, обая- тельная-привлекательная 90-60-90, без специальных навыков, расмотрю пре- дложения от $500". Кстати, разберем это объявление на Male C и попробуем сделать выводы. MONEY is EMPTY; SEEK ( WORK ); IF ( MONEY < $500) BREAK; /* Облом */ DO { SEX; WHILE (HEALTH is SO-SO); } Is STATE GOOD ? Молодая-привлекательная без особых навыков, но с запросами от $500 может получить только определенную работу, причем весьма интенсивно. При этом, правда, ответ на последний оператор программы остается открытым. Кое-кому нравиться быть "секретуткой". 5. Особые операторы. Смысл особых операторов можно понять из их перевода. Нет смысла пере- числять их все, т.к. список существенно зависит от реализации языка. Од- нако мы разъясним смысл некоторых, используемых в этом руководстве. SEEK () - поиск. В скобках указывается переменная, по которой ведется поиск. SEEK ( Husband ) и SEEK ( Lover ) далеко не одно и то же, хотя, конечно, каждая женщина надеется, что ее муж всегда будет хорошим любов- ником, а ее любовник наконец разведется с женой и жениться на ней. FOUND () - найдено! Что найдено, смотрите в скобках. Следующий пример иллюстрирует хорошо известный факт, что искать черную кошку в темной ко- мнате - безнадежное занятие. DOUBLE Room = Cat = Black; SEEK ( Cat ); FOUND ( EMPTY ); 6. Оператор 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 здоровье уже не то, особенно если вы злоупотребля- ли. С другой стороны, "Кто не курит и не пьет, тот здоровенький помрет" - годы не возвратишь. 7. Оператор 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? А вот и нет. Есть только продолжение, продолжение и продолжение. 8. Оператор SWITCH Переключаться в жизни необходимо постоянно. И вынуждено, и просто по- тому, отдых необходим. Следующий пример иллюстрирует тот простой факт, что отдых - смена деятельности. DOUBLE Relax; DO {WORK; WHILE ( HEALTH is SO-SO )} SWITCH ( MONEY ) { CASE ($1000): KANARY; CASE ($500): Relax_House; CASE ($10): BEER; } HEALTH is GOOD; Вопрос, как подействуют Канары, Дом Отдыха или пиво на здоровье конк- ретного индивида, остается открытым. Мы надеемяся, что оно улучшиться (даже от пива). 9. Оператор 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 (бокала) могли бы ока- заться вы... 10. Оператор GOTO GOTO - оператор языка, которым пользователи Male C обмениваются с друг другом. Очень удобно: ваш шеф просит вас принести квартальный от- чет, а вы посылаете его в $%# до переполнения его стека терпения. Другой случай: даже если вы очень торопитесь, советуем все же воспользоваться переходом, а не бежеать сломя голову прямо через дорогу. В новых веяниях (Male C++) считается, что этот оператор лишний. Одна- ко разберем пример: #DEFINE HOUSE KEEPING #INCLUDE WASHING MACHINE MAIN () { FLOAT Thing is Dirty; WHILE (Thing) { Wash; BAD; GOTO HELL; } HELL: Shop \!\! Barbeshop \!\! Love-story_reading; } Понятно, что домашняя работа (в частности, стирка) бесконечна, и чис- ло грязных вещей (Thing) никогда не кончится. Поэтому необходимо ис- пользовать оператор безусловного перехода, которое в данном случае посы- лает эту работу в HELL. Когда его использовать, зависит от вашего наст- роения, однако если вы не хотите BAD с вашим мужчиной, старайтесь им не злоупотреблять. Примечание: некоторые скажут, что в написанном примере можно было во- спользоваться оператором BREAK. И что? Вы остановили работу, а не посла- ли ее к черту и вам придется рано или поздно ее продолжить, причем наве- рняка переменная THING существенно увеличится. Некоторые могут заметить странное определение метки "черта". Так ведь к черту посылается стирка, а вместо нее предлагается или поход по мага- зинам, или парикмахерская, или просто чтение любовных романов. Еще один пример иллюстрирует тот факт, что женщина любит ушами: CHAR Ask "Do you love me?"; Neverending: IF ( Ask is 'Yes') GOTO Neverending; 11. Условные операторы Не случайно этот раздел мы отнесли ближе к концу. Смысл этого опера- тора слишком очевиден: жизнь полна компромиссов и выполнение ваших жела- ний постоянно наталкивается на массу условий. Надеемся, что наш язык по- может вам в решении ваших проблем. В следующем пункте мы предоставим вам несколько программ для самостоятельного изучения. 12. Примеры 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; Муж, конечно, успокоится, не найдя любовника. Но что будет с любовни- ком, который спрятался в холодильнике? И вправду удовольствия познаются через страдания. 13. Задачи. Как вы уже поняли, Male C - универсальный язык программирования, пос- редством которого можно решать обширный круг повседневных задач. Единс- твенный путь изучения языка - говорить на нем. Предлагаем несколько за- дач для самостоятельного решения: 1. Классический треугольник: вы любите его, он любит другую, а она любит вас. Варианты решений: - вы добиваетесь его взаимности; - вы добиваетесь ее взаимности; - вы становитесь их взаимности; - вы отвечаете взаимностью своей собаке. Примечание: могут возразить, что классический треугольник выглядит по-другому. Однако мы полагаем, что если двое влюблены в одного, то это не треугольник, а угол: ------>  /|\ | | 2. Вариант без соперницы: Вы любите его, а он любит себя. Попробуйте сами найти все решения. 3. Вас шеф активно добивается вас. Варианты решения: - вы отвергаете его домогания и теряете работу; - вы уступаете ему и теряете свое достоинство; - вы знакомите его со своим другом-бандитом и он теряет свое досто- инство. 4. Ваш муж постоянно ходит налево. Варианты решения: - уехать к маме; - скалкой своротить ему скулу так, чтобы он мог смотреть только напра- во; - самой сходить налево. Множество других проблем вы сможете найти в известной книге, классике нашего дела "1001 проблема про это" а также в журнале "Все проблемы, ко- торые вы хотели решить, но не имели для этого подходящего инструмента". Примечание: Проблемы Male C- можно найти и в популярной газете "C-pid Info". и в передаче "Я C-ама. В передаче "LOVE C 1 взгляда" обсуждаются проблемы языка LOVE C версии 1. В журнале "5 How C" вы найдете более сложные задачи из языка версии 5. 14. Послесловие В следующей книге мы разберем особенности реализации Male C+, Male C++, и вообще Male Cn+. К сожалению, мы не будем обсуждать проблемы лю- бой реализации языка C- по понятным морально-этическим причинам. сентябрь 1997 ПАЛЕК