Kirjoittaja Aihe: Google Go ohjelmointikieli  (Luettu 4498 kertaa)

Ux64

  • Käyttäjä
  • Viestejä: 586
    • Profiili
Google Go ohjelmointikieli
« : 11.11.09 - klo:08.42 »
Mitäs mieltä olette tästä:
http://golang.org/

Vaikuttaa mielenkiintoiselta. Nopea tukee hyvin threadingia jne. Kommenttien mukaan tosin peruskirjastojen puute haittaa hommaa, eli joutuu tekemään turhaa työtä tai keräämään sitten muualta kirjastoja joita käytetään.

Pythonin multi-threading ongelmista olen täälläkin keskustellut, pääasiassa GIL ongelmasta. Python vaikutti muuten oikein miellyttävältä. Onhan tietysti niitä vaihtoehtoja joilla tuota GIL ongelmaan voidaan kiertää.

Nykyjään ei voi millään ajatella edes kirjoittavansa serverisoftia ilman kunnollista multithreading tukea. Joten tuo sulkee valitettavasit Pythonin aika auttamattomasti pihalle. Tai sitten pitäisi tehdä kikkailuita joissa ajetaan useita pythoneita rinnakkain (kuten Google porukat tekee) ja ne sitten kommunikoivat keskenään. Tämä tietysti mahdollistaa kuorman jakamisen siltä connection handlerilta vielä suuremmalle prosessori määrälle, kuin yhden koneen prosessoreille.

Lainaus
What is the purpose of the project?
No major systems language has emerged in over a decade, but over that time the computing landscape has changed tremendously. There are several trends:

•Computers are enormously quicker but software development is not faster.
•Dependency management is a big part of software development today but the “header files” of languages in the C tradition are antithetical to clean dependency analysis—and fast compilation.
•There is a growing rebellion against cumbersome type systems like those of Java and C++, pushing people towards dynamically typed languages such as Python and JavaScript.
•Some fundamental concepts such as garbage collection and parallel computation are not well supported by popular systems languages.
•The emergence of multicore computers has generated worry and confusion.
We believe it's worth trying again with a new language, a concurrent, garbage-collected language with fast compilation. Regarding the points above:

•It is possible to compile a large Go program in a few seconds on a single computer.
•Go provides a model for software construction that makes dependency analysis easy and avoids much of the overhead of C-style include files and libraries.
•Go's type system has no hierarchy, so no time is spent defining the relationships between types. Also, although Go has static types the language attempts to make types feel lighter weight than in typical OO languages.
•Go is fully garbage-collected and provides fundamental support for concurrent execution and communication.
•By its design, Go proposes an approach for the construction of system software on multicore machines.
« Viimeksi muokattu: 29.11.09 - klo:20.39 kirjoittanut Ux64 »

Tha-Fox

  • Käyttäjä
  • Viestejä: 3315
  • Arch Linux && CentOS
    • Profiili
    • http://kettu.dy.fi
Vs: Go ohjelmointikieli (Google)
« Vastaus #1 : 11.11.09 - klo:12.03 »
Lukaisin nopeasti tuon kotimaisen uutisen aiheesta. En ole vielä tuohon sen enemmän perehtynyt, mutta taidan ottaa tuon ainakin vertailuun pythonin rinnalle, kunhan löydän aikaa uuden skriptikielen opetteluun.

mikko_h

  • Käyttäjä
  • Viestejä: 202
    • Profiili
Vs: Google Go ohjelmointikieli
« Vastaus #2 : 12.11.09 - klo:10.38 »
Go-niminen kieli oli olemassa jo entuudestaan. Vissiin Googlen kehittäjillä ei oikein ole hakukoneen käyttö hanskassa. Uuden kielen bugtrackerissa on pitkähkö pulina aiheesta:

http://code.google.com/p/go/issues/detail?id=9

Mute

  • Käyttäjä
  • Viestejä: 58
    • Profiili
    • Kotisivuni
Vs: Google Go ohjelmointikieli
« Vastaus #3 : 12.11.09 - klo:12.20 »
Niin tuon jutun mukaan Go!-niminen kieli on jo entuudestaan olemassa. Eikös tässä oo vähän C ja C++ vivahteita. Jollakin tuli tuolla mainitsemassasi jutussa ehdotus, että Googlen pitäisi nimetä kielensä uudestaan Go--  ;D

Googlen koodaajat olivat ilmeisesti aloittanut kielen kehittämisen vapaa aikanaan, niinkuin Piilaaksossa on ilmeisesti yleisenä tapana. Mutta miksi ei, jos kerran muiden kielten rajoitteet hidastavat kehittämistä.

Tha-Fox

  • Käyttäjä
  • Viestejä: 3315
  • Arch Linux && CentOS
    • Profiili
    • http://kettu.dy.fi
Vs: Google Go ohjelmointikieli
« Vastaus #4 : 12.11.09 - klo:16.05 »
Googlen koodaajat olivat ilmeisesti aloittanut kielen kehittämisen vapaa aikanaan, niinkuin Piilaaksossa on ilmeisesti yleisenä tapana. Mutta miksi ei, jos kerran muiden kielten rajoitteet hidastavat kehittämistä.

Googlellahan on tuo 20% sääntö eli sen verran saa työajastaan käyttää omiin projekteihin. Fiksu veto mielestäni, edistää luovuutta.

mikko_h

  • Käyttäjä
  • Viestejä: 202
    • Profiili
Vs: Google Go ohjelmointikieli
« Vastaus #5 : 12.11.09 - klo:21.10 »
Niin tuon jutun mukaan Go!-niminen kieli on jo entuudestaan olemassa. Eikös tässä oo vähän C ja C++ vivahteita. Jollakin tuli tuolla mainitsemassasi jutussa ehdotus, että Googlen pitäisi nimetä kielensä uudestaan Go-- 

Stroustrup teki C++:n alkujaan tarkoituksella siten, että C oli sen osajoukko ja C-ohjelmia pystyi kääntämään C++-kääntäjällä (sittemmin tilanne on tainnut hieman mutkistua). Go:n tapauksessa on kyse täysin eri kielestä ja ainakin vaikuttaa siltä, että Googlen ihmiset eivät olleet tietoisia vanhemmasta Go!:sta.

Oma suosikkini ehdotetuista nimistä on 'Issue9' eli nimibugin numero trackerissa, mutta tuo taitaa olla liian nörtti suuryritykselle.