
Daniel
01.10.2018
17:57:25
и у джавы неплохой тулинг, но тяжеловесный очень

Alexander
01.10.2018
17:57:30
еще понедельник, а философия уже такая пошла, как в пятницу

Nick
01.10.2018
17:57:38
Тяжеловесный?

Daniel
01.10.2018
17:57:43
ага

Google

Nick
01.10.2018
17:58:06
А вот у Хаскеля вообще есть вкусный stack

Alexander
01.10.2018
17:58:21
дети малые

Nick
01.10.2018
17:58:22
Сомнительно, что у гошечки тулинг лучший
а у раста там вообще Крейты

Daniel
01.10.2018
17:58:36
вот толко никакого хаскеля нет (и раста нет, на всякий случай)

Alexander
01.10.2018
17:59:02
правда?

Nick
01.10.2018
17:59:03
Да? И джавы тоже нет?

Daniel
01.10.2018
17:59:12
джава есть

Nick
01.10.2018
17:59:15
Ну если так, то да, го лучший

Alexander
01.10.2018
17:59:33
А я думал, ты буддист по-настоящему :)

Daniel
01.10.2018
17:59:35
и gradle есть, но gradle - это не dep, gradle изучать надо

Roman
01.10.2018
17:59:46

Google

Daniel
01.10.2018
18:00:16
вот зачем ты называешь код на go асинхронным и неблокирующим?

Nick
01.10.2018
18:00:45

Daniel
01.10.2018
18:01:30

?
01.10.2018
18:01:34

Nick
01.10.2018
18:01:34
Го шедулер вообще никак при блокинге то не поможет

Roman
01.10.2018
18:01:37
нужен не он, а тредпул под ним
нет, на самом деле именно scheduler’е goroutine’ нужен ? а то что он реализован на thread pool’е это хороший бонус к concurrency

Alexander
01.10.2018
18:01:55
джава есть
на самом деле - ничего нет! И мы должны это учитывать
хотя, юмор у меня слишком специфичепский и не смешной :(
Суко, Зеленин подсадил меня на измену

Roman
01.10.2018
18:03:43

Daniel
01.10.2018
18:03:44
у меня к яве ровно одна претензия: почему-то все, что я пишу на яве, занимает у меня вдвое-втрое больше времени, чем аналогичное на go.
объяснить этот феномен я не в силах, но наблюдаю его регулярно, и в собственной жизни, и у коллег

Nick
01.10.2018
18:05:22

Alexander
01.10.2018
18:06:09

?
01.10.2018
18:06:54

Nick
01.10.2018
18:07:04

Alexander
01.10.2018
18:07:54
таак... сеейчас узнаем тут на нашем канале про аниме, кто какой язык любит...

Roman
01.10.2018
18:08:47
вот зачем ты называешь код на go асинхронным и неблокирующим?
а разве это не так?) scheduler „распознаёт“ блокирующие горутины и swap’ит их, мы же вкурсе)
это делает код синхронным, а его выполнение - асинхронным и неблокирующим.
в event loop’е всё иначе, там блокировать нельзя совсем! там есть callback’и и его абсктракции аля Promises & async/await (не дай бог где-нибудь забыть await, заблокирует нахрен весь event loop)
асинхронный код сложнее гошного синхронного, даже с async/await. В event loop’е например нельзя выполнять сложные вычисления, это блокирует execution thread и следственно весь event loop и всё встаёт раком… в Go это делать можно, это заблокирует один из потоков, но не всю систему, а в добаков ещё можно использовать Go.Sched() для неблокирующих тяжёлых вычислений (аналог в event loop’е это что то вроде`runtime.tick()`)

Daniel
01.10.2018
18:08:54
Пиши на скале)
я теперь на groovy пишу, когда мне jvm нужна и либы явные

Google

Nick
01.10.2018
18:09:06

Roman
01.10.2018
18:09:47

Daniel
01.10.2018
18:09:52
а разве это не так?) scheduler „распознаёт“ блокирующие горутины и swap’ит их, мы же вкурсе)
это делает код синхронным, а его выполнение - асинхронным и неблокирующим.
в event loop’е всё иначе, там блокировать нельзя совсем! там есть callback’и и его абсктракции аля Promises & async/await (не дай бог где-нибудь забыть await, заблокирует нахрен весь event loop)
асинхронный код сложнее гошного синхронного, даже с async/await. В event loop’е например нельзя выполнять сложные вычисления, это блокирует execution thread и следственно весь event loop и всё встаёт раком… в Go это делать можно, это заблокирует один из потоков, но не всю систему, а в добаков ещё можно использовать Go.Sched() для неблокирующих тяжёлых вычислений (аналог в event loop’е это что то вроде`runtime.tick()`)
коллега, у вас каша в голове

Nick
01.10.2018
18:09:57

Alexander
01.10.2018
18:10:41
Ничего страшного!

Roman
01.10.2018
18:10:52

Daniel
01.10.2018
18:11:13

Alexander
01.10.2018
18:11:28
да ты вобще умничка

Roman
01.10.2018
18:11:37

Daniel
01.10.2018
18:12:39
Не распознает он ничего
еще как распознает. горутина, заказавшая ввод-вывод, не попадет в шедулер, пока eventloop не отрапортует, что ее ввод-вывод случился

Roman
01.10.2018
18:12:46

Илья
01.10.2018
18:13:37

Daniel
01.10.2018
18:14:12
там сложнее существенно логика, чем просто gosched

Roman
01.10.2018
18:14:23

Nick
01.10.2018
18:15:23
и я не про io

Daniel
01.10.2018
18:15:41
какой блок я должен сделать руками?

Nick
01.10.2018
18:16:01
заблокируй поток

Daniel
01.10.2018
18:16:12
как именно я должен его заблокировать?

Google

Alexander
01.10.2018
18:16:47
Роман, ты слишком все усложняешь! даже эти нижние лапки типографские где-то выискал... я даже и не помню ихнихй UTF код... Может быть, не усложняй? А?

Nick
01.10.2018
18:17:25

Daniel
01.10.2018
18:17:41

Nick
01.10.2018
18:17:50
Thread.sleep

Никита
01.10.2018
18:18:03
time.Sleep()

Nick
01.10.2018
18:18:15
нет
Thread sleep

Roman
01.10.2018
18:18:27

Admin
ERROR: S client not available

Никита
01.10.2018
18:18:51

Roman
01.10.2018
18:18:57

Nick
01.10.2018
18:19:01
в thrd_sleep
underlying thread заблокируйте
и пока

Alexander
01.10.2018
18:19:41

?
01.10.2018
18:20:00

Никита
01.10.2018
18:20:14
Мне почему то показалось разговор за Го идёт
Хотя странно что разговор не про Го)

Alexander
01.10.2018
18:20:56
а это канал про аниме - тут про любое можно говорить, вроде

Google

Nick
01.10.2018
18:21:03

Roman
01.10.2018
18:21:32

Marperia
01.10.2018
18:21:46

Никита
01.10.2018
18:21:48

Alexander
01.10.2018
18:21:50
а при чем тут аниме?

Nick
01.10.2018
18:23:03

Marperia
01.10.2018
18:24:00

Nick
01.10.2018
18:24:07

Roman
01.10.2018
18:24:17

Nick
01.10.2018
18:24:25
а работает она в космосе?

Alexander
01.10.2018
18:24:25

Nick
01.10.2018
18:24:43

Roman
01.10.2018
18:25:07

Alexander
01.10.2018
18:25:34
что такое системный поток?

Roman
01.10.2018
18:25:51
блокировать горутины можно, это не страшно. Страшно блокировать event loop забыв await или вычисляя в главном потоке!

Alexander
01.10.2018
18:26:02
его можно как-то оптимизировать?

Roman
01.10.2018
18:26:09

Nick
01.10.2018
18:26:38

Alexander
01.10.2018
18:27:00
системные основы мы не можем, к счастью, оптимизировать