4 puntos por GN⁺ 2023-11-04 | 1 comentarios | Compartir por WhatsApp
  • Un artículo sobre un nuevo método para aplicar de forma eficiente lenguajes de programación con recolección de basura (GC) a WebAssembly (Wasm)
  • La propuesta de recolección de basura (GC) tiene como objetivo dar soporte a lenguajes con GC en Wasm, lo cual es importante debido a su popularidad.
  • El artículo explora los detalles técnicos de cómo lenguajes con GC como Java, Kotlin, Dart, Python y C# pueden adaptarse a Wasm.
  • Se analizan dos enfoques principales: el método de adaptación "tradicional" y el método de adaptación con WasmGC.
  • El método de adaptación "tradicional" consiste en compilar la implementación existente del lenguaje al producto mínimo viable de WebAssembly (WasmMVP), lanzado en 2017.
  • El método de adaptación con WasmGC consiste en compilar el lenguaje a las propias estructuras de GC de Wasm, tal como se define en la propuesta reciente de GC.
  • El artículo analiza las compensaciones técnicas entre estos dos enfoques, especialmente en tamaño y velocidad.
  • WasmGC tiene varias ventajas importantes, pero también requiere trabajo nuevo en la cadena de herramientas y en las máquinas virtuales (VMs).
  • El artículo también explica qué trabajo está realizando el equipo de V8 en estas áreas, incluyendo cifras de benchmarks.
  • El artículo concluye expresando la esperanza de que WasmGC sea un nuevo método prometedor para implementar lenguajes con GC en WebAssembly, y que las adaptaciones con WasmGC se vuelvan una técnica popular por sus beneficios.

1 comentarios

 
GN⁺ 2023-11-04
Opiniones de Hacker News
  • Un artículo sobre la incorporación de lenguajes de programación con recolección de basura a WebAssembly (WASM)
  • Entusiasmo entre los comentaristas por el potencial de la "cintura delgada" de WASM, así como por la idea de que los recolectores de basura y N+M son mejores que N×M para el desarrollo
  • Curiosidad sobre la existencia de algo desde WASM hacia la JVM, y un comentarista encontró uno en GitHub
  • El potencial de que los hilos de WASM ofrezcan verdadero paralelismo, con la esperanza de que esto pueda resolver eficazmente los problemas de asincronía, paralelismo y recolección de basura
  • Mención de que la herramienta WASM de Julia podría admitir esta función, con un ejemplo de compilar un resolvedor de ODE a WASM
  • Comparaciones con el sentimiento de que "wasm es el nuevo llvm", junto con el escepticismo de algunos comentaristas que se preguntan cuándo será posible una aplicación más amplia
  • El lanzamiento de esta función se considera impresionante, y algunos comentaristas dudaban de que llegara a hacerse realidad
  • Preocupaciones sobre la complejidad de los navegadores actuales y la pronunciada curva de aprendizaje involucrada en crear tu propio navegador
  • Esperanza de un futuro en el que los binarios de wasm puedan usarse como punto de entrada de los sitios web, lo que podría mejorar el tiempo de inicio de las aplicaciones web dinámicas
  • El nuevo soporte de wasm en Kotlin se considera interesante, y una versión experimental de Compose Multiplatform admite navegadores usando WASM
  • Cierto escepticismo sobre el aumento de la complejidad de WebAssembly debido a la incorporación de un recolector de basura
  • Preguntas sobre por qué la publicación del blog no menciona a Go, con la especulación de que Go podría no beneficiarse de estos cambios
  • Comparaciones con la reinvención de los applets de Java, con la sugerencia de que revivir los applets de Java podría resolver muchos problemas