Język od Google? Możliwości?

0

A teraz inna ciekawostka - nie ma try i catch jest za to panic i recover

func (d *decoder) Read(b []byte) (int, error) {
	for {
		if len(d.toRead) > 0 {
			n := copy(b, d.toRead)
			d.toRead = d.toRead[n:]
			return n, nil
		}
		if d.err != nil {
			return 0, d.err
		}
		d.decode()
	}
	**panic**("unreachable")
}
0

Język umożliwia użycie funkcji anonimowych(lambda):

 
func(a, b int, z float64) bool { return a*b < int(z) }

A co za tym idzie coś takiego jest dopuszczalne:

 
package main
import “fmt”

func main() {
	var f = Adder()
	fmt.Print(f(1),"-" )
	fmt.Print(f(20),"-")
	fmt.Print(f(300))
}

func Adder() func(int) int {
	var x int
	return func(delta int) int {
		x += delta
		return x
	}
}
0

Ja tam wolę sprawdzone rozwiązania typu Java niż jakieś Go. JavaScript też się tak swoją drogą często przydaje. Tak często go używam że nawet nie mam świadomości że właśnie operuję tym językiem. Kiedyś myślałem że piszę coś w Javie a tu się okazało, że coś kombinowałem z Node.js ponieważ widziałem komendę javac zamiast node.

1 użytkowników online, w tym zalogowanych: 0, gości: 1