Каким должен быть язык программирования? Анализ и критика Описание языка Компилятор
Отечественные разработки Cтатьи на компьютерные темы Компьютерный юмор Новости и прочее

Статьи Дмитрия Караваева

Хочу представить читателям compiler.su автора отечественного компилятора языка PL/1 (да, того самого!) Дмитрия Юрьевича Караваева и его статьи. Язык PL/1 усилиями Дмитрия Юрьевича не только не забыт, но и успешно развивается: компилятор PL/1 был заново им переписан. Этот язык активно применяется в разработке ПО для МКС:

Вместе с первой экспедицией на МКС летел и компилятор с PL/1. Не было уверенности, что ПО связи заработает сразу как надо, да и пропускная способность [канала связи] была даже штатно очень слабая. Поэтому в аварийном случае рассматривался вариант: диктуем экипажу исправления в исходных текстах и перетранслируем на борту. К счастью, такая экзотика не потребовалась.

Дмитрий Юрьевич Караваев
Дмитрий Юрьевич Караваев,
фото с сайта РКК «Энергия»

Дмитрий Юрьевич в 1979 году окончил МВТУ им. Баумана по специальности «Производство летательных аппаратов». Ныне он сотрудник РКК «Энергия», кандидат технических наук. Является автором ряда статей на RSDN. По его предложению ту часть статей, которая близка по тематике этому сайту, размещаю здесь.

Опубликовано: 2018.08.26, последняя правка: 2023.05.27    22:36

ОценитеОценки посетителей
   ██████████████████████████████████ 8 (80%)
   █████ 1 (10%)
   █████ 1 (10%)
   ▌ 0

Отзывы

     2019/04/26 16:14, Сергей          # 

Пожалуйста, пишите названия языков программирования русскими буквами, как это делали в советские времена! Например: ПЛ/1.

     2019/04/28 14:08, Автор сайта          # 

Дело в том, что и в советское время не было единства в написании названия этого языка. Были такие варианты:
  • PL/I (последний символ — римская цифра «I», она же латинская буква «I»),
  • PL-I,
  • PL/1,
  • PL-1,
  • ПЛ/1.
  • ПЛ-1.
Верхние книги на картинке (они были самыми распространёнными в СССР книгами по этому языку) имеют одних и тех же авторов: Фролов и Олюнин. Но и они один и тот же язык они называют по-разному.
PL/1
Хотя, надо сказать, «ПЛ/1» — это калька «PL/1». Последнее — это сокращение от «Programm Language I», тогда русский вариант названия должен быть таким: «ЯП-1» («язык программирования 1»).

     2019/07/20 15:11, Александр Коновалов aka Маздайщик          # 

В рассылке по языку Рефал (refal@botik.ru) мы как-то обсуждали разницу между Рефалом-2 (реализация Красовского и Белоуса) и Рефалом/2 (независимая реализация Стеллецкого). Процитирую оттуда исчерпывающий комментарий Андрея Климова:


Насколько я помню, при смене названия с Рефал/2 на Рефал-2 не было никакого подтекста и входные языки Рефал/2 и Рефал-2 совпадали. (Извините, если кого-то из реализаторов Рефала обидел и не выделил его версию как самостоятельную.)

В 60-е годы были случаи использования слеша, отделяющего номер в названии языка: AMBIT/2, PL/1 (точнее PL/I, но читается как "пи эль one"). Также встречался пробел, дефис или его отсутствие: Algol 60, Modula-2, SNOBOL4. Кроме версии языка возникла потребность указывать компьютер или OS, на которой реализован язык, и слеш стал встречаться как разделитель название языка и системы. Это нам пришлось по душе, и решили в названии языка использовать дефис, чтобы не было путаницы и приобрели естественный смысл такие аббревиатуры, как: Рефал-2/БЭСМ-6, Рефал-2/EC.

Отсюда: https://groups.google.com/d/msg/refal/1Uks1A-1M_A/koexLqG_BwAJ (можете почитать соседние сообщения по этой ссылке)

     2023/05/27 22:48, Автор сайта          # 

В России учреждён орден Гагарина. Воспринял это «на ура». Браво тому, кому пришла эта идея в голову! Меня самого назвали в честь этого великого человека, и Гагарин для меня — соотечественник № 1.
Орден Гагарина
Хотелось бы, чтобы Дмитрий Юрьевич был удостоен этой награды за свой многолетний труд, который нам как известен (работа над компилятором PL/1), так и нет — о котором мы можем только догадываться. Это можно считать петицией :)

     2023/05/29 10:59, kt          # 

Спасибо за очень лестные слова. "Спасибо", наверное, здесь надо произносить голосом Волка из мультфильма "Жил был пес" ("Спасибо, друг"). К сожалению, больше вспоминается стихотворение Маршака о беседе ветерана с пионерами: "За это не медали, а по шеям давали..." . Был в биографии эпизод, когда мы искренне считали, что достойны награды. Если не государственной, то, по крайней мере, ведомственной. А в результате чуть не оказались за воротами...

Добавить свой отзыв

Написать автору можно на электронную почту
mail(аt)compiler.su

Авторизация

Регистрация

Выслать пароль

Карта сайта


Содержание

Каким должен быть язык программирования?

Анализ и критика

Описание языка

Компилятор

Отечественные разработки

Cтатьи на компьютерные темы

●  О превращении кибернетики в шаманство

●  Про лебедей, раков и щук

●  О русском ассемблере

●  Арифметика синтаксиса-3

●  Концепция владения в Rust на примерах

●●  Концепция владения в Rust на примерах, часть 2

●●  Концепция владения в Rust на примерах, часть 3

●  Суть побочных эффектов в чисто функциональных языках

●  О неулучшаемой архитектуре процессоров

●  Двадцать тысяч строк кода, которые потрясут мир?

●  Почему владение/заимствование в Rust такое сложное?

●  Масштабируемые архитектуры программ

●  О создании языков

●●  Джоэл Спольски о функциональном программировании

●  Почему Хаскелл так мало используется в отрасли?

●  Программирование исчезнет. Будет дрессировка нейронных сетей

●  О глупости «программирования на естественном языке»

●  Десятка худших фич C#

●  Бесплатный софт в мышеловке

●  Исповедь правового нигилиста

●  ЕС ЭВМ — это измена, трусость и обман?

●  Русской операционной системой должна стать ReactOS

●  Почему обречён язык Форт

●  Программирование без программистов — это медицина без врачей

●  Электроника без электронщиков

●  Программисты-профессионалы и программирующие инженеры

●  Статьи Дмитрия Караваева

●●  Идеальный транслятор

●●  В защиту PL/1

●●  К вопросу о совершенствовании языка программирования

●●  Опыт самостоятельного развития средства программирования в РКК «Энергия»

●●  О реализации метода оптимизации при компиляции

●●  О реализации метода распределения регистров при компиляции

●●  О распределении памяти при выполнении теста Кнута

●●  Опыты со стеком или «чемпионат по выполнению теста Кнута»

●●  О размещении переменных в стеке

●●  Сколько проходов должно быть у транслятора?

●●  Чтение лексем

●●  Экстракоды при синтезе программ

●●  Об исключенных командах или за что «списали» инструкцию INTO?

●●  Типы в инженерных задачах

●●  Непрерывное компилирование

●●  Об одной реализации специализированных операторов ввода-вывода

●●  Особенности реализации структурной обработки исключений в Win64

●●  О русском языке в программировании

●●  Формула расчета точности для умножения

●●  Права доступа к переменным

●●  Заметки о выходе из функции без значения и зеркальности get и put

●●  Модификация исполняемого кода как способ реализации массивов с изменяемыми границами

●●  Ошибка при отсутствии выполняемых действий

●●  О PL/1 и почему в нём не зарезервированы ключевые слова

●●  Не поминайте всуе PL/1

●●  Скорость в попугаях

●●  Крах операции «Инкогнито»

●●  Предопределённый результат

●●  Поддержка профилирования кода программы на низком уровне

●●  К вопросу о парадигмах

●  Следующие 7000 языков программирования

●●  Что нового с 1966 года?

●●  Наблюдаемая эволюция языка программирования

●●  Ряд важных языков в 2017 году

●●  Слоны в комнате

●●  Следующие 7000 языков программирования: заключение

Компьютерный юмор

Новости и прочее




Последние отзывы

2024/04/25 21:05 ••• Ttimofeyka
Энтузиасты-разработчики компиляторов и их проекты

2024/04/23 00:00 ••• alextretyak
Признаки устаревшего языка

2024/04/21 00:00 ••• alextretyak
Постфиксные инкремент и декремент

2024/04/20 21:28 ••• Бурановский дедушка
Русский язык и программирование

2024/04/07 15:33 ••• MihalNik
Все языки эквивалентны. Но некоторые из них эквивалентнее других

2024/04/01 23:39 ••• Бурановский дедушка
Новости и прочее

2024/04/01 23:32 ••• Бурановский дедушка
Русской операционной системой должна стать ReactOS

2024/03/22 20:41 ••• void
Раскрутка компилятора

2024/03/20 19:54 ••• kt
О многократном резервировании функций

2024/03/20 13:13 ••• Неслучайный читатель
Надёжные программы из ненадёжных компонентов

2024/03/07 14:16 ••• Неслучайный читатель
«Двухмерный» синтаксис Python

2024/03/03 16:49 ••• Автор сайта
О неправомерном доступе к памяти через указатели

2024/02/28 18:59 ••• Вежливый Лис
Про лебедей, раков и щук