Pull to refresh

Comments 33

Так это ж давно превратилось в самостоятельный термин- «исполняемая программа» в контексте компьютеров- это именно оно- лежит на диске, не отсвечивает и можно при желании запустить (сейчас, потом, когда угодно, а можно и не запускать, может исполнится, а может и нет), вот если вы в контексте театра оперы и балета скажете «исполняемая программа»- то эта мгновенно превратится в совершенно другую программу- в песни и пляски, исполняемые именно сейчас и именно на этой сцене согласно сценарию. У русского программиста- у него же сначала компьютерная грамотность, потом (если повезет) — литературная, и потом (вне зависимости от везения)- уже английский.
Вы, кстати, как к сценариям относитесь? по-русски, или по-английски?
Ваш ответ я засчитаю как «традиционно».
Сценарии это которые скрипты: яваскрипт и прочие? Положительно. Как раз обратный случай: не «исполняемая программа», хотя сказать, что она «неисполняемая», будет противоречить истине. Но видимо всем похрен, продолжаем щебетать по-птичьи.
вы еще бухгалтерии попробуйте объяснить, что правильно говорить договоры, а не договора, а нефтянику- что правильно добЫча, а не дОбыча- особенно нефтянку, настоящему, с буровой, и заверните ему что-нибудь про «щебетание» :-). Есть профессиональная терминология, которая к общечеловеческому переводу неизвестно каким боком и при переводах- очень неожиданна. Вот вам обратная ситуация: есть в нашей научной среде термин «исследуемый образец». А «образец» на «птичий» переводится как «sample, template, swatch, exemplar», еще «specimen» будет где-то в списке «less common»- потому что термин специализированный- обозначает «образец, экземпляр, особь, препарат». И с чего это образец металла с мелкокристаллической структурой, полученный методом динамического равноканального углового прессования я должен переводить как «особь, препарат или экземпляр»? А с того, что терминология такая в среде принята и общепринята, и пофиг этой среде на лингвистов и филологов. Вы зачем-то стали разбираться в словах, забыв, что группы слов могу образовывать термины, а у терминов есть смысл, специфический для предметной области.
Да, я стал разбираться в словах. Русский перевод неточен и тяготеет к запутыванию профанов. С теоретической точки зрения — это плохо, с практической — по-разному. Мне было важно услышать мнение других.
что именно забыли профаны в узко-специальной среде? в этой среде есть своя терминология, если человек профан настолько, что даже терминологию освоить не может- так может ему и не стоит этим заниматься? а если человек может освоить специальную терминологию- то и проблем с «неправильно перевели» у него не возникает.
Вопрос в другом: программирование для всех, или для «посвящённых».
только для тех, кто готов обучаться.
UFO just landed and posted this here
Си-шная тема с «перегрузкой операций». Только в Си overload классный, а в переводе тупой. Давайте подбирать слова так, чтобы русский перевод был хуже английского исходника. Забудем, что в русском есть слово «отдалённый». Ангельский рулит!
В C нет перегрузки операций, и никогда не будет. Учите матчасть.
Я не помню, как называется у Ричи множественность значений отдельных знаков операций (+ для сложения и сдвига, / для целых и дробных)? Я поискал, но слова overload не нашёл, как то иначе.
множественность значений отдельных знаков операций
Что?
Операция + «перегружена» для указателей. p + 1 будет равно p + 4, если указатель на int. Пробежался по KR, они вообще на это не обращают внимание, что и понятно: книга для системщиков, все и так в курсе.
При чем тут вообще перегрузка? Для разных базовых типов данных определены разные операции, и они работают по-разному. Этот принцип есть во многих языках (если не во всех).

Да, арифметика указателей — фишка C, еще только в C++ она есть, вряд ли где-то еще, ну а в каких-то языках есть оператор возведения в степень. К перегрузке это не имеет никакого отношения.
Для разных базовых типов данных определены разные <одноимённые> операции,

… и это явление называется «перегрузкой». Насколько я понимаю. Типы могут быть и не базовые (пример: оператор ?:)

p + 1 это сдвиг на один элемент. Нет никакой перегрузки.
Если вас попросят взять пятую книгу справа, вы будете считать по книгам или по сотням страниц?

Вот за этим смыслом и рванул преданный друг человека русский переводчик, и в итоге вместо точного (с тонким намёком на субъектность) перевода «выполнимый» — «который может быть выполнен процессором» — получился «исполняемый файл». То есть «может быть и не исполнен», как решит компьютер.
Не вижу противоречий в слове «исполняемый», и как по мне он не может значит «может быть и не исполнен», если только он не вызывает ошибки вроде SIGSEGV или что-то еще.
Я понимаю, что тру-программисты говорят просто: «экзэшник», или просто говорят по-английски.
В чем смысл тогда вашей статьи, если вы сами сказали что все будут говорить по другому.
Но если кто-то снизойдёт до краткого объяснения, то как правильно говорить? Традиционное «исполняемый» или как?
.exe (экзе)
Спасибо, вы подтверждаете моё предположение о ненужности русского языка программистам.
не говорю что он не нужен, просто вариант «исполняемый» уже устоялся в нашем русскоязычном сообществе, потому нету уже смысла переучивать людей. Это как ситуация с «Счетчик Команд», этот IP регистр на самом деле ничего не считает, но вот такой перевод у нас устоялся
а «стек» мы даже переводить не стали, так с ним и живем. а для «pipeline» даже и русские буквы подставлять лень.
А кроме Винды операционок на свете нет?
я написал .exe как пример сокращенного названия исполняемого файла
Гхм, посмотрел теги, думал, что что-то интересное.

А где тут вообще С, С++ и Ассемблер? Разговоры на предмет каких-то там абстрактных регистров — немного не в тему тегов.
Прошу прощения. Статью без хабов (не тегов) не выложить, а подходящий хаб сходу не нашёл. Если подскажите — переставлю.
Я действительно сколько-то думал, где я читал свои мысли, потому понял, что это чисто мои мысли, и отказался от хаба «Читальный зал».

Это ещё что. Раньше, вон, человек, не знающий латынь, считался недостойным вообще приближаться к священному храму знаний. Потом, правда, отпустило, но в России, примерно так до Ломоносова, тоже думали, что русский — это какой-то недоязык, ибо вся наука делается на немецком и французском.
ИТ область пока молодая, так что такие приступы "илитизьма" — это нормально, со временем пройдёт.

И я хочу разобраться в словах «executable program» или «исполняемая программа» (файл, код). Что они значат?

Одно из основных значений слова execute — исполнять заранее составленный план или намеченное заранее действие.
Что очень даже точно отображает суть явления: программа — это план действий, которые должна исполнить железяка, и железякою он, соответственно, исполняется.

То, что между англйискими словами и русскими нет однозначного соответствия — ну да, это факт. Но делать на его основе какие-то глубинные выводы не стоит.

Начнём с наличного перевода: «исполняемая программа» — это программа, которую исполняет машина. Вместе с устойчивыми выражениями «компьютер выполняет», «компьютер думает» в голове рождается картина, что компьютер — это разумное существо, которое соблаговоляет принять программу и её исполнить.

Какой-то у вас неожиданный прыжок мыслию: из слова «исполняет» вы вдруг делаете вывод, что машина «соблаговляет». А рабы в древности, получается, «соблагововляли» исполнить указания господ, и вообще вели себя аки умудренные старцы перед заискивающими бестолковыми сопляками?

Надо сделать усилие воли, чтобы оторваться от этого образа мудрого старшего брата компьютера и никудышной программы, чтобы вспомнить, что вообще-то компьютер — это просто тупая железяка (или «полупроводняка»), которая строго подчиняется приказам этой самой программы.

Для начала нужно сделать усилие воли и понять, как вы вообще пришли к выводу о «мудром старшем брате» на основании слова «исполнять».

То есть, на самом деле то, что называется «executable program», она же ".exe" — это буквально «управляющая программа».

Нет.
Раз уж вы взялись анализировать слова — будьте последовательны. Программа — это «набор приказов, предписаний». А исполняемый — это исполняемый.
Все вместе означает «набор предписаний, который можно (или нужно) исполнить».
Спасибо за развернутый ответ.
набор предписаний, который можно (или нужно) исполнить

это определение любой программы: и asm, и js.
Где отличие программы asm в названии «исполняемый файл»?
Раньше считалось, что слово «выполнимая» означала такую возможность. Не никак не «исполняемая», иначе получается, что это просто синоним слова «рабочая программа».
это определение любой программы: и asm, и js.

Именно так.
Это определение слова «программа». Если вы не заметили, оно у вас в словосочетании «исполняемая программа» идет вторым.

Где отличие программы asm в названии «исполняемый файл»?

Отличие от чего? Исполняемый чем? Так файл или программа?
Для начала — разберитесь с двумя словами, не перепрыгивайте на другие.

Если вы ратуете за кристальную чистоту русской терминологии, да чтоб при этом четко различались программы интерпретируемые, компилируемые и байт-коды — попытаться изобрести что-то свое вы, конечно, можете, но вряд ли у вас что-то получится. В английском, например, программу на джаваскрипте вполне можно назвать «executable» в контексте исполнения в браузере.
Если вы ратуете за максимальное соответствие русской терминологии и английской — эта унификация в пределах разумного происходит прямо сейчас. Просто не нужно жонглировать смыслами, путать контексты и фантазировать про «снисходительные машины».

Раньше считалось, что слово «выполнимая» означала такую возможность. Не никак не «исполняемая», иначе получается, что это просто синоним слова «рабочая программа».

Сосредоточьтесь на сегодняшнем дне. Неважно, как оно было «раньше». Терминология в компьютерной области еще не устоялась и постоянно меняется (особенно русскоязычная).

Для начала откажемся от термина "электрон", ибо называать элементарную частицу янтарем как-то странно.


А если серьезно, то в терминологии в различных языках порой такая ересь с точки зрения литературного или даже разговорного языка встречается, что вообще ни в какие ворота. И ничего, народ не бунтует, а пользуется устоявшейся терминологией.


Где отличие программы asm в названии «исполняемый файл»?

Программа на языке ассемблера не может быть исполнена. Она должна быть переведена в другое представление.
Программа на js в контексте операционной системы тоже не может быть исполнена, потому в этом контексте она не является исполняемой, а в контексте браузера — может, со всеми вытекающими для права именоваться исполняемой (но только в соответствующем контексте.
По моему как-то так.

Какое то лингвистическое теплое с мягким.
Конечно, англоязычный мир гораздо шире и является основным законодателем компьютерных мод. И есть, разумеется, неполное соответствие значений при переводе.
Но мне кажется ваш перевод страдает от этого в еще большей степени.
Совершенно необосновано вы наделили некоторые термины некоторой коннотацией (компьютер соблаговолит, компьютер — разумный), от разных терминов взяли разные значения (узкое и широкое значение) и вуаля — у вас значения серьезно не сходятся.
Мне просто кажется неверным утверждение, что executable program — как бы программа только для одной архитектуры и процессора, бинарный нативный код, а «Исполняемая программа» — это типа исполняемая в общем. Это просто не верно — то, что в узком смысле под executable program понимают экзешники — не делает термин узким, он точно так же может означать любую программу или скрипт, как и «исполняемая программа»
В то время как «выполнимая программа» наоборот, актуализируется на качестве, что программа «корректна, может быть выполнена».
Я не то чтобы большой специалист в том, что имел в виду автор термина, но русские термины (как и английские, собственно) применяются не в вакууме, а в контексте, написаном русским же языком и хорошо описывающих детали. Кажется, этого достаточно, чтобы уточнить термин в каждом отдельном случае.

Тут идет спор об объекте-субъекте. Однако неправильно выбраны эти самые субъекты-объекты. Надо рассматривать связь "Пользователь -> ОС -> программа", а рассматривается связь "Программа -> железо"

Sign up to leave a comment.

Articles