Языки программирования. Практический сравнительный анализ


Языки программирования. Практический сравнительный анализ - стр. 208


Пусть объявлены объекты

            A: сотрудник ;

            B: рук_группы ;

Тогда присваивание

     B := рук_группы(A) ;

содержательно может означать "повышение" сотрудника A. Ясно, что "автоматически" такое преобразование не делается!

 

Итак, мы разобрались с основными особенностями подтипов и производных типов. В следующем разделе подведем промежуточный итог знакомства с системой типов в Аде, сопоставив ее возможности с нашей классификацией данных.

 

 

Замечание о мобильности программ.

В связи с целыми типами интересно поговорить о мобильности программ. Мобильность - это величина, обратно пропорциональная затратам на перенос программы (программного изделия) из одной программной среды в другую. Например, с БЭСМ-6 на машины серии ЕС или СМ ЭВМ, из операционной системы ОС РВ в РАФОС или UNIX и т.п. По мере развития вычислительной техники мобильность становится одним из важнейших показателей качества программных продуктов. С ней связан уровень дублирования разработок, тиражность программных изделий, возможность пользоваться накопленным запасом программ в новой программной среде и т.п.

Какая связь между мобильностью и целыми типами?

Рассмотрим, чем отличаются объявления типа

   type косвенный is new INTEGER range -32768.. +32767;

   type прямой is range -32768.. +32767;

Если предопределенный (реализацией) тип INTEGER имеет диапазон, скажем, -4096.. +4096, то для такой реализации объявление типа "косвенный" придется заменять на другой. Например,

   type длинный is new LONG_INTEGER;

А для типа "прямой" транслятор сам сможет подобрать подходящее представление, подходящий родительский тип, опираясь на то, что подразумеваемый здесь "по умолчанию" предопределенный родительский тип "универсальный_целый"  - потенциально не ограниченного диапазона.

Конец замечания.

 

4.11.9. Ссылочные типы (динамические объекты)

До сих пор в наших примерах, а также в Алголе 60 и Фортране, нам приходилось встречаться лишь с объектами, которые с точки зрения времени их существования естественно называть статическими или квазистатическими.


- Начало -  - Назад -  - Вперед -