Hay muchos buenos documentos WASM sobre el tipo flotante y su aritmética con la parte fraccionaria (basada en 2) ^ (-1).
Durante años, los programadores han estado utilizando soluciones alternativas en JavaScript para lograr un cálculo correcto de fracciones decimales debido al único tipo flotante de 64 bits para todos los números.
¿Existe un plan para admitir el tipo __Money__ o el tipo __Decimal__ ( Ejemplo 1 , Ejemplo 2 )?
El tipo prácticamente decimal es importante para la mayoría de las aplicaciones comerciales. Muchos lenguajes, plataformas y bases de datos lo soportan.
WebAssembly expone características de hardware comunes cuando estas características hacen que los casos de uso sean más rápidos. En general, no expone nada más: se espera que se construyan funciones útiles utilizando estas primitivas.
Por lo tanto, evaluaríamos el decimal codificado en binario de la siguiente manera:
Tenga en cuenta que la utilidad de una característica simplemente no es relevante para esto. Si es útil, se puede construir una biblioteca (o mejor, se puede compilar una base de código C++ en WebAssembly). La utilidad y la presencia de un campeón para la función solo influyen en cuándo llegaremos a ella.
No creo que el OP esté solicitando soporte para BCD, sino soporte para punto flotante decimal . Aparte de eso, estoy de acuerdo con @jfbastien , debemos tener cuidado al admitir algo que no está disponible con frecuencia en el hardware. Según la página de Wikipedia que cité, hasta ahora solo el hardware de IBM lo implementa. ISTR hubo rumores de que Intel lo perseguía, pero nada parece haberse materializado.
Intel parece ofrecer una biblioteca de emulación que se afirma que es portátil, por lo que, presumiblemente, C podría compilarse en Wasm. No he investigado eso en absoluto, ni siquiera para verificar que mi suposición sea correcta.
Gracias @jfbastien y @lars-t-hansen por las respuestas.
Ahora está claro que este problema no está relacionado con WASM y debe dirigirse a otro grupo.
Una biblioteca puede resolver este problema.
Comentario más útil
No creo que el OP esté solicitando soporte para BCD, sino soporte para punto flotante decimal . Aparte de eso, estoy de acuerdo con @jfbastien , debemos tener cuidado al admitir algo que no está disponible con frecuencia en el hardware. Según la página de Wikipedia que cité, hasta ahora solo el hardware de IBM lo implementa. ISTR hubo rumores de que Intel lo perseguía, pero nada parece haberse materializado.
Intel parece ofrecer una biblioteca de emulación que se afirma que es portátil, por lo que, presumiblemente, C podría compilarse en Wasm. No he investigado eso en absoluto, ni siquiera para verificar que mi suposición sea correcta.