Оптимизатор

Проектирование и разработка идеального средства программирования.

Модератор: Модераторы

Аватара пользователя
alexs
долгожитель
Сообщения: 4067
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Slavikk
Мне вроде как рейтинг крутить не зачем :-)
То что я высказал пожелание (хотелку) э
то не значитьт что такая практика написания кода повсеместна. Но бываю случаи разные.
Простейший пример:
Инициализация перменной типа TDateTime определённой датой.
Правильный вариант

Код: Выделить всё

D:=39378; //Присвоим переменной D дату 23.10.2007

Не правильный вариант

Код: Выделить всё

D:=StrToDate('23.10.2007'); //Присвоим переменной D дату 23.10.2007

Но! не правильный вариант читается легче. И с введением той фишки которую я предложил второй вариант также будет правильным.
Протсо самодокументируемость кода - это очень великая вешь (одна из причин, по которой мне не нравится C). И я буду только приветсвовать все средства на повышение удобства работать с языком (и компилятором).
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Вариант конкретно с StrToDate вряд ли возможно реализовать. Все-таки StrToDate зависит от локали и может на разных системах выдавать разный результат.
Но вообще говоря, у данной идеи есть развитие. Например, если компилятор знает, что результат ф-ции зависит только от ее аргументов, а аргументы между вызовами не менялись, то он может использовать готовый результат и не вызывать ф-цию лишний раз. Если я правильно понял прочитанную по диагонали документацию, в gcc для чего-то подобного есть __attribute__((__pure__)).
Ответить