1 puntos por GN⁺ 2023-07-09 | 1 comentarios | Compartir por WhatsApp
  • Los usuarios de TypeScript están pidiendo una función que pueda generar información de tipos en tiempo de ejecución.
  • La ausencia de información de tipos en tiempo de ejecución hace que la serialización y la validación sean difíciles sin una cantidad excesiva de código repetitivo o generación de código.
  • Las soluciones existentes como io-ts y zod no son suficientes para todos los casos de uso.
  • Los usuarios de TypeScript están instando a que el equipo de TypeScript priorice resolver los problemas de serialización y ofrecer orientación o recomendar bibliotecas.
  • Parece haber un conflicto entre los objetivos de diseño de TypeScript y la necesidad de información de tipos en tiempo de ejecución.
  • Los usuarios no quieren resolver este problema con decoradores, porque prefieren usar interfaces.
  • Serían bienvenidas funciones de orden superior o características similares a F# Type Providers o C# Source Generators.
  • El autor promete enviar pastel y helado al equipo de TypeScript si resuelven este problema, de ser posible en TypeScript 4.3.

1 comentarios

 
GN⁺ 2023-07-09
Opinión de Hacker News
  • Discusión sobre la solicitud de reflection/tipos en tiempo de ejecución en TypeScript.
  • Algunos comentaristas creen que el planteamiento del problema en el artículo no es claro y está mal hecho.
  • El papel de TypeScript es compilar a JavaScript y no proporcionar seguridad de tipos en tiempo de ejecución.
  • El proyecto TypeScript trabaja para construir anotaciones de tipos sólidas y lógica de validación de tipos en tiempo de ejecución.
  • Algunos comentaristas se oponen a agregar verificación de tipos en tiempo de ejecución a TypeScript, y sostienen que eso terminaría creando un lenguaje nuevo sobre JavaScript.
  • Ya existen bibliotecas para validación de tipos en tiempo de ejecución en JavaScript, y la solicitud consiste en convertir eso en una opción normativa.
  • Algunos comentaristas prefieren usar type guards o bibliotecas externas para la verificación de tipos en tiempo de ejecución.
  • El objetivo de diseño de TypeScript es mantener la misma semántica en tiempo de ejecución que JavaScript, excepto por los enum.
  • El ecosistema alrededor de TypeScript depende de una eliminación completa de tipos, y agregar tipos en tiempo de ejecución requeriría cambios significativos en las herramientas existentes.
  • Algunos comentaristas expresan frustración por las limitaciones de TypeScript en comparación con otros lenguajes de tipado estático.
  • Un comentarista sugiere que pedir serialización y deserialización automáticas de tipos de TypeScript podría implementarse como una biblioteca.