Je pense que ces choses font, au contraire, qu'avoir une sémantique formelle du langage serait probablement plus facile que pour d'autres langages avec plus de fonctionnalités, si on exclut la concurrence, justement.
Et je trouve simplificateur le typique « ignore complètement les 40 dernières années de recherche » dont est souvent victime Go : il se trouve juste que c'est un langage qui avait des objectifs assez précis et qu'ils pèsent vraiment le coût de l'accessibilité et simplicité pour les problèmes courants au moment d'introduire quelque chose dans le langage, et puis ils font la balance avec le reste ; que les choix faits ne plaisent pas à la communauté prisant les systèmes de types complexes et expressifs, avec le choix par exemple plutôt de leurs interfaces implémentées implicitement, approche relativement peu commune parmi les langages, c'est autre chose, mais pas de l'ignorance : tout choix a un coût.
Go attire les utilisateurs de langages dynamiques : accessible (typage simple), plus sûr (interface{} occasionnellement ça leur fait pas peur : dans un langage dynamique il n'y a que ça et c'est même pire, car Go au moins force à être explicite au moment de l'assertion de type), rapide (typage statique), builds rapides (permis par les choix au niveau langage), etc.
Et je dis tout ça en tant que personne qui s'amuse souvent à faire du Coq aussi.
[^] # Re: go 2.0
Posté par anaseto . En réponse au journal Pourquoi la recherche en langages de programmation ?. Évalué à 5.
Je pense que ces choses font, au contraire, qu'avoir une sémantique formelle du langage serait probablement plus facile que pour d'autres langages avec plus de fonctionnalités, si on exclut la concurrence, justement.
Et je trouve simplificateur le typique « ignore complètement les 40 dernières années de recherche » dont est souvent victime Go : il se trouve juste que c'est un langage qui avait des objectifs assez précis et qu'ils pèsent vraiment le coût de l'accessibilité et simplicité pour les problèmes courants au moment d'introduire quelque chose dans le langage, et puis ils font la balance avec le reste ; que les choix faits ne plaisent pas à la communauté prisant les systèmes de types complexes et expressifs, avec le choix par exemple plutôt de leurs interfaces implémentées implicitement, approche relativement peu commune parmi les langages, c'est autre chose, mais pas de l'ignorance : tout choix a un coût.
Go attire les utilisateurs de langages dynamiques : accessible (typage simple), plus sûr (
interface{}occasionnellement ça leur fait pas peur : dans un langage dynamique il n'y a que ça et c'est même pire, car Go au moins force à être explicite au moment de l'assertion de type), rapide (typage statique), builds rapides (permis par les choix au niveau langage), etc.Et je dis tout ça en tant que personne qui s'amuse souvent à faire du Coq aussi.