Запись времени функционирует в Haskell

Тот компонент перевода помогает Вам путем создания ортонормированное основание "глазом" в источнике и всем остальном выраженном с точки зрения того источника ("глаз") и эти три оси.

понятие не так, что матрица корректирует положение камеры. Скорее это пытается упростить математику: когда Вы хотите представить изображение всего, что Вы видите от своего "глазного" положения, является самым легким притвориться, что Ваш глаз является центром вселенной.

Так, короткий ответ - то, что это делает математику намного легче.

Ответ на вопрос в комментарии: причина Вы только вычитаете "глазное" положение из всего, имеет отношение к порядку операций. Думайте о нем этот путь: как только Вы находитесь в новой системе отсчета (т.е. положение головы, представленное xaxis, yaxis и zaxis), Вы теперь хотите выразить расстояния с точки зрения этой новой (повернутой) системы отсчета. Именно поэтому Вы используете скалярное произведение новых осей с позицией наблюдателя: это представляет то же расстояние, которое должны переместить вещи, но оно использует новую систему координат.

27
задан Rory O'Kane 31 May 2012 в 04:21
поделиться

3 ответа

Пожалуйста, посмотрите на использование стандартных библиотек для этого:

Просто используйте критерий.


Замечание о глубине оценки : лень означает, что вам нужно решить, какой объем оценки вы хотите получить во время хронометража. Обычно вам нужно привести код к нормальной форме. Класс типов NFData позволяет сделать это с помощью метода rnf. Если вычисление внешнего конструктора в порядке, используйте seq в чистом коде, чтобы принудительно выполнить его вычисление.

22
ответ дан 28 November 2019 в 05:38
поделиться

Haskell лениво оценивается.

6
ответ дан 28 November 2019 в 05:38
поделиться

Lazy значит Lazy. Время имеет значение только внутри монады, такой как IO.

Время не имеет никакого значения в выражении "4 + 4" - или в любом другом математическом уравнении. Ответ просто ЕСТЬ. Ответ" на любое другое чистое вычисление уже предопределен в тот момент, когда вычисление задано.

К сожалению, это и есть "ответ" на ваш вопрос. Ответ, который, на самом деле, существовал еще до того, как вы задали свой вопрос. Он существовал в 1998 году, когда язык был окончательно определен. Тот факт, что мне потребовался год, чтобы написать это, не имеет значения ;-)

Ладно, хватит этой ерунды. (Но если все вышесказанное слишком раздражает, то просто забудьте о Haskell.)

Если пакет Criterion - это слишком больно, просто напишите тестовый пример и используйте +RTS для его тестирования.

Если вы хотите быть действительно крутым, создайте свою собственную монаду - такую, которая засекает время выполнения вашего алгоритма и передает результат обратно в виде кортежа с возвращаемым значением алгоритма. Удачи. Мы все рассчитываем на вас!

5
ответ дан 28 November 2019 в 05:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: