OberonCore
https://forum.oberoncore.ru/

Ревизия системы типов в А2
https://forum.oberoncore.ru/viewtopic.php?f=22&t=6436
Страница 1 из 1

Автор:  Борис Рюмшин [ Суббота, 14 Сентябрь, 2019 00:23 ]
Заголовок сообщения:  Ревизия системы типов в А2

Алексей Морозов в телеграм-чате сообщил о ревизии типов в А2: http://cas.inf.ethz.ch/news/1

Автор:  budden [ Пятница, 20 Сентябрь, 2019 19:53 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

Тип INTEGER неопределённого размера выглядит шагом назад.

Автор:  Ярослав Романченко [ Пятница, 20 Сентябрь, 2019 22:07 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

budden писал(а):
Тип INTEGER неопределённого размера выглядит шагом назад.
Зато вагон и маленькая тележка типов определённых размеров, в том числе и целых без знака. Легче теперь портировать код с паскаля, C++

Автор:  Oleg N. Cher [ Пятница, 20 Сентябрь, 2019 22:14 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

О, наконец-то ушли от 16-битного INTEGER. Хорошо. :D

Хотя я бы лучше назвал типы INT8..INT64 и UINT8..UINT64 вместо SIGNED и UNSIGNED. И короче, и выразительнее.

Автор:  Ярослав Романченко [ Суббота, 21 Сентябрь, 2019 12:02 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

Oleg N. Cher писал(а):
Хотя я бы лучше назвал типы INT8..INT64 и UINT8..UINT64 вместо SIGNED и UNSIGNED. И короче, и выразительнее.
Вот, да. Согласен :wink:

Автор:  budden [ Суббота, 21 Сентябрь, 2019 12:43 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

А мне казалось, что там уже и раньше были эти типы фиксированной разрядности. Нет разве?

Автор:  Ярослав Романченко [ Суббота, 21 Сентябрь, 2019 13:24 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

budden писал(а):
А мне казалось, что там уже и раньше были эти типы фиксированной разрядности. Нет разве?
Тогда они мирно сосуществовали со старыми типами. А теперь многие старые типы просто удалили. И сообщество так-сказать оповестили, что-бы поправили код.
Там и скрипт есть, который это сделает автоматически.

Автор:  Wlad [ Понедельник, 23 Сентябрь, 2019 09:54 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

Oleg N. Cher писал(а):
Хотя я бы лучше назвал типы INT8..INT64 и UINT8..UINT64 вместо SIGNED и UNSIGNED. И короче, и выразительнее.
Присоединяюсь.

Автор:  Oleg N. Cher [ Понедельник, 23 Сентябрь, 2019 22:23 ]
Заголовок сообщения:  Re: Ревизия системы типов в А2

Ярослав, а как в AO реализовано взаимодействие знаковых и беззнаковых типов? Как это соотносится с SHORT()? Насколько я понимаю, вычисления всегда со знаком, т.е. чтобы работать, допустим, с UNSIGNED32 диапазон вычислений со знаком должен быть уже 64-битным.

Или беззнаковые типы там "сырые" (им всё всегда можно присвоить, при этом знаковость игнорируется)?

Вот в GPCP тип UBYTE реализован очень строго: присваивать ему можно только через функцию USHORT(), проверяющую диапазон. Притом он реализован только в версии для .NET и, видимо, только для совместимости.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/