Tiene D 'newtype' (como en Haskell).¿Tiene D 'newtype'?
Es una pregunta ingenua, ya que estoy escaneando D, pero Google no encontró nada útil.
En Haskell esta es una forma de distinguir distintos tipos de elementos iguales en el tiempo de compilación, pero sin incurrir en penalizaciones de rendimiento en el tiempo de ejecución.
p. Ej. puedes hacer newtypes (dobles) para metros, segundos y kilogramos. Esto sería un error en tiempo de compilación si su programa agrega una cantidad en metros a una cantidad en segundos, pero sería tan rápido en el tiempo de ejecución como si ambos fueran dobles (que están en tiempo de ejecución).
Si D no tiene algo similar a 'newtype', ¿cuáles son los métodos aceptados para tratar cantidades dimensionadas?
Gracias,
Chris.
Una clase de envoltura delgada con sobrecargas de operador apropiadas puede hacer el trabajo y optimizarlo. Pero eso es solo una suposición y una solución bastante fea. – delnan
@delnan: En D probablemente usarías una estructura, no una clase. – dsimcha
Por un momento pensé: "¿nuevo tipo? ... como en Gundam ????" XD – Klaim