Size: a a a

2021 June 10

с

сонная википедия... in Go-go!
> Например, есть базовый тип Bar. Bar1, Bar2 - его расширения, то есть если func foo(b Bar), то она схавает и Bar1, и Bar2.

не схавает
источник

VY

Vladislav Yarmak in Go-go!
если вам нужна абстракция над типами, то и функция должна и принимать и возвращать интерфейс
источник

A

Artur in Go-go!
Но в питоне то из нет, а вы их в один ряд поставили
источник

VY

Vladislav Yarmak in Go-go!
в питоне объекты по ссылке передаются, и в жс тоже
источник

AS

Andrey Shuster in Go-go!
я разработчиков в один ряд поставил, а не языки. 🙂
кроме того в питоне тоже есть ссылки такие же неявные
источник

RL

Ragnar Lodbrok in Go-go!
Если вы имеете в виду, что есть BarInterface и его реализации Bar1 и Bar2
То их схавает функция func foo(b BarInterface).
Аналогично, вы можете написать функцию func foo()(BarInterface,error)
которая вернет данный интерфейс и который потом можно привести к конкретному типу.

Но в го не принято из функций возвращать интерфейсы
Есть такое правило "accept interfaces, return structs"
источник

VY

Vladislav Yarmak in Go-go!
при этом большинство функций возвращает интерфейс Error, ага
источник

с

сонная википедия... in Go-go!
> Но в го не принято из функций возвращать интерфейсы
это кто такое сказал?
источник

с

сонная википедия... in Go-go!
эти слова, да авторам гошной крипты в уши
источник

ВС

Владимир Столяров... in Go-go!
да не только, GetBody например)
источник

A

Artur in Go-go!
a = 5
a += 1
Полученный а это новый объект или тот же?
источник

с

сонная википедия... in Go-go!
в случае гошной крипты больно по производительности, оно все утекает и аллоцирует, хоть можно все делать на стеке
источник

A

Artur in Go-go!
Значение меняется по ссылке или создаётся новый объект?
источник

VY

Vladislav Yarmak in Go-go!
в питоне - новый
источник

ВС

Владимир Столяров... in Go-go!
кстати такая же фигня и в xml, я вот ради интереса попробовал переделать на "как бы tagged union" (структурой) и все стало заметно бодрее
источник

с

сонная википедия... in Go-go!
а к чему этот вопрос в Go чате?
источник

A

Artur in Go-go!
Ну почитайте тред
источник

A

Artur in Go-go!
Тогда где неявные ссылки?
источник

VY

Vladislav Yarmak in Go-go!
a и есть ссылка
источник

с

сонная википедия... in Go-go!
def a(l):
    l.append(10)

mylist = []
a(mylist)
источник