2017-02-16 7 views
1

В Common Lisp функция decode-universal-time возвращает несколько значений, один из которых является часовым поясом в часах. Что включает этот часовой пояс в часовых поясах, которые находятся на полчаса от окружающих часовых поясов?Что делает DECODE-UNIVERSAL-TIME в получасовых часовых поясах?

ответ

1

Количество часов, задающих time zone является не обязательноinteger:

часового пояса н. рациональное кратное 1/3600 между -24 (включительно) и 24 (включительно), которая представляет собой временную зону, как несколько часов смещенных от времени по Гринвичу ...

IOW, точность является второй. Таким образом, временной пояс, например, India, составляет -11/2 (т.е. UTC+05:30)

PS. Я считаю, rational в «рациональный кратный 1/3600» выше должно быть integer. Это опечатка.

+2

Не знаете, почему вы думаете, что это опечатка; Я прочитал его как: часовой пояс может быть рациональным R, удовлетворяющим '(<= -24 R 24)', так что R равно '(* N 1/3600)' для некоторого целого N; он рациональный, который должен быть кратным 1/3600, следовательно, «рациональный кратный». – coredump

+1

@coredump: Я интерпретирую «рациональное кратное X» как «рациональное число раз X». Вы интерпретируете его как «рациональное число, которое является целым числом X». – sds

+1

Кажется, что ваша интерпретация является наиболее часто используемой (например, в тригонометрии, с рациональными кратными значениям pi и т. Д.). Обратите внимание, однако, что в глоссарии * rational * является ссылкой, поэтому я думаю, что авторы намеревались описать тип значения, как и в других записях (т. Е. * Часовой пояс, рациональный, кратно ... *). К сожалению, оба слова ставятся рядом друг с другом так без запятой, но я думаю, что существует неявное разделение между этими словами. Извините за обсуждение этой детали, я, вероятно, должен заниматься другими делами. – coredump

 Смежные вопросы

  • Нет связанных вопросов^_^