mboost-dp1

Google Inc.

Google laver nyt programmeringssprog

- Via Ars Technica - , indsendt af Jonasee

Endnu et projekt, der startede som et 20 %-projekt, ser nu dagens lys som en del af Google portefølje. Denne gang drejer det sig om et nyt programmeringssprog, der har været under udvikling de seneste to år.

Der er tale om et programmeringssprog, som tager udgangspunkt i C, og derfor ikke er noget revolutionerende nyt. Sproget hedder Go, og formålet er at lave et sprog, der har hastigheden fra C, men stadig er simpelt og nemt at benytte.

Go bliver frigivet som open source under BSD-licensen, hvilket Google håber på, vil få flere til at prøve programmeringssproget og dermed modne det hurtigere.

Ifølge Google er Go endnu ikke modent nok til at blive anvendt i produktionsmiljøer. Det eneste sted, de selv anvender software lavet med Go, er webserveren, hvor Go hører hjemme. Her kan du læse meget mere og programmeringssproget, ligesom du kan hente selve softwaren.





Gå til bund
Gravatar #1 - Al Bundy
11. nov. 2009 12:26
Er der nu også brug for det?
Gravatar #2 - incinerator
11. nov. 2009 12:33
Hmm, så har de to programmeringssprog. Konkurrence er godt, måske endda intern konkurrence.
Gravatar #3 - Windcape
11. nov. 2009 12:35
Et C lign. sprog med concurrency og garbage collection. Tjah.
Gravatar #4 - vooze
11. nov. 2009 12:35
Et eller andet sted er man jo nød til at give nye sprog en chance. Dem som vi "alle" benytter i dag, var jo også nye engang :)
Gravatar #5 - mgX
11. nov. 2009 12:39
Æhh... er skidtet overhovedet OO??
Gravatar #6 - f-style
11. nov. 2009 12:47
Det er jo kun godt med nye programmerings sprog, især når de bliver open source. Derved bliver det også nemt at bruge i andre OS hvilket bestemt er et plus.

Jeg mener det er vigtigt at have nogle programmeringssprog som er nemme at porte til f.eks. linux, BSD, windows ect. I stedet for at være låst til et enkelt system.
Gravatar #7 - cryo
11. nov. 2009 12:57
#5 nu er OO ikke det eneste brugbare sprogparadigme i verden... jeg har kun lige skimmet deres side, så jeg ved ikke om det er :).
Gravatar #8 - Windcape
11. nov. 2009 12:58
mgX (5) skrev:
Æhh... er skidtet overhovedet OO??
Nej.
Gravatar #9 - Windcape
11. nov. 2009 13:02
f-style (6) skrev:
Jeg mener det er vigtigt at have nogle programmeringssprog som er nemme at porte til f.eks. linux, BSD, windows ect. I stedet for at være låst til et enkelt system.
Jeg kan ikke komme i tanke om andre sprog end Visual Basic, der stadig er platform låst.

Problemet ligger ikke i at lave en Open Source compiler, eller frigive et sprog som en ISO standard.

Problemet er i at alle standard APIs så man ikke skal genopfinde hjulet hver gang man skriver et program, typisk ikke bliver udgivet som Open Source (Delphi, .NET for at nævne nogle moderne, der er mange andre).
Gravatar #10 - AlienDarkmind
11. nov. 2009 13:04
Nok et dumt spørgsmål efter som at jeg kun har prøvet ultra lidt programmering.. Men hvad for en kompiler bruger man så til det her?
Gravatar #11 - b4@
11. nov. 2009 13:07
Meget spændende. men jeg ser ikke sproget som nogen revolution. I mine øjne bringer det intet som ikke er set før.

#10 der er tre: 6g (til 64bit), 8g (til x86) og gccgo som er best.
Gravatar #12 - ulrikn
11. nov. 2009 13:23
LÆKKER LÆKKER hjemmeside :)

Spøg til side - kan nu heller ikke se meningen med det. Det bringer jo ikke umiddelbart noget nyt/revolutionerende/anderledes til verden.
Gravatar #13 - em1L
11. nov. 2009 13:33
Er jeg den eneste der undrer mig over at deres logo er en bæver der har lagt 2 streger coke op?
Gravatar #14 - Scapegoat
11. nov. 2009 13:35
#13 Nu er det jo Google som står bag, så jeg vil ikke sige jeg undrer mig :P
Gravatar #15 - squad2nd
11. nov. 2009 13:44
#8

Æhh... er skidtet overhovedet OO?? mgX (#5)

Nej.



http://golang.org/doc/go_faq.html#Is_Go_an_object-...

Is Go an object-oriented language?

Yes and no. Although Go has types and methods and allows an object-oriented style of programming, there is no type hierarchy. The concept of “interface” in Go provides a different approach that we believe is easy to use and in some ways more general. There are also ways to embed types in other types to provide something analogous—but not identical—to subclassing. Moreover, methods in Go are more general than in C++ or Java: they can be defined for any sort of data, not just structs.

Also, the lack of type hierarchy makes “objects” in Go feel much more lightweight than in languages such as C++ or Java.
Gravatar #16 - Windcape
11. nov. 2009 13:54
squad2nd (15) skrev:
Moreover, methods in Go are more general than in C++ or Java: they can be defined for any sort of data, not just structs.
Hmm, lyder meget som Monads.

Jeg synes stadigvæk at kalde det for et OO sprog er på grænsen. Det er vel ligesom at kalde Javascript for OO.

Jeg synes sproget i dets udformning er mere proceduralt end det er objekt-orienteret.
Gravatar #17 - Windcape
11. nov. 2009 13:55
Jeg kan godt lide denne her

Why not just write some libraries for C++ to do communication?

We considered doing that, but too many of the problems—lack of garbage collection, long dependency chains, nested include files, lack of concurrency awareness—are rooted in the design of the C and C++ languages themselves. We felt a viable solution required a more complete approach.
Gravatar #18 - patricius
11. nov. 2009 14:46
For mulige definitioner på hvad der gør et sprog objektorienteret, se her:

http://www.paulgraham.com/reesoo.html
Gravatar #19 - knasknaz
11. nov. 2009 15:40
Snart har hver udvikler sit eget personlige programmeringssprog.
Det er nærmest en slags omvendt babelstårn. :)
Gravatar #20 - Windcape
11. nov. 2009 16:02
knasknaz (19) skrev:
Snart har hver udvikler sit eget personlige programmeringssprog.
Det er nærmest en slags omvendt babelstårn. :)
Tjah, det er en rimelig standard opgave på Datalogi :)
Gravatar #21 - jAST
11. nov. 2009 17:19
Jeg elsker det faktum at de ser deres "nye" type system som en feature :D

It's like C would look, if it's mother was Visual Basic.
Gravatar #22 - photonatic
11. nov. 2009 22:10
Det ser ikke ud til at en stump Go-kode kører på toppen af en virtuel maskine. Hvordan er garbage collection så indført? Smider compileren automatisk garbage collection-algoritmerne ind i ens kode i compile-time?
Gravatar #23 - Whoever
12. nov. 2009 08:48
"It's what C would look, if it's mother was Visual Basic"
Se, alene det er nok til at skræmme mig væk.
Desuden, garbage collection vil altid gøre et sprog langsommere.
Og følger Google ikke med i C++ udviklingen? Concurrency er jo netop supporteret i den nye version, når de ellers får den godkendt. Dvs. at indenfor 2-3 år så vil både VC++ og gcc (de kommer nok først) have deres compilere opdateret.
Faktisk havde Hans Boehm (mener det er det han hedder) lavet et udkast til partiel gc. Men det kommer ikke med i denne omgang af C++.
Gravatar #24 - patricius
12. nov. 2009 11:41
#22: Garbage collection can godt linkes til din kode som et bibliotek, der indeholder nogle bestemte rutiner du skal bruge i stedet for de normale. Fx skal man med Hans Boehms garbage collector til C bruge GC_MALLOC-rutinen i stedet for malloc for at allokere garbage collected hukommelse.

Se her: http://www.hpl.hp.com/personal/Hans_Boehm/gc/
Gravatar #25 - sysadm
12. nov. 2009 13:06
Navnet Go ser allerede ud til at være taget før google:

http://code.google.com/p/go/issues/detail?id=9&...
Gravatar #26 - photonatic
12. nov. 2009 15:08
#24: Ah, på den måde, tak for linket. :-)
Gravatar #27 - arne_v
12. nov. 2009 17:33
Windcape (9) skrev:
Jeg kan ikke komme i tanke om andre sprog end Visual Basic, der stadig er platform låst.


De fleste sprog findes til flere platforme.

Det gælder også BASIC.

Men fordi sprog X findes til både platform A og B betyder det ikke nødvendigvis at et program skrevet i X på A er nemt at portere til B.

Det afhænger af hvor mange extensions de forskellige leverandører har tilføjet.

Og som du selv skriver:

Windcape (9) skrev:
Problemet er i at alle standard APIs så man ikke skal genopfinde hjulet hver gang man skriver et program,


Det ville ikke være noget problem at lave VB6 kompatibel compiler til Linux. Men det vil være et problem at genopfinde COM til Linux og implementere alle de COM objekter som eksisterende VB6 programmer bruger.
Gravatar #28 - Windcape
12. nov. 2009 17:35
arne_v (27) skrev:
Det ville ikke være noget problem at lave VB6 kompatibel compiler til Linux
Jeg skulle da ellers mene at VB6 er låst på alle leder og kanter.

Der er f.eks. ikke VBA support i Microsoft Office til OSX (Mac).
Gravatar #29 - arne_v
12. nov. 2009 17:49
#28

(for at holde det simpelt siger vi at VB6=VBA=VBS)

Det er næppe selve sprogets skyld. Syntaxen ville ikke være svær at implementere.

Eller jeg skulle måske sige "syntaxen var næppe svær at implementere".

OOoBasic bruger grundliggende samme syntax som VBA.

Problemet er API'erne.

Gravatar #30 - arne_v
12. nov. 2009 21:27
#24

Der er et par links på den side som fortæller lidt om hvordan.

http://www.iecc.com/gclist/GC-faq.html#GC,%20C,%20...

http://www.hpl.hp.com/personal/Hans_Boehm/spe_gc_p... sektionen "‘‘Conservative’’ Garbage Collectors".

Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login