Как работают единицы измерения F #? - PullRequest
15 голосов
/ 03 сентября 2008

У кого-нибудь был шанс разобраться, как работают F # единицы измерения ? Является ли это просто chicanery на основе типов, или есть скрытые типы CLR, которые (потенциально) могут быть использованы из других языков .net? Будет ли он работать для какой-либо числовой единицы или он ограничен значениями с плавающей запятой (что используют все примеры)?

Ответы [ 2 ]

15 голосов
/ 17 сентября 2008

Лучшее (и я думаю официальное) место, чтобы узнать об этом, в блоге Эндрю Кеннеди.

Вот (текущие) соответствующие сообщения.

Как я сказал в посте, на который ссылался ваш ответчик, это совершенно определенно то, что вы НЕ МОЖЕТЕ сделать в C # (хотя я бы хотел, чтобы вы могли).

11 голосов
/ 03 сентября 2008

Согласно ответу на следующее связанное сообщение в блоге, они являются чисто статическим механизмом в компиляторе F #. Таким образом, нет CLR представления данных единиц.

Не совсем ясно, работает ли он в настоящее время с не плавающими типами, но с точки зрения системы типов это теоретически возможно.

...