west tutorial traduccion planta meaning bach elm

tutorial - elm wikipedia



¿Hay una manera de usar una biblioteca de javascript en elm? (3)

Mientras tanto, Elm 0.18 ha obtenido una biblioteca razonable para tratar fechas y horas en elm-community/elm-time .

Y Elm 0.19 viene con una nueva biblioteca de manejo de tiempo: elm/time .

Estoy trabajando con Elm. He leído acerca de los ports en Elm y cómo pueden ayudar a compartir datos / mensajes entre Elm y Javascript.

Tengo la intención de trabajar con una biblioteca rica en fecha y hora como moment.js. ¿Sugerir como port moment.js o alguna otra alternativa para esto?


No hay ninguna biblioteca rica en fecha y hora para Elm (AFAIK), así que vamos con la conversión.

Eché un vistazo rápido a esta biblioteca de JavaScript y parece que la mayor parte de su funcionalidad no se basa en la fecha / hora actual, que supongo que es el único efecto secundario utilizado en una biblioteca de fecha y hora. Así que los puertos Elm no van a ser de mucha ayuda.

Solución 1 - traducir el código JS al código Elm

Obviamente, esto llevará algún tiempo, pero debería ser bastante simple, ya que se trata principalmente de código sin efectos secundarios.

Solución 2 - Biblioteca de olmos nativos

Como la mayoría de las funciones son puras, es mejor escribir una biblioteca nativa. De esta manera, las funciones de moment.js pueden mapearse de una en una en funciones en Elm.

Advertencia: las bibliotecas nativas son generalmente desalentadas.
La razón es que realmente es una forma insegura de llamar directamente a las funciones de JavaScript, no se realizan comprobaciones del compilador, puede introducir efectos secundarios arbitrarios, que podrían estropear el lenguaje. Así que no es lo ideal. Pero si se asegura de que solo se enlaza con las funciones puras de la biblioteca de JavaScript, puede salirse con la suya.
Eche un vistazo a una biblioteca nativa de ejemplo, como elm-markdown para ver cómo escribir una. Necesitará los "native-modules": true indicación en el archivo elm-package.json . Si desea publicar la biblioteca en package.elm-lang.org , primero deberá verificarla y aprobarla. Puede solicitarlo en la lista de correo.