Size: a a a

2020 February 29

ВС

Владимир Столяров in Go-go!
Andrey S
мнение может есть, но только ниши разные. в Го нету инструментов например, которые ты можешь использовать для работы с памятью (ну кроме Unsafe) - т.е. все типы имеют ещё и оверхед какой-то с описанием типа
За zero cost abstractions вам немного по другому адресу
источник

p

pragus in Go-go!
👌
источник

а

а кто это in Go-go!
Владимир Столяров
За zero cost abstractions вам немного по другому адресу
звучит как очень мягкий и тонкий посыл
источник

AS

Andrey S in Go-go!
Владимир Столяров
За zero cost abstractions вам немного по другому адресу
по какому?
источник

p

pragus in Go-go!
Fᴏʀᴅᴇɴ
Пишу на голанге только узкие места, а все остальное - на питоне
И чувствую себя прекрасно👍
Можешь написать плагин на го и втащить его в питон
источник

а

а кто это in Go-go!
pragus
Можешь написать плагин на го и втащить его в питон
зачем так делать?
источник

ВС

Владимир Столяров in Go-go!
pragus
Можешь написать плагин на го и втащить его в питон
Знаем, проходили. Больше не хочу:)
источник

а

а кто это in Go-go!
звучит очень больно
источник

F

Fᴏʀᴅᴇɴ in Go-go!
pragus
Можешь написать плагин на го и втащить его в питон
Господи што
источник

AS

Andrey S in Go-go!
pragus
А что за оверхед? На что?
на reflect.Type в двух словах
источник

p

pragus in Go-go!
Andrey S
да... например при каком-то разборе чего-то очень помогает union в си... здесь к сожалению приходится иметь секс со слайсами и буфферами
Отсутствие union просто приводит к большему объему бойлерплейта :(

А вот с bitfields тяжелее
источник

p

pragus in Go-go!
Andrey S
на reflect.Type в двух словах
Можно не использовать reflect
источник

ВС

Владимир Столяров in Go-go!
Fᴏʀᴅᴇɴ
Господи што
Это действительно возможно, благодаря cgo и тому, что можно собрать go программу как so-шку, но поддерживать это и при малейшей ошибке ловить странные баги...
источник

AS

Andrey S in Go-go!
pragus
Можно не использовать reflect
ты можешь его не использовать, но он будет использовать тебя :)
источник

p

pragus in Go-go!
а кто это
зачем так делать?
В таком плагине будет весь рантайм, со всем счастьем что мы любим в го: горутины, конкурентность итп.
источник

F

Fᴏʀᴅᴇɴ in Go-go!
Владимир Столяров
Это действительно возможно, благодаря cgo и тому, что можно собрать go программу как so-шку, но поддерживать это и при малейшей ошибке ловить странные баги...
Я не хочу извращаться с этим
Мне хватает сложностей с компиляцией сишных библиотек для питона)
источник

а

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

p

pragus in Go-go!
Andrey S
ты можешь его не использовать, но он будет использовать тебя :)
Ну серьезно, для чего тебе рефлект?
источник

AS

Andrey S in Go-go!
pragus
Ну серьезно, для чего тебе рефлект?
Я про то, что var q uint32 займет не 4 байта в памяти скорее всего как в Си, а ещё какое-то место для описания самого типа этой переменной
источник

p

pragus in Go-go!
Andrey S
Я про то, что var q uint32 займет не 4 байта в памяти скорее всего как в Си, а ещё какое-то место для описания самого типа этой переменной
Нет, так же 4 байта
источник