CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Go, le langage système selon Google

Kaoron
Kaoron
Niveau 9
11 novembre 2009 à 23:45:22

Go, go, go !

http://linuxfr.org/~patrick_g/29016.html
http://golang.org/

godrik
godrik
Niveau 30
12 novembre 2009 à 00:50:52

salut kaoron, J'ai vu l'annonce passe sur /. ( http://developers.slashdot.org/story/09/11/11/0210212/Go-Googles-New-Open-Source-Programming-Language ), mais je n'ai pas eu le temps de regarder en detail pour me faire un avis dessus.

dnob700
dnob700
Niveau 10
12 novembre 2009 à 01:42:14

J'ai parcouru leur site, ça a l'air intéressant (bon moi, tu me présente un langage avec un typage statique et je l'achète tout de suite de toutes manières). Je vais l'ajouter dans la file des langages qu'il faut que je teste...

godrik
godrik
Niveau 30
12 novembre 2009 à 01:58:24

j'ai parcouru aussi un peu le site. Ce que je retiens d'assez important est que le langage est fait pour la programmation parallele : les threads (appele goroutine) sont des threads utilisateurs ce qui permet d'en creer a faible cout; il y a aussi des tubes natifs pour faire communiquer ces threads. Ce qui me fait un peu pense au langage experiemental de microsoft pour le calcul parallele base sur la notion de filtre.

Je retiens aussi que ca casse a peu pres la compatibilite binaire avec tout.

En bref, yapl (Yet Another Programming Language). En un peu plus long, c'est un peu plus de ci et un peu moins de ca; mais rien de bien interessant dans le fond.

_skip
_skip
Niveau 10
12 novembre 2009 à 09:41:33

Pour ceux qui cherchent un C++ en mieux foutu, D existe depuis longtemps.

D est justement un langage destiné à produire du code compilé natif en supprimant la plupart des inconvénients du C++, en permettant notamment d'utiliser (ou non) un garbage collector, enfin assez pour qu'il puisse être à la fois bien sécurisé et/ou fortement optimisé suivant les situations.

Maintenant que D qui existe depuis un certain temps semble stagner, on voit google qui vient avec son go et aussitôt tout le net s'enflamme... Perso ça me gonfle un peu. J'ai l'impression que tout ce que fait google est immédiatement (aveuglément?) considéré comme super cool et qu'une communauté entière va se créer tout soudain autour de cette techno "just because it's google".

Pour le langage lui-même, à titre personnel je n'aime pas trop sa syntaxe, pas d'exceptions, perso je trouve qu'on a vu mieux que ça et qu'on en a pas fait tout un foin.

dnob700
dnob700
Niveau 10
12 novembre 2009 à 10:08:40

"J'ai l'impression que tout ce que fait google est immédiatement (aveuglément?) considéré comme super cool"

Ben, c'est une question d'habitude. Généralement, ce que fait google est "super cool" donc on s'attend à ce que ce qu'ils fassent de nouveau le soient aussi.

Évidemment, il manque des concepts dans ce langage, mais le typage statique et le GC dans un langage c'est toujours bon. Ça n'est pas encore nouveau, mais avec un support important pour de la programmation parallèle et distribué et une compilation haute performance, ça devient assez unique à ma connaissance (et ce n'est pas négligeable comme fonctionnalité).

Bon, il reste à le tester et à voir si il tient ses promesses.

_skip
_skip
Niveau 10
12 novembre 2009 à 10:40:54

Pour l'instant la seule chose que j'ai pu apprendre c'est que le runtime semble disposer d'un pool de threads auquel il distribue les routines utilisateurs, ces pseudos threads ont une pile petite capable de grossir en allouant de la mémoire du tas, bref ça ressemble assez à ce que les langages managés actuels font sur ce point.

Pour la compilation, c'est clair que sur linux ça risque de les changer de leur g++.

Kaoron
Kaoron
Niveau 9
12 novembre 2009 à 11:01:39

A mon avis, le buzz est moins axé sur Google que sur Ken Thompson et Rob Pike.

_skip
_skip
Niveau 10
12 novembre 2009 à 11:22:39

La librairie standard à l'air de contenir pas mal de choses déjà. Malheureusement un type String immuable, ce qui ont rêvé d'un type implicitement partagé comme QString de Qt peuvent retourner au vestiaire...

dnob700
dnob700
Niveau 10
12 novembre 2009 à 16:58:00

certes, mais il y aurait eu le contraire, c'est les gens qui ne jurent que par des chaîne immutable, qui aurait du se rhabiller.

Manifestement, un certains nombres des choix qui ont été fait pour se langage vont dans la direction d'un langage de "bas niveau" (pas trop quand même), mais dont l'exécution soit la plus sûr possible. Des chaîne immutable, vont dans ce sens là (outre de permettre souvent d'améliorer les performances).

_skip
_skip
Niveau 10
13 novembre 2009 à 14:00:53

C'est surtout une source de copie inutile à profusion, j'ai toujours trouvé qu'en java et dotnet, c'était un gâchis considérable et que l'implicit sharing était beaucoup plus proche d'un compromis de qualité entre performance et sécurité.

Le seul avantage direct que j'y vois, c'est d'éviter de détraquer un conteneur avec une sémantique de tri ou de hachage.

Par ailleurs ce lien circule sous dvp :
http://shootout.alioth.debian.org/u64q/benchmark.php?test=all&lang=go&lang2=gpp&box=1

chris_27
chris_27
Niveau 10
13 novembre 2009 à 18:15:20

« on voit google qui vient avec son go et aussitôt tout le net s'enflamme... Perso ça me gonfle un peu. » :d) pour une fois, je suis complètement d'accord avec _skip. :oui:

dnob700 : tu confonds blizzard et google là. :-))) Ce que fait blizzard est toujours super cool, ce que fait Google c'est conquérir le monde. D'accord, ils ont eu des idées novatrices à une époque et ils ont concrétiser ça par des choses bien, mais là ils veulent battre tout le monde partout et ça en devient grotesque.

« mais le typage statique et le GC dans un langage c'est toujours bon » :d) j'ai cru comprendre que le typage n'était pas complètement statique, quant au GC je reste moyennement convaincu surtout quand on me parle de faire des threads juste à coté (quand on comprend ce qu'est un thread, on sait faire les malloc et les free soi-même normalement).

Kaoron
Kaoron
Niveau 9
13 novembre 2009 à 19:00:03

(quand on comprend ce qu'est un thread, on sait faire les malloc et les free soi-même normalement)

Quels langages permettent la gestion directe de la mémoire ? Quels langages implémentent les threads nativement ?

Quelle est la taille de l'intersection de ces deux ensembles ?

_skip
_skip
Niveau 10
14 novembre 2009 à 13:21:51

Les threads de Go s'appuieront bien un moment donné sur le bas niveau de l'OS comme les font les autres langages je suppose, avec peut être plus ou moins d'étages entre ces deux choses...

La seule chose qui m'embête dans Go, c'est que... c'est un nouveau langage de programmation qui a la même vocation qu'un autre langage existant qui est D. C'est à dire faire le pont entre le C++ qui permet un contrôle très fin mais se traîne les vieilles casseroles de ses ancêtres et les langages comme java/.Net qui sont au contraire très agréables et productifs mais à qui il manque les qualités du C++.

En gros google, qui a la puissance commerciale et communautaire pour pousser une techno excellente comme D qui est déjà riche en fonctionnalités, préfère nous réinventer la roue juste pour que ce soit une "roue google", c'est dommage.

Kaoron
Kaoron
Niveau 9
14 novembre 2009 à 14:57:11

Il va falloir qu'on m'explique en quoi Go cherche à faire le pont entre C++ et quoi que ce soit.

Certes, c'est un descendant de C.... mais la comparaison s'arrête là, l'approche objet est complètement opposée à celle de C++/Java/.net/D et consorts.
Il n'y a même pas de foutues classes dans Go ! Le langage s'appuie sur des types non hiérarchisés et sur _deux_ concepts objets : des méthodes appendices et des interfaces non dérivatives... On est à dix milles lieues de l'orgie des langages sus-cités.

Enfin bon, Google == infamie donc on lance des trucs dessus, no matter what. Ok.

Ridicule...

_skip
_skip
Niveau 10
15 novembre 2009 à 13:34:47

Et bien regarde la vidéo d'une heure et dis-moi selon toi où GO se positionne sur le marché. Pour moi c'est clairement entre les langages natifs casse-gueules difficile à bosser avec et les langages managés/interprétés très productifs.

Il y a déjà des technos sur ce segment qui auraient à mon sens méritées d'être poussées. Ca a rien a y voir avec le fait que ce soit google ou quelqu'un d'autre, juste avec le fait que j'échange petit à petit mon côté jeune geek enthousiaste au profit d'une attitude de vieux con qui en a marre de devoir apprendre de nouvelles technos à la mode pour rester dans le coup.

Tenebrous
Tenebrous
Niveau 8
15 novembre 2009 à 14:40:08

Pour ceux que ça intéresse :

http://www.siteduzero.com/news-62-34457-p1-google-presente-go.html

:)

dnob700
dnob700
Niveau 10
15 novembre 2009 à 18:48:09

Les gens qui ont passé leur vie à coder en fortran et en ada ne comprennent pas pourquoi non plus on leur demande de se mettre à jour avec des langages plus moderne, mais ils sont bien obligé aussi.

Quoi qu'il en soit, les langages de programmation évoluent, parce que la théorie progresse. Et on est capable d'inventer aujourd'hui de meilleurs langages qu'il y a 15 ou 20 ans, et ça ne vas pas s'arrêter. Que certains vieillissent n'est certainement pas une bonne pour s'opposer à la marche du progrès.

Maintenant, ce Go n'est peut-être pas le futur, il n'est peut-être pas mieux que d'autres langages moderne, mais je connais peu de personnes ayant testé de manières approfondie divers paradigme de programmation et qui ne seraient pas convaincue que, par exemple, les langages fonctionnels finiront par remplacer les langages impératifs, ou que le typage statique offre une qualité de programmation inimaginable pour ceux qui n'ont pas essayé. Avec un peu de courage, l'exploration de ces domaines (qui ne sont que des exemples) pourrait rendre de grand service à beaucoup de programmeurs/entreprises/projets.

Et enfin, apprendre un langage comme ça, ce n'est pas vraiment comparable à apprendre une nouvelle technologie comme le serait un framework complet. J'imagine que le langage et sa bibliothèque doivent pouvoir être maitrisé en l'espace de quelques jour si c'est un impératif.

Kaoron
Kaoron
Niveau 9
23 novembre 2009 à 18:00:45

Une intéressante comparaison :
http://www.cowlark.com/2009-11-15-go/

godrik
godrik
Niveau 30
23 novembre 2009 à 18:16:40

interesting ! :)

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment