@gogolang

Страница 1497 из 1630
Alexander
03.10.2018
08:03:42
не

Olzhas
03.10.2018
08:04:09
подписываешься на ивенты одним приложением, из другого вставляешь данные
а можно из одного приложение посылать байты в другое?

Alexander
03.10.2018
08:04:10
мы просто диалог ведём. Я не настаиваю. ПРосто говорю, что это работающая схема, хоть и костыльно выглядащая

Google
Alexander
03.10.2018
08:04:30
Alexander
03.10.2018
08:05:30
ну, для Go да, это более костыльно. Для чего-то интерпретируемого, перла того же или питона, это норм

many-faced
03.10.2018
08:33:29
чтобы инсертить кастомные типы, тип толжен реализовывать driver.Valuer и sql.Scanner
У меня pq, он инсертит pq.Array() мой []float64 в поле float[] Но как достать не понятно

Mykyta
03.10.2018
08:35:03
https://godoc.org/github.com/jackc/pgx/pgtype

many-faced
03.10.2018
08:35:23
Спасибо посмотрю

Мерлин
03.10.2018
09:04:01
https://gist.github.com/networkimprov/961c9caa2631ad3b95413f7d44a2c98a

Нави
03.10.2018
09:11:53
grpc это интересно...

Subbotin
03.10.2018
09:34:37
о. а новый goland теперь подсвечивает все строки где не обработана ошибка

Roman
03.10.2018
10:22:36
https://github.com/golang/net/blob/master/ipv4/batch.go

Google
Roman
03.10.2018
10:22:43
внезапно, в гошечке есть

Roman
03.10.2018
10:25:56
а не дорого ли постоянно использовать switch runtime.GOOS ?

Никита
03.10.2018
10:28:46
Один раз запишется и все

Полагаю что не дорого

Subbotin
03.10.2018
10:29:29
Новый — это EAP?
да. я случайно скачал

Roman
03.10.2018
10:30:56
Один раз запишется и все
да, но там в коде switch по нему.

Никита
03.10.2018
10:31:21
Нави
03.10.2018
10:33:36
А qrpc через интернет тоже работает?

Daniel
03.10.2018
10:34:06
вопрос не ясен

Илья
03.10.2018
10:34:53
да, но там в коде switch по нему.
https://github.com/golang/go/blob/873bd47dfb34ba4416d4df30180905250b91f137/src/runtime/extern.go#L236

Roman
03.10.2018
10:35:48
https://github.com/golang/go/blob/873bd47dfb34ba4416d4df30180905250b91f137/src/runtime/extern.go#L236
переформулирую: насколько дорог switch по строке? )

Mykyta
03.10.2018
10:36:20
Daniel
03.10.2018
10:36:23
Илья
03.10.2018
10:37:01
переформулирую: насколько дорог switch по строке? )
нужно смотреть в asm, думаю, что не дорог, хотя, вы правы, можно сделать 2 файла и разделить билд флагами, экономия будет

Roman
03.10.2018
10:37:20
это что за странный вопрос?
а что странного? ) смущает использование string comparsion в hot path

Илья
03.10.2018
10:37:48
видимо, батч мало кому нужен, для многих конструкций с ipv4 так и сделано

Roman
03.10.2018
10:41:41
Daniel
03.10.2018
10:43:04
а что странного? ) смущает использование string comparsion в hot path
да я не разобрался в вопросе, извини. конечно, везде, где код для разных платформ разный - надо его билд-флагами делить, а не свитчеваться в рантайме

Google
Mykyta
03.10.2018
10:44:18
Я кстати не могу найти, как рантайме реализована проверка на эквивалентность строк https://golang.org/src/runtime/string.go

Roman
03.10.2018
10:44:28
а т.к. это все танцы вокруг сисколла(который на linux в лучшем случае ~ 38ns) - этим можно пренебречь

?
03.10.2018
10:50:32
?

Georgij
03.10.2018
11:03:06
Я кстати не могу найти, как рантайме реализована проверка на эквивалентность строк https://golang.org/src/runtime/string.go
https://github.com/golang/go/blob/50bd1c4d4eb4fac8ddeb5f063c099daccfb71b26/src/internal/bytealg/compare_generic.go Судя по всему вот. И как я понял по history это fallback вариант, где не реализована задротная версия: >// +build !386,!amd64,!amd64p32,!s390x,!arm,!arm64,!ppc64,!ppc64le,!mips,!mipsle,!wasm // idk, мог и напутать, так как не оч разбираюсь

Alexander
03.10.2018
11:19:45
А в общем-то из той ссылки я хотел ~~на~~кинуть только это: > “Functional languages have a … problem with I/O”, notes Rob Pike. Actually, almost all languages have a problem with I/O. The vast majority, including many that are called “functional”, simply give up and assume side effects can happen at any time. In those that are decent enough to provide static typing, a function that claims to return an int might return an int, or it might launch some missiles and return an int.

Иначе говоря, в императивных языках нет проблем с I/O только потому что программисты их использующие не считают это проблемой.

Roman
03.10.2018
11:29:06
https://stackoverflow.com/questions/38627078/how-to-convert-bool-to-int8-in-golang

Roman
03.10.2018
11:30:22
просто в фп они так заметны из-за попыток отгородиться от реального мира

Alexander
03.10.2018
11:30:58
да везде есть проблемы с i/o
Я это просто к тому, что Роб Пайк узколобый идиот, а не мессия.

Alexander
03.10.2018
11:34:31
просто в фп они так заметны из-за попыток отгородиться от реального мира
Ну там эти проблемы решить пытаются, а не делать вид, будто их нет

Mykyta
03.10.2018
11:36:28
https://stackoverflow.com/questions/38627078/how-to-convert-bool-to-int8-in-golang
или так: func boolean2uint8(b bool) int8 { return *(*int8)(unsafe.Pointer(&b)) }

Roman
03.10.2018
11:41:49
Хорош. Правда я до сих пор считаю, что ты немного перемудрил и сделал слишком сложно.
на самом деле я упростил концепцию максимально до 5 основных правил без каких-либо исключений. Думаю легче тут уже просто некуда

Google
Sergey
03.10.2018
12:39:10
Для чего в коде штуки типо //go:nosplit

Kirill
03.10.2018
12:39:29
Sergey
03.10.2018
12:39:36
Kirill
03.10.2018
12:40:13
чтобы никто не вставил тебе stack overflow check

Daniel
03.10.2018
12:40:22
а с чем конкретно, напомни?
мне куажется - ты взял слишком широко. у нас есть ровно два кейса, когда мы хотим иммутабельности - когда передаем параметр в функцию и когда объявляем глобальную переменную

Илья
03.10.2018
12:40:22
хинт компилятору, чтобы он не делал определенные вещи

Admin
ERROR: S client not available

Kirill
03.10.2018
12:41:10
Зачем?
грубо, чтобы никто не чекал и не сплитнул тебе стек

Roman
03.10.2018
12:42:59
мне куажется - ты взял слишком широко. у нас есть ровно два кейса, когда мы хотим иммутабельности - когда передаем параметр в функцию и когда объявляем глобальную переменную
я стараюсь избегать "спец правил" мол "аргументы и глоб. переменные так, всё остальное - иначе". Иммутабельность не в символах (переменных, полях, аргументах, возвратных и т.д. и т.п.). Иммутабельность в типах. А иммут тип можно использовать где угодно как угодно, никаких спец правил.

Daniel
03.10.2018
12:43:45
я в курсе твоей позиции, и не пытаюсь спорить. просто я считаю иначе

Aleksandr
03.10.2018
12:44:24
я честно говоря не хочу влезать глубоко, но вкратце, что не так с const myVar = 5; из js? Почему в пропозале все сложнее?

Roman
03.10.2018
12:45:45
я честно говоря не хочу влезать глубоко, но вкратце, что не так с const myVar = 5; из js? Почему в пропозале все сложнее?
в JS иммутабельности нет... можно определить объект в const переменную и мутировать объект ? это какая-то анти-защита. в моём пропосале, как я уже подметил, иммутабельны не символы, а типы.

Aleksandr
03.10.2018
12:46:23
const a = {} a.b = 1
проверил - валидно. почему?

Roman
03.10.2018
12:46:36
http://facebook.github.io/immutable-js/docs/ ?
yeah yeah... "it's safe, but you'll have to copy everything and it's slow, don't use it"

Kirill
03.10.2018
12:47:02
проверил - валидно. почему?
потому что константа на уровне корневого объекта, а его поля — уже другой разговор

Google
Kirill
03.10.2018
12:47:26
ага, понял
ты не сможешь после этого сделать a = {}, но поля изменять — сколько угодно

Roman
03.10.2018
12:51:11
ты не сможешь после этого сделать a = {}, но поля изменять — сколько угодно
можно ещё скопировать const a в не-const let b и мутировать const a, JS просто прелесть))

Mykyta
03.10.2018
12:51:49
проверил - валидно. почему?
Потому-что const a - это константная ссылка на объект, а не сам объект

Roman
03.10.2018
12:52:25
дык мутировать const a ты и так можешь
это понятно) я просто pointer aliasing

mutable aliased pointer = fun @ debugging!

Roman
03.10.2018
12:55:06
https://play.golang.org/p/Z7TUPvauTML

чуть наркомании про bool

Mykyta
03.10.2018
13:01:24
https://play.golang.org/p/Z7TUPvauTML
а почему кстати так? Похоже будто для була важен только самый первый бит

Илья
03.10.2018
13:03:43
так и есть

Mykyta
03.10.2018
13:03:59
походу булу важен только самый младший бит и занимает бул всего 8 бит, потому тут он затирает мадшие 8 бит и меняет только самый первый

не кидайте в меня камнями, я никогда на си не писал и биты никакие не сношал, потому это для меня открытие)

Илья
03.10.2018
13:05:48
да там маску применяют и все

Zver
03.10.2018
13:36:13
да там маску применяют и все
Да там и маска не нужна. Просто проверяется на равность нулю.

Artem
03.10.2018
15:30:44
Есть странный вопрос, есть алгоритм а* на го, но как его правильно юзать если координаты дробные, да и препятствия могут занимать чуть ли не рандомную площадь ?

Страница 1497 из 1630