@dlangru

Страница 114 из 719
Oleg
19.12.2016
16:48:55
тут кто-нибудь работал с std.net.curl, requests или vibed.http.client? нужно просто отправить get туда где редирект, перейти по редиректу, вернуть уже с него данные

я поверить не могу, что нужно руками проверять код 302 и создавать второй запрос

3 блять библиотеки могут делать одно и тоже и ни один автор не подумал, что могут быть редиректы?

Dmitry
19.12.2016
16:49:58
ну по идее res.code нужно проверить

Google
Dmitry
19.12.2016
16:50:09
или как там оно точно называется

Oleg
19.12.2016
16:50:13
по идее я хочу просто получить данные

Dmitry
19.12.2016
16:50:31
ай блин редиректы еще

Oleg
19.12.2016
16:50:46
на кой чёрт писать столько всяких велосипедов если нет такой простой херни?

вот уже не в первый раз сталкиваюсь с тем, что разработчики подходят к вопросу разработки библиотеки как-то однобоко

но пока есть надежда, что всё-таки я просто что-то сделал не так

и где-то можно просто поставить флаг

который заставит проходить по редиректам

Dmitry
19.12.2016
17:45:29
@deviator по поводу твоего алгоритма: auto last = range.front; range.popFront; получается мы перед началом переборки первый элемент сохраняем под именем last? front это у нас же перед. Потом его из этого массива выкидываем и дальше циклом идем?

Oleg
19.12.2016
17:47:10
Да

Dmitry
19.12.2016
17:54:52
Так, но их же не разово нужно, а после каждой итерации запоминать и выкидывать. Получается еще один цикл нужен внешний?

Oleg
19.12.2016
19:18:45
???

last сохраняется, а foreach проходит по элементам, какой внешний цикл?

Google
Oleg
19.12.2016
19:19:43
auto last = range.front; range.popFront; foreach (val; range) { if (val - last > 1) writeln("ooops"); last = val; }

Dmitry
19.12.2016
19:23:07
так, попробуй тупо скопипастить и посмотреть результат. Сел писать тоже самое глядя на твой пример и какой-то трэш получился

буф... получается мы перебираем массив без первого элемента в цикле foreach так?

Oleg
19.12.2016
19:29:34
да

Dmitry
19.12.2016
19:29:52
но last то у нас всешда будет 1 (единицей)

Oleg
19.12.2016
19:30:02
с чего вдруг?

Dmitry
19.12.2016
19:30:35
ну он же один раз оценивается в самом начале, разве нет?

Oleg
19.12.2016
19:31:03
что значит оценивается?

Dmitry
19.12.2016
19:31:12
auto last = range.front;

заполняется

Oleg
19.12.2016
19:32:02
хорошо, а что в последней строке цикла происходит тогда?

где last = val

это ... ?

Dmitry
19.12.2016
19:32:37
м... last устанавливается на текущее значение итерирумого

Oleg
19.12.2016
19:32:56
и почему всегда last будет единицей?

Dmitry
19.12.2016
19:33:11
а ну да

Oleg
19.12.2016
19:33:43
да и вообще, почему единицей? диапазон может начинаться с любого числа

Dmitry
19.12.2016
19:36:32
Кстати, теперь о добром и веселом. Теперь примеры можно онлайн запускать https://dlang.org/phobos-prerelease/std_algorithm_iteration.html там кнопка run появилась

Oleg
19.12.2016
19:38:00
удобно

но, кстати, не везде

Google
Dmitry
19.12.2016
19:39:15
тестируют пока типа...

Oleg
19.12.2016
19:39:33
а, это prerelease

Dmitry
20.12.2016
04:49:36
На все сто согласен с постом http://forum.dlang.org/post/lbccbfgeyydzwyagwfbc@forum.dlang.org Реально куча времени тратиться на какие то сложные вещи, а на очевидные и нужные тупо забивают

В итоге порог вхождения в язык остается не сильно ниже плюсов. Показательно что более простые языки типа Nim умудряются в короткие сроки комьюнити около себя сколотить не пытаясь стать вторыми C++

Grigirii
20.12.2016
08:42:26
3 блять библиотеки могут делать одно и тоже и ни один автор не подумал, что могут быть редиректы?
vibe-d вообще серверное решение, в котором очень тупой клиент. они пилят новую реализацию, где будет возможность флагом указать редирект. когда релиз нпонятно, ветки с ним давно никто не трогал

Dmitry
20.12.2016
17:20:17
У меня складывается чувство, что Илья Александреску с Брайтом перекашмарит скоро. Я за активностью слежу и они походу будут у него скоро спрашивать что делать)

Интересный топик и замечания http://forum.dlang.org/post/zljvvwesvzwhuhpuxkzd@forum.dlang.org

Судя по постам в группе про LDC на Ди уже можно приложения для Андроид писать графические

Судя по посту все прошло нормально

Pavel
23.12.2016
11:24:03
Ого прямо реально можно?

А неграфические?

qwe
23.12.2016
11:27:07
dlang ui вроде уже есть под android

Dmitry
25.12.2016
07:37:10
Кто следит за изменениями языка? Чем with(import std.stdio) foo() {} лучше foo () {import std.stdio} или как они там в первом варианте предлагают

Ребят, помогите понять смысл фразы про таски: "Tasks are things that can be scheduled using threads or fibres. It's all down to thread pools and kernel processes." Что есть таск тогда и как файбер может его планировать?

Pavel
10.01.2017
09:10:56
Видимо имеется ввиду что таск рассматривается как последовательность операторов-инструкций

Ну или каких то блоков выполнения кода. Что позволяет распланировать время выполнения между этими блоками

Dmitry
10.01.2017
09:53:39
Тоесть во всех языках таск это общее понятие и значит одно и тоже

Pavel
10.01.2017
10:17:04
Не, так-то Task это очень общее понятие

И не во всех языках оно есть

Google
Dmitry
10.01.2017
10:35:36
А в плюсах и шарпе оно есть? Что там значит?

Sergey
10.01.2017
10:39:00
в дот нете есть, значит то же самое)

некая задача/последовательность инструкций, выполняемая в треде или в файбере

см async await в .NET

Dmitry
11.01.2017
20:12:35
А как в Ди красиво сгенерировать диапазон не включая указанные числа Т.е. iota(1,5) генерит 1,2,3,4,5 а мне нужно 2,3,4

И еще вопрос. Как я понимаю iota делает все лениво. т.е. для нее метод popFront вызывать нельзя

Pavel
11.01.2017
23:10:53
iota(2,4)

Dmitry
11.01.2017
23:21:47
Не, не катит. Ну точнее да. Я в итоге декремент сделал тоже входных чисел

Короче да. Хороший вариант: iota(x--, y--)

Admin
ERROR: S client not available

Dmitry
12.01.2017
07:13:43
тьфу

точно

А как происходит выжедение памяти в языках с ГК и без под, к примеру, строковую переменную неизвестной длинны.

Sergey
13.01.2017
07:03:55
строка - это динамический массив

Dmitry
13.01.2017
07:07:50
А как под него выделение памяти происходит если его размер точно не ясен? Кусками?

Sergey
13.01.2017
07:13:44
типа того

Dmitry
13.01.2017
07:16:31
а в языке без ГК за этим программист должен следить?

Sergey
13.01.2017
07:16:51
что-то я затупил со строками. строка же чаще всего неизменяемый массив.

например в D. нельзя изменить строку, только присовить новое значение переменной, при этом, по факту переменная-ссылка будет указывать уже на свовсем дургой объект. В других языках с ГК, я думаю, так же (по крайней мере в C#)

Google
Dmitry
13.01.2017
07:22:07
Так, а как быть с юзер-инпутом?

если человек строку вводит. Как оно происходит?

Sergey
13.01.2017
07:24:37
человек не вводит строку (в смысле объекта типа string). Он вводит последовательность символов. На каком-то этапе это превращаетя в строку. На каком, зависит от конкретного случая (вводит с консоли, вводит с элемента управления...)

Dmitry
13.01.2017
07:25:34
м... а к примеру какой может быть случай? Ну вот какой нибудь графический тулкит

или cmd

Sergey
13.01.2017
07:27:32
зависит от реализации. В графических тулкитах, обычно будет создаваться новая строка при каждом изменении

Dmitry
13.01.2017
07:31:31
А, понял идею...

А вообще в языке с ГК указатели используются? Как понимаю да, но их роль не совсем ясна

Max
13.01.2017
11:35:29
А как происходит выжедение памяти в языках с ГК и без под, к примеру, строковую переменную неизвестной длинны.
Да как хочешь. Можешь просто переаллоцировать строку каждый раз при изменении, можешь выделять новый размер памяти и там клеить старую с новой. Строки по 10 мб — хоть связный список сделай с указателями на строки и не переаллоцируй ничего

а в языке без ГК за этим программист должен следить?
Да. Или автор имплементации строк, если ты не на си пишешь и есть хоть какие-то средства абстракции

А вообще в языке с ГК указатели используются? Как понимаю да, но их роль не совсем ясна
Так же как и в других, когда нужно передать что-то по ссылке или для чего-то нужна адресная арифметика (массивчики в си стиле например)

Мерлин
13.01.2017
14:03:57
Dmitry
17.01.2017
07:09:17
А кто работал с виртуальными хостами в vibed? Оно там нормально все?

Задача: нужно чтобы на домену mysite.com при обращении к /foo и к /bar открывалось два разных сайта. Как такое можно сделать?

Помогут ли тут виртуальные хосты?

Evil
17.01.2017
07:13:56
О.о

Хост один, а сайта два?

Dmitry
17.01.2017
07:14:24
да

Pavel
17.01.2017
09:08:39
Не знаю как vibed но в nginx такое делается за 5 сек. )

Dmitry
18.01.2017
13:08:17
А без него можно как-то?

Кстати, Илью Ярошенко послушал. Может кому его мысли про Ди будут интересны. Он предлагает завязываться на cruntime т.к. язык D в его понимании больше подходит для системного программирования, чем для более выскокоуровневых решений т.е. он считает, что на нам очень удобно пилить какие-то низкоуровневые вещи, но той же Java и подобным языкам он не конкурент — ниши разные.

В чем проблема отвязать Ди от Си-рантайма? Как я понимаю это вызывает проблему что Си-рантайм везде разный. Тоесть какой-то идет в комплекте с виндой, а какой-то в виде разных рода VS2013-Redistributed с которыми почему-то DMD jkxtym любит линковаться. В итоге софт на других компах без этих либ не работает.

Страница 114 из 719