
Мерлин
26.10.2016
08:52:55
https://github.com/LK4D4/trylock
Короче, мне не нравится то, что там есть unsafe и то, что там нет таймаутов
Поэтому вотъ вам мой велосипед
https://github.com/ninedraft/gotrylock

Alexey
26.10.2016
09:01:00
Минус в том, что тут создаётся горутина. Если горутина ок, то можно и самому сделать через select. Обычно TryLock нужен когда у тебя общие данные, к которым нужен быстрый доступ

Мерлин
26.10.2016
09:03:15
В принципе, можно извратиться и сделать с таймаутом, но без горутины
Но без unsafe тогда не обойтись

Google

Daniel
26.10.2016
09:05:56
а почему надо без unsafe?

Мерлин
26.10.2016
09:08:24

Daniel
26.10.2016
09:13:00
вот-вот

Мерлин
26.10.2016
11:44:17
В общем, как всегда надо смотреть по обстоятельствам
Сегодняшняя рассылка GNL просто огонь
Много разных вкусностей
http://golangweekly.com/issues/133

Zver
27.10.2016
15:56:32
Насколько понял это только еще измышления.

Мерлин
27.10.2016
16:55:34
Go 2.0?
Конечно
Но я про библиотеки и примеры кода

Zver
27.10.2016
16:56:51
Где примеры кода?
И где библиотеки?

Мерлин
27.10.2016
16:58:25

Google

Zver
27.10.2016
16:59:11
Пошел еще раз смотреть, хм.

Мерлин
27.10.2016
17:13:08
????
https://www.oreilly.com/ideas/data-science-gophers?utm_source=golangweekly&utm_medium=email
Прекрасное

Anton
28.10.2016
06:26:22

Mars
28.10.2016
06:41:45

Slava
28.10.2016
06:56:05
Питон отлично справляется, зачем туда го тянуть ещё?
Он же неудобен

Daniel
28.10.2016
07:06:33
а?!

Anton
28.10.2016
07:14:35
1. Difficulties building “production-ready” applications or services
2. Applications or services that don’t behave as expected
3. An inability to integrate data science development into an engineering organization

Alexey
28.10.2016
07:16:12
Сразу видно, кто не пришёл в прошлый подкаст ;)

Mars
28.10.2016
07:16:36
Ой, пойду послушать
А что там, решили что go неудобен, расходимся? )

Anton
28.10.2016
07:17:11
и ссыль, пожалуйста

Mars
28.10.2016
07:17:37
http://golangshow.com/episode/2016/10-21-079/

Alexey
28.10.2016
07:18:09
Не, он в 80-ом, его ещё не выложили
Я @m0sth8'а имел ввиду, если что

Alexey
28.10.2016
09:05:47
FYI. Trying to compare Go web frameworks and routers by looking at theirs public APIs. PRs are welcome.
diyan/go-web-framework-comparsion: Golang Web Framework Comparsion - https://github.com/diyan/go-web-framework-comparsion

Мерлин
28.10.2016
09:08:10
Он же неудобен
Кстати согласен, как бы не ругали перегрузку операторов, например, писать что то типа
A.Mul(B.Add(C.Norm()))
вместо
A*(B + Norm[C]))
как-то не очень
И ещё много всяих нюансов

Google

vktr
28.10.2016
09:10:02

Mars
28.10.2016
09:22:21

Slava
28.10.2016
09:22:37

Anton
28.10.2016
09:40:01
В смысле, что никаких таких проблем нет? Ну ок)

Slava
28.10.2016
09:40:36
А есть разве? Корректность можно доказывать через mypy
Интеграция инженерного и научного кода, тоже не ясно в чём проблемы

Anton
28.10.2016
09:44:25
одна из проблем в том, что прототип научного работника приходится переписывать на язык продакшена
в случае заполнения же бреши (Julia ли, Go, не важно), код тоже приходится причёсывать, но не переписывать

Slava
28.10.2016
09:44:58
Погоди, а почему переписывать?
Вообще питон в продакшене популярнее в разы го, и уж тем более джулии

Anton
28.10.2016
09:51:22
Питон для заполнения этой "бреши" хуже подходит — где-то в продакшене не захотят питон, и не каждый "саентист" захочет его использовать без удобного matlab-подобного синтаксиса (прежде всего, для работы с матрицами).

Михаил
28.10.2016
09:51:58
ну если уж заполнять, то haskell может?
там можно столько классных операторов сделать)
и научен насквозь
не понимаю я этого языкового фашизма. Если питон, то только святой питон, ничего кроме питона, и пофиг на всё. И тут тоже самое )

Anton
28.10.2016
09:56:26
ну если уж заполнять, то haskell может?
вот-вот, я как раз о том, что всё по ситуации
я не сверх-апологет Julia, если что)
Прототипирую сам на питоне (и даже контрибьютил немного)
Но DS-прототип напишу именно на Julia, как и много других чуваков, пересевших с матлаба. И не буду запариваться ни с mypy, ни с pypy

Slava
28.10.2016
10:03:02
А что будете делать, когда джулия усрет?
Умрёт*
питон и р то всегда с нами

Anton
28.10.2016
10:03:42
Всюду не подстрахуешься)

Google

Slava
28.10.2016
10:05:11
Ну ладно, это оффтоп :) но го для дата саенса явно не лучший вариант

Anton
28.10.2016
10:05:16
А вообще, и канал, и разговор не о Джулии, а о Го. Тезис был такой, что Го на претендуемое Джулией место подходит ещё хуже, и все с этим согласились

Михаил
28.10.2016
10:06:14
а больше обсудить то и нечего – го слишком прост )

Dmitry
28.10.2016
13:35:01
привет всем! кто-нибудь говырялся с gorm по поводу возврата кода ошибок PostgreSQL?

Peter
28.10.2016
14:22:04
никто не встречал такую ошибку?
dyld: Cannot execute binary file: This executable is not position independent and your vm.mmap_min_addr is too low to load it. As low as 4096 is needed.
Darwin localhost 12.0.0 Darwin Kernel Version 12.0.0 x86_64
собираю на линуксе, на маке запускаю

Мерлин
28.10.2016
14:24:50

Peter
28.10.2016
14:25:03
без параметров
GOOS=darwin go build

Мерлин
28.10.2016
14:25:23

Peter
28.10.2016
14:25:35
и там и там x86_64
в смысле amd64

Belskikh
29.10.2016
09:58:40
"""
""""
func handleRequest(w dns.ResponseWriter, r *dns.Msg) {
m := new(dns.Msg)
m.SetReply(r)
// if r.IsTsig() != nil {
// if w.TsigStatus() == nil {
// // *Msg r has an TSIG record and it was validated
// m.SetTsig("axfr.", dns.HmacMD5, 300, time.Now().Unix())
// } else {
// // *Msg r has an TSIG records and it was not valided
// }
// }
w.WriteMsg(m)
}
""""
черт, сори

Kirill
29.10.2016
09:59:35
@S3x3r не " а `

Belskikh
29.10.2016
09:59:36
'''
func handleRequest(w dns.ResponseWriter, r *dns.Msg) {
m := new(dns.Msg)
m.SetReply(r)
w.WriteMsg(m)
}
'''
func handleRequest(w dns.ResponseWriter, r *dns.Msg) {
m := new(dns.Msg)
m.SetReply(r)
w.WriteMsg(m)
}

Google

Belskikh
29.10.2016
10:00:04
во )

Kirill
29.10.2016
10:00:05
тада

Belskikh
29.10.2016
10:00:15
syntax error: unexpected handleRequest, expecting (
что я делаю не так?

Zver
29.10.2016
10:01:49
а что снаружи?

Belskikh
29.10.2016
10:02:22
server := &dns.Server{Addr: ":53", Net: "upd"}
go server.ListenAndServe()
func handleRequest(w dns.ResponseWriter, r *dns.Msg) {
m := new(dns.Msg)
m.SetReply(r)
w.WriteMsg(m)
}
dns.HandleFunc(".", handleRequest)

Zver
29.10.2016
10:02:23
Это не вложенная функция?

Belskikh
29.10.2016
10:02:31
нет
это из примера отсюда https://godoc.org/github.com/miekg/dns#hdr-TRANSACTION_SIGNATURE

Daniel
29.10.2016
10:03:20
Playground?

Belskikh
29.10.2016
10:03:25
у меня ругается go vet
Я что-то вчера краем глаза видел, что его уже нельзя юзать
нет, в SublimeText 3

Daniel
29.10.2016
10:03:48
А надо в плейграунд

Belskikh
29.10.2016
10:04:07
почему?

Zver
29.10.2016
10:04:44
Не понятно в каком контексте.

Daniel
29.10.2016
10:05:04
Чтобы можно было на такие вопросы отвечать

Belskikh
29.10.2016
10:05:20
вы меня за глупые вопросы простите, я в Го новичок совсем