Сергей Прохоренко писал(а):
Не секрет, что Вирт всегда делал языки под какую-то конкретную текущую потребность, и им подчас не хватает универсальности.
С первой частью согласен, вторую считаю ошибочной. Смотря как рассматривать универсальность.
У Вирта универсальность = баланс --- самое существенное (необходимое)/простота (make it simple but not simpler --- лучше тут не выразишь). Благодаря чему инструмент можно легко применить в произвольной области (портировать, доработать под специфику, пр.). Последнее --- доработку общего инструмента под специфику Вирт сам практикует. Как пример, его же компилятор Оберон-07:
http://oberoncore.ru/wiki/lang/oberon-07Если же Вы будете трактовать универсальность как наличие готового решения на любой случай, то... По-моему, такой подход --- утопия.
Почему Вирт
из базы убрал дин. массивы --- значит на своём опыте счёл это средство несущественным = неоправдывающим свою сложность. Сейчас я с ним скорее согласен --- после ковыряния в кишках ББ (DevDebug) и приблизит. осознания, чего стоят дин. массивы. Остальных (в т.числе и Вас, Сергей) --- призываю сначала наработать опыт работы без дин. массивов, а потом делать выводы (насчёт нехватки универсальности).
Касательно сделать дин. массивы расширением --- автор компилятора волен делать любые расширения, какие захочет... Но опять же --- считаю, что игнорировать опыт Вирта (не прислушаться) --- глупо; его стоит проверить (касательно дин. массив = универсальное или частное средство)...