> -- GUEST писал(а):
> А чем вызвано такое ограничение Руслан? Насколько я понял при создании Component Pascal вопрос об единственной кодировке не ставился. Но это решение его не ставить все-таки в стандарт языка не вошло. Конечно, если не рассматривать стандарт как описание реализации.

Я посмотрел еще раз описание Компонентного Паскаля (КП). Сергей Губанов дал точную цитату.

Насколько я понимаю, Пфистер и Шиперски при проектировании КП хотели сохранить двойственность и ввели пару SHORTCHAR и CHAR.

Возможно (это всего лишь мое предположение) предполагалось в SHORTCHAR держать внутренние вещи (как-то исходные тексты и т.п.), а в CHAR (Unicode16) -- внешние.

В действительности это, понятное дело, создает проблемы.

Если затрагивать сферу промышленного ПО, то надо придерживаться известного принципа GIL -- globalization-internalization-localization (http://www.lisa.org).  Желательно об интернационализации продукта (проектирование его с учетом последующих различных локализаций) думать заранее. И в этом смысле надо избегать использования в исходниках текстовых констант, подлежащих локализации (вообще).

Где встречаются текстовые строки:
1. Исходники КП (за вычетом текстовых констант)
2. Текстовые константы
3. Текстовые переменные (внешние тексты)

Проблема в том, что исходники в КП -- это тот же документ, который равноправен любому обычному документу (т.е. пункту 3).

На мой взгляд, если соглашаться с тем, что Unicode следует обязательно поддерживать, то возникают три варианта:

A). 1 => SHORTCHAR, 2+3  => CHAR
B). 1+2 => SHORTCHAR, 3 => CHAR
C). 1+2+3 => CHAR