
Denis
11.05.2017
06:48:10
У меня эта самая многопоточность крэшилась
года 2 назад

Maxim
11.05.2017
06:49:10
наверное, можно дать ссылку ему https://tour.dlang.org/tour/en/multithreading/fibers

Denis
11.05.2017
06:50:08
+1

Google

Maxim
11.05.2017
06:50:20
вангую крики «в го это гораздо легче ололо», «у нас в го не нужно на каждый поток создавать по объекту» и так далее)

Denis
11.05.2017
06:51:13
А в го потоки эти это часть языка или библиотека?

Maxim
11.05.2017
06:51:29
часть языка

Denis
11.05.2017
06:51:37
Ясно, можно закапывать

Maxim
11.05.2017
06:51:53
https://gobyexample.com/goroutines

Denis
11.05.2017
06:51:54
Жаль что крупные конторы игнорят Ди. Интересно бы узнать в чём причина.

Oleg
11.05.2017
07:38:02
Да причина в целом одна: отсутствует 'большой папа' для языка
Sociomantic видимо не настолько хороши, чтобы ребята, которые хитмана делали на D взглянули

Dmitry
11.05.2017
10:50:27
https://habrahabr.ru/company/mailru/blog/327966/#comment_10211492
"Это все-таки разные вещи. Как минимум, в файберах управление переключается явно. "

Мерлин
11.05.2017
10:52:02

Denis
11.05.2017
10:52:51

Maxim
11.05.2017
10:54:59
я так понимаю, там yield() делать не надо, за все это отвечает планировщик, поскольку это фича языка

Google

Denis
11.05.2017
16:31:46
очень странно. тогда это ничем не отличается от обычной многозадачности кмк
у нас yield делается не просто так, а в определённых местах же

Pavel
11.05.2017
16:32:57
Там компилятор сам йелдит когда нужно и перекидывает горутины по тредам если что-то остановилось. Такая штука и хайпанула.

Maxim
11.05.2017
16:37:31
ну и явный yield там тоже есть)

Oleg
11.05.2017
16:38:08
и вообще у них только чистые файберы?

Pavel
11.05.2017
16:38:44
Не отвечу, это надо в чате гошников спрашивать
Еще у них слак есть, могу спросить

Oleg
11.05.2017
16:39:55
иногда забредаю на некоторые чаты по go и создаётся впечатление, что там люди особо не разбираются
просто пишут что пишется, а как там внутри всё устроенно их не парит

Pavel
11.05.2017
16:40:20
Ну так а зачем им разбираться, они просто пользуются )

Oleg
11.05.2017
16:40:41
ну это как не знать как работает машина, но ездить
по сути ничего плохого

Pavel
11.05.2017
16:41:07
Ну да этим он и приколен, просто клепаешь программки и думаешь что оно магически параллелится

Oleg
11.05.2017
16:41:12
только как-то не профессионально
не думаю что хоть один пилот профессиональный не разбирается в работе машины

Pavel
11.05.2017
16:42:52
"Все аналогии лживы" (с) гошникам это не мешает кодировать :)

Maxim
11.05.2017
16:44:25
собственно, го с расчетом на это и создавался)

Oleg
11.05.2017
16:45:26
термин про го-шную магию зато правдивый

Google

Oleg
11.05.2017
16:45:39
для большинства это магия, а для единиц — технологии

Maxim
11.05.2017
16:45:49
большинство через задницу юзают наследование — выкинем, люди с помощью исключений ветвят алгоритмы — скажем, что не нужно, шаблоны все сложные, ну что же, будем пользоваться ctrl+c ctrl+v
добавим кооперативную многопоточность на уровне синтаксиса и, вуаля, назовем это прорывом в разработке)

Oleg
11.05.2017
16:47:17
и да прибудут с ними школьники...
чат про D вроде)))
кто-нибудь знает что происходило на хакатоне после dconf?

Denis
11.05.2017
17:03:43
Yield скрытно расставляет компилятор?

Maxim
11.05.2017
17:07:27
как минимум при блокирующем вводе-выводе
насколько знаю, го прерывает горутину при syscall и возвращает управление, когда данные получены

qwerty
12.05.2017
00:24:51

Oleg
12.05.2017
08:23:54
https://github.com/dlang/druntime/pull/1698
довольно простое решение

qwerty
12.05.2017
11:38:23
@deviator ты не ковырял dmd? Откуда там ноги растут?

Oleg
12.05.2017
11:47:31
@ANtlord код читал, вики читал, сам ничего не писал (потому что не понял в итоге)
ноги по поводу файберов?
Просто по поводу размера стека файберов была у меня проблема

qwerty
12.05.2017
11:56:09
ноги в dmd откуда растут)

Oleg
12.05.2017
12:11:46
вроде всем известна история про Брайта
он раньше писал С++ компиляторы, потом понял, что С++ не очень язык и решил сделать и язык новый и компилятор к нему
как он связан в этот момент был с компанией, которая только недавно дала добро на перевод на другую лицензию бэкенда я не знаю
видимо спонсор начальный

Pavel
12.05.2017
12:13:56
То есть по сути язык D родился из попытки написать гигантский велосипед и все переписать ;)

Oleg
12.05.2017
12:23:52
мне не нравится определение "велосипед" в этой ситуации

Google

Oleg
12.05.2017
12:24:02
вот как-то не подходит

Pavel
12.05.2017
12:24:38
Ну это прям классическая ситуация "нам не нравится, давайте мы все перепишем"

Oleg
12.05.2017
12:25:17
по сути то да, но мне кажется это не вынужденное решение, а он пришёл к желанию сделать что-то новое

Maxim
12.05.2017
12:25:24
скорее, как результат попытки изменить в С++ то, что бесило человека с опытом разработки компилятора С++)

Oleg
12.05.2017
12:25:29
и вот в этой точке это уже не велосипед
ну а если рассуждать с позиции "есть же С++, зачем нужен D", то так же можно было в своё время спросить "зачем нужен С++, если есть C?"
и потом сказать, что С++ это велосипед
велосипед это mir на фоне wayland

Maxim
12.05.2017
12:27:37

Oleg
12.05.2017
12:27:50
да и хорошо

Admin
ERROR: S client not available

Maxim
12.05.2017
12:28:39
Видимо, одно время Каноникал не давали покоя лавры Микрософт, хорошо, что этот период прошел)

Oleg
12.05.2017
12:29:17
судя по тому что они вообще делали с гномом, чтобы сделать юнити, то лучше бы вообще они ни за что не брались больше
выдернуть очень ходовой продукт из апстрима, запатчить и потом гнаться за апстримом
вот это больше похоже на велосипеды
D за C++ не гонится и не исключает его
если только по популярности, но не по функциональному наполнению
наоборот сейчас много чего в С++ тащат, что давно есть в D
но если рассуждать с позиции "не нравится -> сделал своё" == "велосипед", то да, D видимо велосипед, как и все языки, что вышли после какого-то эталонного не велосипедного языка

Maxim
12.05.2017
12:35:46
с другой стороны, если велосипед хорош, то почему бы не покататься на нем?)

Google

qwerty
13.05.2017
03:17:19
https://www.youtube.com/watch?v=tK072jcoWv4&list=PL3jwVPmk_PRxo23yyoc0Ip_cP3-rCm7eB&index=16

Denis
13.05.2017
05:37:24

Dmitry
14.05.2017
15:16:08
А как читая файл построчно определить что он кончился?
if (line == EOF)? такое прокатит?

Denis
14.05.2017
15:34:28
.empty() ?

Oleg
14.05.2017
15:48:27

Dmitry
14.05.2017
15:48:29
Денис, эту пустая строка будет просто
Олег, да это понятно, просто я хотел как-то обработать случай когда мы читаем файл и в нем были незакрытые теги т.е. isOpenH1 стоит в true

Oleg
14.05.2017
15:51:34
http://dlang.org/phobos/std_stdio.html#.File.eof

Andrey
14.05.2017
15:51:41
while ((line = readln()) !is null) ?

Dmitry
14.05.2017
15:58:55
м... пасибо

Ned Ogl
15.05.2017
09:17:35
Ребят, кто знает, мб есть онлайн ide с песочницей. Хочу с андроида на D попрогать. Компа нет и не предвидится ещё полгода. Все онлайн компиляторы позволяют создать только один файл, а нужно несколько для модульности проекта. Посоветуйте мб что-то

Denis
15.05.2017
09:19:13
vps + терминал

Dmitry
15.05.2017
09:22:11
@ned_ogl если хочешь можешь помочь вот эту задачу решить
http://forum.dlang.org/thread/ustrdszhzpguzhatycgj@forum.dlang.org
Она в рамки одного файла укладывается. Мне это нужно для того чтобы я книжку смог в нормальном виде опубликовать

Ned Ogl
15.05.2017
09:23:57
Разве это не на стеке решается?
Конкретно твоя проблема

Dmitry
15.05.2017
09:24:25
В плане?
Готового решения нет. Мне нужен именно такой формат, чтобы по главам разбивку можно было сделать
Потом можем книжку вместе начать улучшать и тебе онлайн компилера хватит более чем.
для развития языка будет очень полезно

Ned Ogl
15.05.2017
09:29:43
И не поспоришь
Ща разберусь
Погоди
А как же markdown?!