2008-09-02 27 views
14

¿Alguien ha tenido la oportunidad de investigar cómo funciona F# Units of Measure? ¿Es solo trapacería basada en tipos, o hay tipos CLR escondidos debajo que podrían (potencialmente) ser utilizados desde otros lenguajes .net? ¿Funcionará para cualquier unidad numérica, o está limitada a valores de punto flotante (que es lo que usan todos los ejemplos)?¿Cómo funcionan las unidades de medida F #?

+0

Eche un vistazo a la calculadora Frink y al lenguaje de programación Frink. –

Respuesta

11

De acuerdo con response en la siguiente publicación de blog relacionada, son un mecanismo puramente estático en el compilador F #. Entonces, no hay representación CLR de los datos de las unidades.

No está del todo claro si actualmente funciona con tipos no flotantes, pero desde la perspectiva del sistema de tipos es teóricamente posible.

+1

Vea la última publicación de blog de Andrew Kennedy (en la respuesta a continuación), la UOM está disponible para cualquier tipo numérico, así como para los tipos compuestos. – Benjol

15

El mejor (y creo que oficial) lugar para conocer esto es en el blog de Andrew Kennedy.

Aquí están las publicaciones relevantes (actuales).

Como dije en el post que a su contestador refiere, esto es sin duda algo que no se puede hacer en C# (aunque desearía que pudieras).

Cuestiones relacionadas