Go 1 RC1

Címkék

A Google Sydney-i kirendeltségén dolgozó Andrew Gerrand nemrég bejelentette a nyílt forrású Go programozási nyelv "weekly.2012-03-13"-as kiadását, ami a Go 1 első kiadásra jelölt verziója is egyben. A szerszám elérhető Windows, Mac OS X, Linux és FreeBSD platformokra 32 bites és 64 bites verziókban. Forráskódja elérhető BSD-stílusú licenc alatt. A telepítéséhez részletes leírás található itt.

Hozzászólások

Ezt is megéltük. yayy

--------------------------------------
Unix isn't dead. It just smells funny.

Mert ez a biztositeka, hogy pl. beagyazott kornyezetben is mukodjek.

Pl. kepfeldolgozas eseten PC-en sem lehet meguszni. Nem a malloc() free() part siratom, hanem azt a lehetoseget, hogy a memoriat konnyen, gyorsan el tudjam erni. Pl. neha C++-ban a vector [] operatora lassu a C-es tomb [] operator vagy (ptr + i) jllegu konstrukciokhoz kepest. Ehhez kepest a Go csak lassabb lehet.

Kivételkezeléshez hasonlító szerkezet került bele az első megjelenés óta (panic, defer, recover), de jellemzően nem használatos mint a hibák közlésének szokásos módja, hanem általában visszatérési értékkel jelzik a standard package-beli függvények az eredményt.

Öröklődés (inheritance) nincs, helyette beágyazás (embedding) van. Ez annyiban különbözik csak, hogy az ősosztály metódusait nem lehet felüldefiniálni, csak elfedni. Góban a virtuális függvény az interfészek kiváltsága.

Ez olyan, mintha a "megjelent az új diesel motor" cikkben azt kérdeznéd, hogy "és azóta sincs benne gyertya?"
Akinek egy olyan nyelv kéne, mint a c++, annak ott a c++.
Amúgy meg már az eleje óta van benne öröklődés, csak nem úgy, ahogy azt te gondolod.
Ami azt illeti már a plan9 C-ben is volt. Ugyanazt a rendszert mentették át ide is.

--------------------------------------
Unix isn't dead. It just smells funny.

Hol nincs? Akkor valamit rosszul csinálok, mert ez működik:

package main

import "fmt"

type élőlény struct{
	név string
}

type kutya struct{
	élőlény
}

func main() {
	blöki := new(kutya)
	blöki.név = "Blöki"
	fmt.Println(blöki.név)
}

Itt ki lehet próbálni: http://golang.org/doc/playground.html

--------------------------------------
Unix isn't dead. It just smells funny.

A Kernighan interjút/cikket(?) évvekkel ezelőtt olvastam, fel kéne érte túrni a netet.

Az öröklődésről ezt lehet olvasni: Go does not have classes with constructors or destructors. Instead of class methods, a class inheritance hierarchy, and virtual functions, Go provides interfaces...

Meg ezt: Why is there no type inheritance?

A kivételekről lehet olvasni ezt: We believe that coupling exceptions to a control structure, as in the try-catch-finally idiom, results in convoluted code...

Aki Go-val foglalkozik úgyis jobban ismeri ezeket, mint én, akit nem érdekel a Go. Mindenesetre nekem az a véleményem, hogy az öröklődés is és a kivételkezelés is hasznos.

--
ulysses.co.hu

Megjegyzés: Amennyire emlékszem, Kernighan ugyanezeket mondta, mint ami a FAQ-ban van, ami nem véletlen, hiszen az egészet ő találta ki.

Nem vagyok programozó, de ez tetszik, már csak a licenc miatt is.

A valódi android, a régiek igazi androidja olyan titok volt, ami minden tekintet előtt elrejteztetett. (ALC)

En probaltam benne par kisebb programot irni, nagyon halados kis nyelv.