Программирование

Таблицы имен при рекурсивном спуске с возвратами

В заметке "Пишем транслятор" я сетовал на ситуации, когда грамматику не впихнуть в LL(n). В частности, это оборачивается необходимостью поддерживать транзакционность (!) добавления имен в таблицы имен.

Например, есть правило типа

Пишем транслятор или немного о Фортране

Моя текущая занятость связана с разработкой транслятора некоторого скриптового языка. По ряду причин имеющаяся реализация не может быть использована в других средах. В связи с этим вспомнился Фортран... Но, давайте уж все по порядку.

Про интерфейсы или как не надо делать программы

В первую голову проблема касается продуктовых софтостроителей, хотя и в проектном тоже не все гладко.

Начнем с недавней истории. Технология COM (позднее, другие, но суть та же) дала возможность разработчикам компонентов отделить интерфейсы от реализаций. Для прикладных разработчиков это означало, например, что при обновлении компонентов старые интерфейсы продолжали бы работать. В теории, конечно. Но и на практике это выглядело гораздо лучше, чем "ад динамических библиотек", имеющих всегда версию "текущая".

Каков механизм? Он очень прост. Объявляет программист компонента интерфейс

Программирование на языке Симула-67

Книгу "Программирование на языке Симула-67" открыл почти случайно, но содержание и первые главы заинтересовали. А как может не заинтересовать изложение концепций объектно-ориентированного программирования из 1967 года?

Страницы

Subscribe to RSS - Программирование