Home
golang
golang@conference.jabber.ru
Вторник, 26 января 2016< ^ >
Deirz установил(а) тему: Go Programming Language.
|| Изучаем: https://gobyexample.com/
|| Тур: http://tour.golang.org/
|| Как писать код: http://golang.org/doc/code.html
|| Как писать эффективный код: http://golang.org/doc/effective_go.html
|| FAQ: http://golang.org/doc/faq
|| 99% ответов о языке Go тут: http://golang.org/ref/spec
|| Сторонние либы: http://godoc.org/ https://github.com/avelino/awesome-go
|| Логи: http://chatlogs.jabber.ru/golang@conference.jabber.ru/
|| This chatroom does not adhere to any codes of conduct, be they implied or explicitly stated by someone. Your feelings can and WILL be hurt without a warning.
Конфигурация комнаты
Участники комнаты

GMT+3
[00:00:52] avz вышел(а) из комнаты
[00:05:52] kpmý вышел(а) из комнаты: Replaced by new connection
[00:05:52] kpmý вошёл(а) в комнату
[00:07:42] kpmý вышел(а) из комнаты
[00:12:10] <postman> а есть вообще результаты?
[00:14:35] <Deirz> http://github.com/gophergala2016
[00:15:55] <postman> ну че там, трансниггер какой-нибудь победил?
[00:16:58] <postman> бля, слишком дохуя результатов, но с первой страницы по описанию мне папирус понравился.
[00:44:08] Deirz вышел(а) из комнаты
[00:46:29] <mantyr@qip.ru> Что за конкурс?
[01:24:39] Deirz вошёл(а) в комнату
[01:49:12] plumbum вышел(а) из комнаты
[03:02:02] begemot_sun вышел(а) из комнаты
[03:06:38] Deirz вышел(а) из комнаты
[05:08:34] 5UN5H1N3 вошёл(а) в комнату
[06:11:18] postman вышел(а) из комнаты
[06:31:03] mantyr@qip.ru вышел(а) из комнаты
[07:49:16] Deirz вошёл(а) в комнату
[08:20:05] plumbum вошёл(а) в комнату
[08:20:50] plumbum вышел(а) из комнаты
[08:21:37] plumbum вошёл(а) в комнату
[08:44:36] plumbum вышел(а) из комнаты
[09:05:29] Kittycat вошёл(а) в комнату
[09:12:12] begemot_sun вошёл(а) в комнату
[09:24:06] Kittycat вышел(а) из комнаты
[09:39:18] avz вошёл(а) в комнату
[09:42:17] plumbum вошёл(а) в комнату
[09:50:26] ermine вошёл(а) в комнату
[10:22:23] avz вышел(а) из комнаты
[10:31:54] 5UN5H1N3 вышел(а) из комнаты: Replaced by new connection
[10:31:56] 5UN5H1N3 вошёл(а) в комнату
[10:33:31] Kittycat вошёл(а) в комнату
[10:34:13] ascrazy@jabber.ru вошёл(а) в комнату
[10:40:33] ascrazy@jabber.ru вышел(а) из комнаты: Replaced by new connection
[10:40:34] ascrazy@jabber.ru вошёл(а) в комнату
[10:51:55] kpmý вошёл(а) в комнату
[11:15:05] ascrazy@jabber.ru вышел(а) из комнаты: Replaced by new connection
[11:15:06] ascrazy@jabber.ru вошёл(а) в комнату
[11:18:20] ascrazy@jabber.ru вышел(а) из комнаты: Replaced by new connection
[11:18:21] ascrazy@jabber.ru вошёл(а) в комнату
[11:23:23] kms_ вошёл(а) в комнату
[11:40:08] magiq вошёл(а) в комнату
[11:47:44] plumbum вошёл(а) в комнату
[11:51:49] ascrazy@jabber.ru вышел(а) из комнаты
[11:54:49] Laz вошёл(а) в комнату
[11:55:45] hdhog вошёл(а) в комнату
[11:59:47] Deirz вошёл(а) в комнату
[12:08:11] plumbum вышел(а) из комнаты
[12:16:43] <Deirz> это не конкурс, это хакатон
[12:20:46] mantyr@qip.ru вошёл(а) в комнату
[12:38:27] magiq вышел(а) из комнаты
[13:23:48] magiq вошёл(а) в комнату
[13:37:33] magiq вышел(а) из комнаты
[13:37:50] magiq вошёл(а) в комнату
[13:40:09] magiq вышел(а) из комнаты
[13:41:48] mantyr@qip.ru вышел(а) из комнаты
[13:45:11] <kpmý> пщ
[13:45:12] <xep> пщ!
[13:48:18] magiq вошёл(а) в комнату
[13:49:37] 5UN5H1N3 вышел(а) из комнаты
[13:52:05] magiq вышел(а) из комнаты
[13:55:28] Laz вышел(а) из комнаты
[14:01:31] krab вошёл(а) в комнату
[14:07:56] Kittycat вошёл(а) в комнату
[14:09:39] <kms_> пщ
[14:09:40] <xep> пщ!
[14:22:48] Kittycat вышел(а) из комнаты
[14:27:54] mantyr@qip.ru вошёл(а) в комнату
[14:44:03] ascrazy@jabber.ru вошёл(а) в комнату
[14:44:31] <ascrazy@jabber.ru> а кто увавствовал
[14:44:33] <ascrazy@jabber.ru> ?
[14:45:48] <Deirz> я участвовал
[14:53:48] <ascrazy@jabber.ru> и как, выиграл?
[15:01:21] <Deirz> ну так
[15:01:22] <Deirz> нет
[15:01:36] <Deirz> приз не выиграю наверно
[15:01:40] <Deirz> но прототип сделал
[15:07:03] magiq вошёл(а) в комнату
[15:08:01] <ascrazy@jabber.ru> что за прототип?
[15:23:36] Deirz вышел(а) из комнаты
[15:23:42] Deirz вошёл(а) в комнату
[15:24:25] magiq вышел(а) из комнаты
[15:29:19] magiq вошёл(а) в комнату
[15:37:14] postman вошёл(а) в комнату
[15:47:24] postman вышел(а) из комнаты
[15:51:01] <kpmý> вот этот https://github.com/mechmind/sproc-go
[15:51:06] krab вышел(а) из комнаты
[15:53:03] <ascrazy@jabber.ru> kpmý: што это за хуйня?
[15:55:20] <kpmý> ну вообще конечно Deirz лучше расскажет. Это его язычок для обработки текстов
[15:55:42] <kpmý> цомпилятор и интерпетатор
[15:57:41] <Deirz> парсер и интерпретатор
[15:59:05] <Deirz> ascrazy@jabber.ru, в 21 веке нельзя нормально разрезать поток ввода на два и обработать их одновременно и независимо
[15:59:22] <kpmý> как это на два?
[15:59:31] <Deirz> ну тип
[15:59:33] <kpmý> чётный символ - нечётный символ? :)
[15:59:34] <Deirz> вот есть у тебя греп
[15:59:42] <Deirz> который либо матчит строчку
[15:59:44] <Deirz> либо не матчит
[15:59:56] <ascrazy@jabber.ru> а на три можно?
[16:00:29] <Deirz> вот сделать хочется так, чтобы сматченные строки пошли в один поток, а несматченные - в другой
[16:00:48] <Deirz> сейчас распиливать пока совсем нельзя, лол
[16:00:58] <ascrazy@jabber.ru> лол
[16:01:11] <Deirz> 48 часов маловато для этого
[16:01:40] <kpmý> а зачем для этого что-то большее чем гипотетический "роутер пайпов"
[16:02:10] <kpmý> ведь инструменты уже есть
[16:02:24] <kpmý> тот же греп
[16:02:32] <ascrazy@jabber.ru> так инструменты не делают так
[16:02:42] <ascrazy@jabber.ru> греп же ты не заставишь писать в два потока
[16:02:43] <Deirz> греп придётся заново реализовывать
[16:02:50] <kpmý> ну для этого есть многозадачность ос и пайпы
[16:03:11] <Deirz> ну блин
[16:03:12] <Deirz> нет
[16:03:23] <kpmý> типа принимаешь текст в stdin а потом вызываешь две команды grep и срёшь им в in
[16:03:50] <Deirz> тип там дупликацию потока сделать?
[16:03:56] <ascrazy@jabber.ru> ну это с грепом у тебя может и выйдет запустить с другими параметрами что бы первый одно фильтровал а другой противоположное
[16:03:57] <kpmý> в винде вообще можно пайпы не привязывать к in/out/err
[16:04:05] <kpmý> Deirz: ну да, на то и роутер
[16:04:06] <ascrazy@jabber.ru> но в общем случае нихуя не выйдет
[16:04:44] <Deirz> kpmý, в шелле такое может прокатить, но это довольно бедное решение
[16:05:42] <Deirz> ну да, уже сложнее будет пилить на три
[16:06:08] <Deirz> например есть два потока отсортированных значений
[16:06:15] <Deirz> некоторые значения из потока совпадают
[16:06:20] <Deirz> *потоков
[16:06:52] <Deirz> надо разложить уникальные из первого в выходной поток1, общие в поток 2, уникальные из второго ввода в поток3
[16:07:05] <kpmý> в итоге получится потоковый sql?
[16:07:23] <Deirz> наверно нет
[16:07:30] <Deirz> посмотрим
[16:07:34] <kpmý> WHERE блаб
WHERE !блаб
WHERE бубубу
[16:08:49] <ftrvxmtrx> что тут у вас на пайпоразделяемая наркомания пошла
[16:08:55] <ftrvxmtrx> совсем гошечкой упоролись что ли
[16:11:18] <ftrvxmtrx> греп которым нужно из одного потока делать >1 называется awk
[16:11:36] <Deirz> а выводить в несколько потоков?
[16:11:39] <Deirz> а блин
[16:11:41] <Deirz> а как?
[16:11:47] <ftrvxmtrx> >
[16:11:49] <ftrvxmtrx> как ни странно
[16:13:18] ftrvxmtrx вышел(а) из комнаты
[16:13:20] ftrvxmtrx вошёл(а) в комнату
[16:13:49] <ftrvxmtrx> /match0/ { print >> file1 }
[16:13:56] <ftrvxmtrx> /match1/ { print >> file2 }
[16:14:00] <ftrvxmtrx> как-то так, например
[16:14:16] <Deirz> ну это в файл. Есть ещё |, читаю ман по нему
[16:14:40] <ftrvxmtrx> есть и пайп, да
[16:14:51] <ftrvxmtrx> print | my_cool_program
[16:14:57] <ftrvxmtrx> whatever
[16:22:24] <Deirz> так будет работать, но тоже не достаточно хорошо. Команды для параллельной обработки придётся писать в ту же строку. Или скрипты ковырять отдельные
[16:24:26] <kpmý> http://stackoverflow.com/questions/20308443/parallel-processing-in-awk
[16:24:33] <Deirz> ещё теряется немного метаинформации, вроде порядка строк в исходном потоке - если надо разрезать, обработать и потом склеить потоки так, чтобы записи шли в том же порядке. Можно номера строк добавлять из авка, но это костыль
[16:24:40] <ftrvxmtrx> в зависимости от проблемы можно разбивать инпут на части
[16:24:51] <ftrvxmtrx> и натравливать на эти части разные процессы awk
[16:25:24] <Deirz> а собирать обратно как?
[16:25:36] <kpmý> left join :)
[16:25:48] <Deirz> но это ещё половина проблемы
[16:25:53] <kpmý> в натуре больше всего это напоминает работу с табличками
[16:26:18] mantyr@qip.ru вышел(а) из комнаты
[16:26:56] <ftrvxmtrx> собирать пусть эти awk процессы в один fd пишут
[16:26:58] <kpmý> а так как sql сводится к лямбдам, то и с потоками тоже
[16:27:26] mantyr@qip.ru вошёл(а) в комнату
[16:27:30] <Deirz> но это не гарантирует упорядочивания
[16:28:28] <kpmý> а как предполагается складывать если оно будет разного размера
[16:29:05] <Deirz> складывать что?
[16:29:15] <kpmý> на выходе, несколько потоков с разными совпадениями, соответственно разного размера
[16:30:51] <Deirz> тут имеется ввиду - разрезал на потоки, каждый обработал своим обработчиком, который не удаляет, но и не добавляет строк. И потом склеил обработанные потоки так, что обработанные строки идут в том же порядке, что и их исходники
[16:32:23] <Deirz> например, из акцесслога достаёшь строчечки, разбиваешь по суммарному времени выполнения, каждую обрабатываешь как-нибудь и потом склеиваешь
[16:32:35] <Deirz> получаешь какой-нибудь heat timeline
[16:38:30] <Deirz> кароч стандартные консольные утилиты работают хорошо, пока строки текста остаются строками текста. Для использования их в роли другой структуры данных лучше самому напрягаться
[16:49:25] krab вошёл(а) в комнату
[16:50:31] <krab> что за использование других структур данных еще такое
[16:51:35] <Deirz> ну блин можно разобрать в кортеж
[16:51:45] <Deirz> или вырезать стектрейс
[16:52:14] <Deirz> из нескольких подряд идущих строк
[16:52:36] <Deirz> ну лан, авком тоже можно стектрейсы вырезать через range условия
[16:52:54] <Deirz> но как работать нормально с несколькими стектрейсами при этом - хз
[16:55:51] <ftrvxmtrx> для более сложных случаев часто годятся sexprs
[16:56:08] <ftrvxmtrx> не совсем понятно, правда, где они в стандартных тулзах вообще есть
[16:56:16] <ftrvxmtrx> в plan 9 есть, например. меня устраивает
[16:57:01] <Deirz> sexpr как стандартная сериализация структур?
[16:57:27] <ftrvxmtrx> нет, как s-expressions
[16:57:37] <ftrvxmtrx> как регекспы, только струкрурные
[16:58:41] <Deirz> а есть пример?
[16:59:26] <ftrvxmtrx> http://doc.cat-v.org/plan_9/4th_edition/papers/sam/
[16:59:34] <ftrvxmtrx> пример их использования в редакторе текста
[17:01:22] <ftrvxmtrx> поиск по "Structural Regular Expressions", там клёвые примеры с рекордами
[17:02:04] <ftrvxmtrx> я в некоторых штуках для похоже awk юзал, склеивая строки по началу и концу матча, но с sexprs это гораздо проще делать
[17:02:10] <ftrvxmtrx> *похожего
[17:10:21] <krab> зачем это в текстых документах держать
[17:10:45] <krab> тем более работать со строками и awk :D >_<
[17:11:48] <Deirz> это всё ещё регекспы
[17:15:28] <Deirz> нормальные люди в моём случае написали бы скрипт напетоне или там кондуитах
[17:15:43] <Deirz> но, nopython
[17:35:27] ascrazy@jabber.ru вышел(а) из комнаты
[17:36:18] ascrazy@jabber.ru вошёл(а) в комнату
[17:36:31] ascrazy@jabber.ru вышел(а) из комнаты
[17:39:07] <Deirz> https://github.com/samshadwell/TrumpScript
[17:41:17] ascrazy@jabber.ru вошёл(а) в комнату
[17:41:20] ascrazy@jabber.ru вышел(а) из комнаты
[17:47:16] magiq вышел(а) из комнаты
[17:57:15] Deirz вышел(а) из комнаты
[17:57:39] Deirz вошёл(а) в комнату
[18:18:19] unixlike вошёл(а) в комнату
[18:18:25] <unixlike> Hi there !
[18:18:49] <xep> пщ
[18:22:04] kpmý вышел(а) из комнаты
[18:23:23] <unixlike> у меня проблема . пилю авторизацию. Засунул json.Marshal экземпляр структуры вида Username string `json:"username"` Password string `json:"password
"
[18:23:53] <unixlike> но на стороне сервера не могу принять это говно
[18:27:31] <unixlike> tcpdump`ом сравнил то что отправляю курлом (то что отправляю  курлом - принимается нормально) и то что отправляю я
[18:27:48] <unixlike> курл:username=Anna;password=SecretPassword123
[18:28:45] <Deirz> ты отправляешь форму, а читать пытаешься json
[18:29:00] <unixlike> я: отправляю по следующему примеру . http://stackoverflow.com/a/24455606  
{"username":"Anna","password":"SecretPassword123"}
[18:30:02] <Deirz> или наоборот
[18:30:37] <unixlike> ааа блин , походу сервак принимает форму а я отправляю json
[18:30:59] <unixlike> Deirz : Спасибо ! ща попробую пофиксить
[18:50:10] Deirz вышел(а) из комнаты
[18:57:55] postman вошёл(а) в комнату
[19:02:50] plumbum вышел(а) из комнаты
[19:21:17] Kittycat вошёл(а) в комнату
[19:22:16] Kittycat вышел(а) из комнаты
[19:37:20] mantyr@qip.ru вышел(а) из комнаты
[19:37:55] begemot_sun вышел(а) из комнаты: Replaced by new connection
[19:37:57] begemot_sun вошёл(а) в комнату
[20:12:16] <unixlike> сделал как сказал чувак из этого примера http://stackoverflow.com/a/31912227
[20:13:03] <unixlike> на принимающей стороне объявил сделал такую же структуру как и на отправляющей
[20:13:04] <unixlike> data := &E{}
        c.Bind(data)
        fmt.Println(data)
[20:19:26] <Deirz> и?
[20:26:41] <unixlike> аа и заработало
[20:27:54] <unixlike> c - это gin context
[20:36:20] <unixlike> https://play.golang.org/p/pvvIjyqeZT
[20:39:50] mantyr@qip.ru вошёл(а) в комнату
[20:46:38] plumbum вошёл(а) в комнату
[20:48:28] plumbum вышел(а) из комнаты
[21:18:24] kms_ вышел(а) из комнаты
[21:25:20] avz вошёл(а) в комнату
[21:25:27] ascrazy@jabber.ru вошёл(а) в комнату
[21:25:40] ascrazy@jabber.ru вышел(а) из комнаты
[21:27:39] ascrazy@jabber.ru вошёл(а) в комнату
[21:37:04] kpmý вошёл(а) в комнату
[21:52:30] plumbum вошёл(а) в комнату
[21:53:36] kpmý вышел(а) из комнаты
[22:53:11] unixlike вошёл(а) в комнату
[22:59:23] ascrazy@jabber.ru вышел(а) из комнаты
[23:05:51] plumbum вышел(а) из комнаты
[23:29:47] ermine вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!