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

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

Новости

2024.01.14.

Продолжение темы надёжности программного обеспечения:
«О многократном резервировании функций»,
«О превращении кибернетики в шаманство».
О том, почему нет объединения усилий в узком кругу энтузиастов отечественного ПО:
«Про лебедей, раков и щук».

2023.09.16. Тема клонирования IBM/360 под маркой ЕС ЭВМ до сих пор будоражит умы всех причастных к компьютерам. Попытался описать исторический контекст тех событий: что было до, во время и после. Пришлось прочитать на порядок больше, чем написано. Надеюсь, факты и выводы будут интересными. «ЕС ЭВМ — это измена, трусость и обман?».

2023.08.19. Завёл на сайте локальную копию некоторых статей, на которые ссылаются мои статьи. Своего рода миниатюрный архив Интернета. Связано это с тем, что статьи, на которые есть ссылки, по прошествии какого-то времени исчезают. Чтобы не было ссылок в никуда, находил копии в разных архивах Интернета (в основном это archive.org). Но и он не всем хорош, главная претензия к нему в том, что страницы загружаются медленно. Поэтому сделаны статичные html-страницы, они открываются быстро. Не знаю, как тут быть с авторскими правами. Но если архиву archive.org позволительно делать копии, то, наверное, можно и другим некоммерческим сайтам. Если чьи-то интересы ущемлены, готов это исправить.

Перечень копий статей:

Фатальный недостаток
Ершов А. П.: Научные основы доказательного программирования
Святослав Логинов: Как я охранял природу
Коммерческая поддержка открытых проектов
Почему люди пишут бесплатные програмы?
Эрих Гаузер: Язык программирования Эллочка
К.Шереметьев: Форт — язык для суперпрофессионалов
Глеб Головко: Непонимание...
Филип Вадлер: Почему никто не использует функциональные языки
Спольски: Пожалуйста, сэр, могу ли я получить компоновщик?
Статьи Дейкстры
Журнал «Континент», Алексей Иконников: Цена вопроса
Правообладатели нагло нарушают мои права
Microsoft объединил XP и Vista
Игорь Цесельский: Национальная программная платформа
Алексей Брагин: Проект ReactOS был продемонстрирован Президенту Российской Федерации
Наталья Касперская: Нужна ли нашей стране своя операционная система?
Обсуждение статьи Касперской на форуме Компьютерра
Илья Пономарев: Интернациональный ответ, или Зачем нужна национальная операционная система
Борис Ашкинази: Ещё одна точка зрения на национальную ОС
Сайт проекта 3OS
Phantom OS от Завалишина — фейк или что-то серьезное?
Игорь Крейн: Русская ОС: три с половиной рецепта
Андрей Анненков: Phantom Operating System
Крис Касперски: Языки, которые мы потеряли
Обсуждение на форуме CNews статьи о поддержке отечественных разработчиков
О рыночном «патриотизме»
Новости ДССП
Ховик Меликян: Клиника плохого кода
Причины аварии первой “Ариан-5”
Они пишут правильную вещь
Вакансии НПЦАП имени академика Н.А. Пилюгина
Вакансии по направлению «Системы программирования»
Павел Протасов, Игорь Куксов: Вопросы безответственности
Сайт компании Интерстрон
Евгений Александрович Зуев: Редкая профессия
Евгений Александрович Зуев: Язык для обучения и язык для работы
Инновационные продукты ИТМиВТ на выставке «Салон инноваций и инвестиций — 2008»
Система программирования для платформ Эльбрус
Сайт компании УниПро
Сайт компании Ансис
Sun Studio
JetBrains, вакансия: Старший Разработчик
Вакансии харьковской компания Program-Ace
Как создать программу? Алгоритм 2!
У нас была бы лучшая в мире персональная ЭВМ
От программирующих программ к системам программирования
Новые языки программирования или бред?
М. Черкашин: Компилятор пишется так...
Дмитрий Зуйков: История разработки одного компилятора



2023.06.06. Ещё одна статья Дмитрия Юрьевича Караваева «К вопросу о парадигмах». Отзывы поощряются.

2023.05.02. Обновлена статья «Описание языка». Новые статьи:

Это существенная часть правил, охватывающая лексику языка. Описание правил проводилось синхронно с написанием лексического анализатора. Анализатор реализует описанные правила и протестирован на каком-то количестве примеров.



2023.02.27. Новая версия утилиты транслитерации русского C/C++ в стандартный.

2023.01.21. Новая статья «О тестах, доказывающих отсутствие ошибок».

2023.01.12. Новая версия утилиты транслитерации русского C/C++ в стандартный.

2022.11.27. «О русском ассемблере».

2022.11.26. Заново переписана статья «Длинные комментарии».

2022.11.22. Статья «Арифметика синтаксиса-3» – взгляд под другим углом на тему, затронутую Сергеем Свердловым в статье «Арифметика синтаксиса» и Евгением Зуевым в статье «Арифметика синтаксиса-2».

2022.09.27. Дополнил принципы формирования перечня отечественных языков программирования. Теперь он может включать в себя отечественные оригинальные расширения языков зарубежного происхождения. Поэтому пополнил список языками Яр и PL/1.

2022.05.27. Ещё статья на тему функционального программирования: «Каррирование: для чего и как». Больше полутора лет она писалась, переписывалась и дописывалась.

2022.05.12. Переводная статья «Десятка худших фич C#».

2022.05.05. Читатели сайта предложили пополнить сайт компьютерным юмором в картинках.

2022.05.04. Статья «Уникальность имён функций: за и против»

2022.03.29. Статья «О неправомерном доступе к памяти через указатели».

2022.03.27. Не мог пройти мимо статьи Дейкстры "О глупости «программирования на естественном языке»". Написанная давно, статья недавно была переведена на русский и опубликована на Хабре.

2022.03.21. Новая статья «Макросы — это чистые функции, исполняемые во время компиляции».

2022.03.16. Новые статьи; первая из них задаёт тему всего обсуждения:
«Функциональное программирование».
Статья «О чистоте и нечистоте функций и языков».
Статья «Нечистые действия в чистых функциях».
Статья «Хаскелл, детище британских учёных».

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

2022.02.01. Статья «Вычисление определителя матрицы. Программа на русском Си».

2022.01.10. Переводная статья «Суть побочных эффектов в чисто функциональных языках».

2022.01.02. Статья «Джоэл Спольски о функциональном программировании» — конспект статьи Спольски «А ваш язык программирования так может?».

2022.01.01. Новые статьи: «Измеряем замедление при вызове функций высших порядков», «C vs Haskell: сравнение скорости на простом примере»,

2021.12.31. «Надёжные программы из ненадёжных компонентов» — тема, которая «не на слуху».

2021.01.24. В утилиту транслитерации русского C/C++ в стандартный добавлена поддержка кодировки utf-8. Эта кодировка распознаётся автоматически — так же, как и кодировки cp1251 (Windows) и cp866 (DOS).

2021.01.07 Разбираемся с концепцией, которая предлагает оригинальный способ управления памятью. Переводная статья «Концепция владения в Rust на примерах», продолжение — в части 2 и части 3.

2020.12.29 Прошло 9 лет с того момента, как зарегистрировал на себя домен compiler.su.

За 2020-й год на сайт не написал ничего :( Под конец года предлагаю почитать статью «О неулучшаемой архитектуре процессоров».

2020.12.12 «Не поминайте всуе PL/1» — новая статья Д.Ю.Караваева.

2020.12.11 Поступило предложение создать на сайте скрытые разделы для обсуждения того, о чём не хотелось бы говорить публично. Теперь есть такая возможность. Для того, чтобы попасть туда, ничего делать не надо. «Пригласительный билет» сам придёт к Вам. Или же не придёт.

2020.09.23 «О создании языков» — отрывок из книги Питера Сейбела, интервью с Гаем Стилом.

2020.07.27 Новая статья Д.Ю.Караваева:
О PL/1 и почему в нём не зарезервированы ключевые слова.

2020.06.06 Статья Д.Ю.Караваева:
Поддержка профилирования кода программы на низком уровне.

2019.11.25 Дмитрий Юрьевич перевёл эссе «Следующие 7000 языков программирования». Для удобства чтения разбил его на части:

2019.09.12 Дмитрий Юрьевич продолжает знакомить нас с новыми материалами:
Модификация исполняемого кода как способ реализации массивов с изменяемыми границами.

2019.09.05 Добавлена статья:
Признаки устаревшего языка.

2019.09.01 Представляю Вашему внимаю футуристический прогноз из «Форбса». Этот прогноз не основан на каких-то математических выкладках. А потому может быть признан спорным. Однако задуматься он заставляет. Программирование исчезнет. Будет дрессировка нейронных сетей.

2019.05.18 Добавил возможность форматирования при написании комментариев:

(""цитата"") или [q]цитата[/q]
(==текст программы==) или [c]текст программы[/c]
(**жирный**) или [b]жирный[/b]
(//курсив//) или [i]курсив[/i]
(__подчёркнутый__) или [u]подчёркнутый[/u]
(--зачёркнутый--) или [s]зачёркнутый[/s]
(^^приподнятый^^) или [^]приподнятый[/^]
(vvпониженныйvv) или [v]пониженный[/v]
(..отступ с маркером..) или [.]отступ с маркером[/.]


2019.03.10 Дополнил список языков прораммирования языками Mash, Лися. Ну и целая россыпь реализаций Рефала.
Список здесь.

2019.02.23 Добавлена статья:
Реализация параметрического полиморфизма.

2019.02.20 Дмитрий Юрьевич продолжает нас баловать своими заметками:
Ошибка при отсутствии выполняемых действий.

2019.02.14 Добавлены заметки Д.Ю. Караваева:
Заметки о выходе из функции без значения и зеркальности get и put.

2019.01.20 Добавлена статья:
Обработка ошибок. Полемика получилась немалая.

2018.12.17 Добавлена статья Д.Ю. Караваева:
В защиту PL/1.

2018.12.16 Добавлена статья Самуила Любицкого:
Программисты-профессионалы и программирующие инженеры.

2018.12.03 Добавлена статья Д.Ю. Караваева:
О размещении переменных в стеке.

2018.11.23 Добавлена статья:
Изменение приоритетов операций.

2018.11.15 Добавлена статья Д.Ю. Караваева:
Особенности реализации структурной обработки исключений в Win64.

2018.11.09 Добавлены 2 статьи:
Изменение длины объекта в стеке во время исполнения,
Помеченные комментарии.

2018.08.26 По предложению Дмитрия Юрьевича Караваева, сотрудника РКК «Энергия» и автора отечественного компилятора языка PL/1, разместил его статьи:
Статьи Дмитрия Караваева,
Идеальный транслятор,
К вопросу о совершенствовании языка программирования,
О реализации метода оптимизации при компиляции,
О реализации метода распределения регистров при компиляции,
О распределении памяти при выполнении теста Кнута,
Опыты со стеком или «чемпионат по выполнению теста Кнута»,
Сколько проходов должно быть у транслятора?,
Чтение лексем,
Экстракоды при синтезе программ,
Об исключенных командах или за что «списали» инструкцию INTO?,
Типы в инженерных задачах,
Непрерывное компилирование,
Об одной реализации специализированных операторов ввода-вывода,
О русском языке в программировании,
Формула расчета точности для умножения,
Права доступа к переменным.
Скорость в попугаях,
Крах операции «Инкогнито»,
Предопределенный результат.

2018.05.17 Основательно расширил статью о языке Clean за счёт английской Википедии.

2018.05.12 Перевёл статью из английской Википедии «Referential transparency», теперь она есть в русской:
Ссылочная прозрачность.

2018.04.01 Перевёл статью из английской Википедии «Uniqueness type», теперь она есть в русской:
Тип, гарантирующий уникальность.

2018.03.24 Переводы с английского двух статей на тему функционального программирования:
Масштабируемые архитектуры программ,
Почему Хаскелл так мало используется в отрасли?,

2018.02.21 Разместил статьи, которые были опубликованы мной на Хабрахабре:
Двадцать тысяч строк кода, которые потрясут мир?,
Почему владение/заимствование в Rust такое сложное?,

2016.06.01 Написаны статьи:
Лексический анализатор,
Разбор цепочек знаков операций
Как отличить унарный минус от бинарного.

2016.03.18 Написана статья Массивы переменной длины в C/C++.

2016.03.12 Доработана статья Размещение объектов переменной длины с использованием одного стека.

2016.03.08. Перевод статьи Почему владение/заимствование в Rust такое сложное? на habrahabr.ru.

2016.01.28 Добавлена статья Философия языка.

2015.12.31 Добавлена статья Указатели и ссылки в C++.

2015.01.30 Добавлена статья Двухстековая модель: тесты на скорость.

2015.01.02 На сайт добавлены голосования. Они будут одновременно находиться и на тематических страницах (по отдельности), и на странице Все голосования, где они будут собраны все воедино. Добавлена статья Надо ли использовать YACC, LEX и подобные инструменты.

2014.12.28 Статьям на сайте теперь можно ставить оценки: «нравится», «неплохо», «так себе» и «не нравится».

2014.12.17 Наконец таки сменил дизайн сайта, устранены некоторые ошибки в скриптах.

2014.07.27 Добавлены статьи: 2014.07.15. Добавлены статьи: 2014.04.05. Расширил список языков:
Энтузиасты-разработчики компиляторов и их проекты и
Экскурс в историю разработок языков программирования и компиляторов в СССР.

2014.02.01. В утилиту транслитерации русского C/C++ в стандартный внесены улучшения. Появилась возможность записи констант в двоичном виде. Константы вида 2"1о1о_о11о 111о_оо1о" или 2'1о1о_о11о 111о_оо1о' заменяются в выходном файле на эквивалентное «0xA6E2». Нули внутри константы можно записывать буквами «O» или «o» (как русскими, так и латинскими), а единицы — буквой «l». Допускается при этом пробелы и «_» (в любом количестве и в любом порядке) внутри кавычек для более наглядной записи.

2014.01.18. Решил таки завести почту для этого сайта. Написать мне можно на адрес mail(аt)compiler.su

2014.01.08. Написана статья «Двадцать тысяч строк кода, которые потрясут мир?» на habrahabr.ru.

2013.08.12 — статья «Электроника без электронщиков».             

2013.04.26 — интересная статья «Система STEPS: двадцать тысяч строк кода, которые изменят программирование, операционные системы и интернет». Двадцати тысяч строк хватит на всё: Алан Кей пообещал создать среду, которая позволит функционировать современному компьютеру и будет включать в себя графический пользовательский интерфейс и набор прикладных программ. Главное отличие этой среды от всех уже существующих решений: длина кода этой системы не будет превышать двадцати тысяч строк.             

2013.03.24 — написана статья «Выбор кодировки для компилятора».             

2013.03.23 — разбираясь с кодировками, пришлось перевести статью «UTF-32» из английской Википедии. В русской Википедии она отсутствовала, теперь она там есть.             

2013.03.22. По данным w3techs на 19 марта 2013 г., русский язык обошёл немецкий и стал вторым по распространённости языком веба. Так что можно не стесняться родного языка даже в таком специфичном занятии, как программирование. Мировая тенденция, понимаешь...

2013.03.20. Дополнил статью «Раскрутка компилятора» в русской Википедии.

2013.03.18. Написана статья «Раскрутка компилятора». Поскольку в русской Википедии материалов было маловато, пришлось перевести английскую.

2012.09.25. Начал свою работу сайт. Первоначальный список статей:

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

Изобретение очередного велосипеда?
Все языки эквивалентны. Но некоторые из них эквивалентнее других
Лень — двигатель прогресса (первоначально хотел отнести это в раздел «юмор»)
О наименовании проекта и языка программирования

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

Устарел ли текст как форма представления программы
Русский язык и программирование
Синтаксис языков программирования
Синтаксический сахар
Некоторые «вкусности» Алгол-68
«Двухмерный» синтаксис Python
Почему языки с синтаксисом Си популярнее языков с синтаксисом Паскаля?
Должна ли программа быть удобочитаемой?
Стиль языка программирования
Тексто-графическое представление программы
Разделители
Строки программы
Слева направо или справа налево?
Комментарии
Длинные комментарии
Короткие комментарии
Комментарии автоматической генерации документации
Нерабочий код
Нужны ли беззнаковые целые?
Шестнадцатиричные и двоичные константы
Условные операторы
Циклы
Продолжение цикла и выход из него
Некошерный «goto»
Операции присвоения и проверки на равенство. Возможно ли одинаковое обозначение?
Так ли нужны операции «&&», «||» и «^^»?
Постфиксные инкремент и декремент
Почему в PHP для конкатенации строк используется «.»?
Описание языка
Компилятор

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

Отечественные компании-разработчики компиляторов
Энтузиасты-разработчики компиляторов и их проекты
Ресурсы, посвящённые созданию языков программирования и компиляторов
Экскурс в историю разработок языков программирования и компиляторов в СССР

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

Бесплатный софт в мышеловке
Исповедь правового нигилиста
Русской операционной системой должна стать ReactOS
Почему обречён язык Форт
Программирование без программистов — это медицина без врачей

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

Шутливые языки программирования
Если бы языки программирования были женщинами
Избранные компьютерные анекдоты
Короткие фразы
Компьютерные были
Реальная жизнь смешнее анекдотов
Деньги = работа / знание
Проект «Генезис»
Настоящие программисты не используют Паскаль
Краткое руководство по всем языкам программирования
Тест. Какой Вы программист?
Русские программисты
О Линусе Торвальдсе
Этой компанией была Microsoft
Анекдоты про Билла Гейтса
Мультик анальный
Русский мат в коде Microsoft Office
Google довоевался
Смешные и неприличные названия сайтов
Сочинение «Как я провела лето» в SMS-стиле

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

Политика размещения комментариев и статей
Предложения и замечания
Утилита транслитерации русского C/C++ в стандартный
Компьютерные ребусы и этюды для программистов
Найти минимум из двух положительных целых чисел без операций сравнения
Решение системы уравнений методом Гаусса. Программа на русском C++.


2011.12.29. Компания «Оптимизирующие технологии», которая до этого момента была владельцем доменного имени compiler.su, не стала продлевать его регистрацию. Причины мне неизвестны. Честно говоря, это доменное имя присмотрел давно, поскольку и задумки с языком программирования были давние. Вот только «Оптимизирующие технологии» когда-то опередили меня с регистрацией. Но потом почему-то отказались от compiler.su. Поэтому решил, что второй раз зевать не стоит. Когда сделаю сайт – ещё неизвестно, но «тотемное» доменное имя должно пригодиться. Тем более, что я перед этим и имя compiler.ru прозевал: меня опередил Александр Ларионов, автор сайта forth.ru. И вот 29 декабря 2011 года compiler.su попал в мои руки. К этому моменту уже было написано значительное количество статей. Они лежали «в столе», дожидаясь удобного момента.

Опубликовано: 2013.04.16, последняя правка: 2024.01.14    22:44


Отзывы

     2014/12/02 11:50, 217.66.157.69          # 

Я не специалист по компьютерам, но очень хочу купить родной российский ноутбук с родной российской операционной системой, простой в обращении и с хорошей защитой от всяких бяк. Это недоступно в нашей стране?

     2014/12/05 16:46, Автор сайта          # 

Увы, недоступно. Есть, конечно, «Эльбрусы» у военных, но он на порядок дороже. И не факт, что их Вам продадут.

     2015/02/09 17:08, Павел          # 

Пока не доступно. Если ЦБ снизит ставки по кредитам, я более чем уверен, что через время появится множество вариантов.

     2015/06/04 07:58, Артем          # 

А всё-таки можно объяснить пошагово, как создается синтаксис языка. Это многое объяснит новичкам.

     2015/06/04 16:24, Автор сайта          # 

В языке есть маленькие строительные кирпичики, которые называют лексемами или токенами. Это ключевые слова, идентификаторы, константы, операции и т.д. Из этих строительных блоков создаётся собственно синтаксис языка. Если у Вас имеется описание языка, то на его основе можно написать компилятор или интерпретатор. Есть много книг на эту тему, и среди них встречаются хорошие. Если Вы собрались придумывать язык, то этот сайт в будущем, возможно, в чём-то поможет Вам, но сейчас пока он мало соответствует задумкам. Хотя, надо понимать, что придумывание — это всегда эвристика, поэтому учебник по придумыванию в принципе не возможен. Как невозможен учебник по совершению открытий в математике, физике, медицине.

     2016/04/03 16:49, Вежливый Лис          # 

ТРИЗ же.

     2019/02/14 20:42, Автор сайта          # 

В раздел «новости» решил добавить «старости» — несколько строк об истории появления сайта и что на нём было в момент появления.

     2023/12/04 18:52, Автор сайта          # 

В здании РАН сегодня и завтра проходит открытая конференция ИСП РАН. Завтра на ней зачитывает свой доклад Алексей Недоря, единственный, наверное, человек из этого списка. Его можно назвать «системным» разработчиком. Под «системностью» понимаю принадлежность к «системе», что разработка языков является его работой, что если он публикуется, то в журналах из списка ВАК. Имеет учёную степень. Общается не с участниками форумов, а с такими же «системными» людьми, с тоже «остепенёнными».

С другой стороны, «системные» люди занимаются языками программирования «за деньги». В отличие от тех, кто этим занимается «по любви» :)

     2023/12/05 11:22, Клихальт          # 

другой стороны, «системные» люди занимаются языками программирования «за деньги». В отличие от тех, кто этим занимается «по любви» :)

За деньги делают нечто для денег и ради денег, ничего хорошего за деньги обычно сделать нельзя. ;)
Но Недорю было бы интересно послушать.

     2024/01/06 16:54, Ильдар          # 

1 января 2024 г. скончался Никлаус Вирт, создатель языка Pascal и и многих других (Euler в 1965 г., PL360 в 1966 г., ALGOL W в 1968 г., Modula в 1975 г., Modula-2 в 1978 г., Oberon в 1987 г., Oberon-2 в 1991 г. и Oberon-07 в 2007 г.), а также операционной системы Oberon.

     2024/04/01 23:39, Бурановский дедушка          # 

Ещё одна новость, которая заставляет задуматься о текущей дате. Создан язык программирования для ИИ, который «в 68 000 раз быстрее Python». Это язык Mojo. Если с цифрами не шутят, то получается, что Mojo в сотни раз быстрее ассемблера. 😱

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

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

Авторизация

Регистрация

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

Карта сайта


Содержание

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

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

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

Компилятор

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

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

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

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

●  Политика размещения комментариев и статей

●  Предложения и замечания

●  Все голосования

●  Компьютерные ребусы и этюды для программистов

●●  Найти минимум из двух положительных целых чисел без операций сравнения

●  Утилита транслитерации русского C/C++ в стандартный

●  Решение системы уравнений методом Гаусса. Программа на русском C++

●  Вычисление определителя матрицы. Программа на русском Си




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

2024/05/12 22:14 ••• Сисадмин со стажем
О превращении кибернетики в шаманство

2024/05/11 16:33 ••• Автор сайта
Энтузиасты-разработчики компиляторов и их проекты

2024/04/28 15:58 ••• Автор сайта
Обработка ошибок

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