vak: (Бодхидхарма)
[personal profile] vak
Не нужен нам берег язык турецкий. Давайте программировать на финском, из уважения к Линусу. Прикинем, как бы оно смотрелось. В примерах слева традиционный Golang, справа - Suomi-Go.

Пример Hello World.
package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}
paketti pää

tuonti "muotoilu"

funktio pää() {
    muotoilu.Tulostarivi("Hei, maailma!")
}
Переменные и условные операторы.
var x int = 5
const pi float64 = 3.14

if x > 0 {
    println("Positive")
} else {
    println("Negative")
}
muuttuja x kokonaisluku = 5
vakio pi liukuluku = 3.14

jos x > 0 {
    tulostarivi("Positiivinen")
} muuten {
    tulostarivi("Negatiivinen")
}
Циклы и диапазоны.
for i := 0; i < 5; i++ {
    println(i)
}

nums := []int{1, 2, 3}
for _, num := range nums {
    println(num)
}
silmukka i := 0; i < 5; i++ {
    tulostarivi(i)
}

luvut := []kokonaisluku{1, 2, 3}
silmukka _, luku := alue luvut {
    tulostarivi(luku)
}
Структуры и функции.
type Person struct {
    Name string
    Age int
}

func calculateAge(p Person) int {
    return p.Age
}
tyyppi Henkilo rakenne {
    Nimi merkkijono
    Ika kokonaisluku
}

funktio laskeIka(h Henkilo) kokonaisluku {
    palauta h.Ika
}
Оператор выбора.
switch day {
case "Monday":
    println("Start of the week")
default:
    println("Other day")
}
vaihda päivä {
tapaus "maanantai":
    tulostarivi("Alkuviikko")
oletus:
    tulostarivi("Muu päivä")
}
Горутины и каналы.
ch := make(chan int)
go func() {
    ch <- 42
}()
val := <-ch
k := tee(kanava kokonaisluku)
mene funktio() {
    k <- 42
}()
arvo := <-k

Мне особенно понравилась "kanava kokonaisluku" - chan int по нашему.

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org