Отправляет email-рассылки с помощью сервиса Sendsay

Сепулькарий

  Все выпуски  

Сепулькарий #4 - Foo Bar


Sepulcarium

Сепулькарий - история, этимология и другие приключения слов на стыке языков

Monday, January 30, 2006

 

Про Foo, Bar, и не только


(Впервые опубликовано на Аваксе: http://www.avaxhome.ru/internet/2005/06/23/foo_bar/. Воспроизводится в слегка отредактированном виде)

Очередной disclaimer: чрезмерно патриотических граждан прошу не воспринимать нижеприведённый текст как пропаганду американского сленга, культуры, субкультуры, образа мыслей, образа жизни... Чего там ещё? О! Чуждых нам программистских ценностей! Короче, воспринимать исключительно как курьёз.
Вот.

Итак, как и прежде - ни картинок, ни даунлоадов ;-)
А темой будет давно волновавший меня вопрос возникновения в компьютерной литаратуре традиционных (я бы даже сказал, уже мифологических) имён Foo и Bar. Возможно, эта тема вызовет интерес не только у компьютерных "гиков" (Geeks - "ботаники", что ли? Как это нынче называется?). Короче, на любителя... Как, впрочем, и любой другой тип контента. Вон, как выяснилось в бурных сечах под другими темами на разных ресурсах, есть люди, которых от одного упоминания Хентай тошнит, а есть такие, кто без него и дня прожить не может. Я, конечно, утрирую - но, как и сказал, на всё найдутся портебители. Надеюсь, так будет и с моим трёпом.
Главное (что самое сложное) от темы не отвлекаться! ;-)

Ну дык вот, вернёмся к нашим "фу-баранам". FooBar'ам, в смысле.
У неподготовленного человека, незнакомого с американским сленгом прошлых лет, и первый раз берущего в руки учебник по какому-нибудь языку программирования (или чему-нибудь из смежных областей), должно, по идее, слегка уносить крышу: шо за ботва такая, в натуре?! Что за взятые с потолка названия, да ещё такие неблагозвучные - FOO! - в серьёзной книге?!? И какие, нафиг, BAR-ы? Программеры, конечно, не дураки выпить, но, опять же, не в серьёзном же учебном пособии?!?
У человека же, имеющего некоторое представление об американском сленге, сразу должны замелькать реминесценции из фильмов про 'Нам (не "про нас", в смысле, а про Вьетнам). А у особо продвинутых камрадов - так даже из фильмов про ВМВ (Вторую Мировую, для тех, кто с таким сокращением по какой-либо причине ещё не сталкивался). Типа "Рядового Райана".
Речь идёт о восхитительном, на мой взгляд сокращении FUBAR. Означает оно, в различных трактовках, Fucked Up Beyond Any Recognition, либо Fucked Up Beyond All Repair. То есть, "затраханы", в моём очень вольном переводе, "по самое немогу", или "до неузнаваемости", или "до состояния, не поддающегося лечению" ;-)
Судя по всему, более поздней версией является FOOBAR = Fucked Over & Over Beyond Any Recognition, т.е. то же самое, но раз за разом... Мда.

Кстати, близким родственником этого акронимического гнезда является даже ещё более восхитительное выражение SNAFU. Восхитительноe настолько, что оно стало моим стандартным ответом на вопросы, как там у меня дела на работе ;-) Означает оно Situation Normal, All's Fucked Up. Что переводится, приблизительно, "всё как обычно - наперекосяк и через задницу"... Ну ооочень приблизительно, но я сторонник не подстрочных, а наиболее адекватных переводов! ;-)

Но, поплутав в лабиринтах слэнговых сокращений, вернёмся к основному фигуранту нашего расследования.
Ну, с затраханными до потери пульса солдатами как раз всё ясно, это никому объяснять не нужно. А вот есть ли связь с void Foo(int bar)? Похоже, есть, но весьма косвенная. Как выяснится из приведённой ниже ссылки, слово Foo обладает собственной, весьма запутанной и туманной историей, и обладает определёнными правами и без довеска bar.
Имеет оно несколько значений:
1. Нечто неопознанное, абстрактное, неизвестное.
В этом контексте интересен термин "Foo Fighters"; большинство читателей наверняка ассоциируют его с американской музыкальной командой девяностых. А многие ли знают, что оно означает? Оказывается, у этой абракадабры есть значение: в конце ВМВ термин был в ходу у операторов радаров, для обозначения загадочных и неопознанных следов на экранах; позднее такие следы были названы UFO (НЛО)... ;-) "Fighters", кстати, в этом контексте означет "истребители" - чтоб никто не подумал, что "боевики" какие-нибудь 8-)
2. Нечто усреднительно-обобщающее. "FOO was here" было британским аналогом "Здесь был Вася", и подобные граффити появлялись там, где проходили их войска. Одно из объяснений утверждает, что FOO, в данном случае, может происходить от Forward Observation Officer, т.е. что-то типа "офицера глубокой разведки", а может и "арткорректировщика"... Да поправят меня специалисты.

Нo, в любом случае, это, похоже, более позднее объяснение.
Таким образом, семантика этого слова (сочетания) в компьютерной литературе, похоже, следующая: сначала кто-то использовал "foo", чтобы обозначить некую условно-абстрактно-усреднённую функцию или переменную. А потом кто-то из авторов, обладающих специфически-программистским чувством юмора, вспомнил боевое прошлое, и добавил "bar". Тонкий такой юмор ;-)

Когда же это произошло? Компетентные источники, пожелавшие остаться анонимными, ;-) утверждают, что дело было в корпорации DEC (Digital Equipment Corporation), впервые включившей его в свои справочные руководства в 60х - начале 70х годов. А оттуда эта зараза уже расползлась так, что сейчас уже является, фактически, стандартом для любого уважающего себя автора ;-)

Более подробную информацию можно почерпнуть, пройдя по приведённой ниже ссылке. Если не лень, и если владение аглицким на достаточном уровне.
Краткая справка для тех, кто не в курсе, что такое RFC. Это Request For Comments, документ, публикуемый в сети для обсуждения, и являющийся, как правило, основой для будущего протокола. Сам по себе RFC уже достаточно серьёзный докУмент, и многие протоколы так и остаются навечно на этой стадии, не будучи формализованы дальше. Таким образом, "прототип протокола Foo", ссылка на который, собственно, и предлагается уважаемой аудитории, уже сам по себе является анекдотом - опять же, специфически-компьютерным ;-)
http://www.faqs.org/rfcs/rfc3092.html
От себя могу лишь добавить, что меня потрясло, насколько много у народа, писавшего сей перл, было свободного времени (даже для качественной первоапрельской шутки)! Ведь надо же было не только подобрать материалы, но и собрать статистику использовния "сабджа" в других RFC!

Там ещё куча версий и информации, но я привёл (и перевёл) наиболее, на мой взгляд, интересные и адекватные части сего опуса.

Enjoy! Ну, или не enjoy.
Главное, высказывайтесь, интересно или нет...


КОТ

Comments:
Socratez Дата: 23-06-2005 / 20:40
ну если так ... то вот вам масла в огонь админами излюбленным изречением - RTFM(Read The Fuckin Manual) или излюбленное комментаторами IMHO - и еще много много других страшных слов - примеров сотни ... да и словарей на тему PC-Сленга уже полно по интернету. Что касается Foo - IMHO мне кажется все намного прозаичнее - Foo ето от Функции (Function) - а вот на счет бар ???...

natadvin Дата: 23-06-2005 / 20:47
интересно было прочитать.

Ewgenyi Дата: 23-06-2005 / 20:54
Приятное разбавление контента -
этакие специфические "околоинтеллектуальные" посиделки.

Sauri Дата: 23-06-2005 / 21:36
Неоднократно встречал, как foo и bar оба использовались в качестве имен переменных, так что предположение, что foo - от function, мне кажется сильно спорным.

Saruman Дата: 23-06-2005 / 21:49
“ Socratez
Foo ето от Функции (Function) ”

Весьма вряд ли. По-английски произносится как "фанкшн", а не "функшн", поэтому превращение данного слова в "фу" кажется мне малореальным.

pifagor3d Дата: 23-06-2005 / 21:55
А вот еще наверняка всем известное сокращение KISS keep it simple stupid - вроде переводится как делай проще тупица :)

KOT_HK Дата: 23-06-2005 / 22:25
Ну, насчёт "foo" от function - я согласен с Saruman, слово в слово; версия мне кажется крайне неправдоподобной.

А насчёт прочих сокращений - так я ведь и не ставил себе целью написание толкового словаря современного околокомпьютерного сленга! Мне интересна была этимология, взаимосвязь - ну и всякие "анекдоты" вокруг этого. Показалось прикольным - вот и делюсь. Вот Вы знали, откуда эти термины взялись?
А про RTFM и уже тем более про IMHO никому объяснять не надо. Кроме, разве что, того, что "моё скромное ИМХО" - это тавтология ;-)

Такое вот "моё скромное ИМХО" 8-)

Zaken Дата: 24-06-2005 / 00:52
А я чего-то вспомнил старый анекдот, когда юзер, задав админу очередной глупый вопрос и получив в ответ сообщение "Read the fucking manual!", очень удивился, но "Камасутру" все-таки начал читать.

Nebaba Дата: 24-06-2005 / 02:54
Посмотрите Дату на RFC, первого апреля, там их полно, и все прекрасно знают RFC писаные первого апреля не являются серьезным докУментом.

bratanVovan Дата: 24-06-2005 / 04:21
По терминологии американских ВВС "foo"- это "противник". Применение же сочетания foobar к популярному аудиоплееру(обратите внимание на иконку -череп- символ смерти) не исключено можно перевести как "вражеская панелька".
Почему такое название?
1. to make it sound cool
2. программисты шутят ;)
IMHO, конечно...

bratanVovan Дата: 24-06-2005 / 04:26
Поправка:
противник -это foe. Так что, я, наверно, не прав ;)

igggi Дата: 24-06-2005 / 08:29
Хорошая статья.
Нельзя говорить что foo - от слова функция. Засмеют.

bodis Дата: 24-06-2005 / 08:39
Ищите книжку Масленникова "Осторожно - Hotdog. Современный активный английский"

Ilya_S Дата: 24-06-2005 / 09:59
Насчет "По терминологии американских ВВС "foo"- это "противник". Вообще-то помню читал про американскую группу "Foo fighters" (которой рулит барабанщик Нирваны, если кто невкурсе), так вот фуфайтерами в послевоенное время вроде называли охотников за неопознанными летающими объектами, то бишь НЛО. Уже смутно помню о чем там речь шла, надо ссылки поискать...

WilliE Дата: 24-06-2005 / 10:17
bratanVovan, у foobar'а иконка - инопланетянин

xerurg Дата: 24-06-2005 / 15:17
Спасибо, порадовался.

ZlayaZhaba Дата: 24-06-2005 / 17:39
Отлично, так держать!

lexaxl Дата: 24-06-2005 / 22:46
на мой скромный взгляд foo - от слова food, т.е. еда, ну а bar - кусок... таким образом получается foobar - небольшой кусочек пищи для ума

lexaxl
а также в словаре на foo начинаются такие слова как fool (дурак) и foot (нога). По аналогии с твоим смелым переводческим решением, foobar превращается в "кусок дурака" или "кусок ноги".

lexaxl Дата: 28-06-2005 / 10:03
to igggi:
мне льстит что ты воспользвался моей смелым переводческим решением :), хотя твоя аналогия слабовата ... от себя могу еще только добавить foozle(неуклюжий) - в результате получаем "неуклюжий кусок".

rIvan Дата: 01-08-2005 / 21:48
ПоЙдётЬ! ЕсШо пиши! ^_^

На удивление ни одного коментария от интостранных и в частности англоязычных посетителей нету, интересно было бы знать их мнение!
Может со стороны это выглядит как размышления и обсуждения разшифровки абривиатуры "ХРЕН", часто применяющейся в русском языке! В связи с чем просьба аФтору переводить постпревью на аглицкий!
 
Post a Comment



<< Home

В избранное