J'ai entendu parler de flow mais je ne l'ai jamais encore essayé. Je n'en attends pas grand chose, en Javascript il y a beaucoup d'obstacles qui empêchent le système d'être très pertinent, et j'avais discuté avec un des développeurs du projet qui avait présenté flow à React en 2016 (à Paris) qui avait plus ou moins confirmé mes craintes. L'idée d'annoter les types me semble vider un peu le concept de son intérêt puisque si justement les types étaient notés explicitement on pourrait retrouver relativement facilement les endroits affectés par un changement de type – même si un système automatique peut sûrement apporter son aide. Mais j'essaierai quand-même de voir ce que ça donne.
Je rappelle pour ceux qui lisent que OCaml ou Haskell déduisent les types et vérifient leur cohérence sans aucune annotation de l'utilisateur. En pratique on écrit souvent ces types déduits dans un fichier, mais le système est capable de générer un canvas qu'il suffit de compléter.
[^] # Re: Un peu déçu par Rust
Posté par Michaël (site web personnel) . En réponse au journal Un print(1 + "3a"), ça nous inspire comment ?. Évalué à 3.
J'ai entendu parler de flow mais je ne l'ai jamais encore essayé. Je n'en attends pas grand chose, en Javascript il y a beaucoup d'obstacles qui empêchent le système d'être très pertinent, et j'avais discuté avec un des développeurs du projet qui avait présenté flow à React en 2016 (à Paris) qui avait plus ou moins confirmé mes craintes. L'idée d'annoter les types me semble vider un peu le concept de son intérêt puisque si justement les types étaient notés explicitement on pourrait retrouver relativement facilement les endroits affectés par un changement de type – même si un système automatique peut sûrement apporter son aide. Mais j'essaierai quand-même de voir ce que ça donne.
Je rappelle pour ceux qui lisent que OCaml ou Haskell déduisent les types et vérifient leur cohérence sans aucune annotation de l'utilisateur. En pratique on écrit souvent ces types déduits dans un fichier, mais le système est capable de générer un canvas qu'il suffit de compléter.