@dlangru

Страница 128 из 719
Олег
22.02.2017
15:17:36
разработка ПО для гос сектора

Shorty(Ale Chapa) Manskiy
22.02.2017
15:18:13
так вам 1с больше нужен))

Сергей
22.02.2017
15:18:50
Вот в чем фишка Д?)

зачем его использовать? что бы не использовать С++?

Google
Сергей
22.02.2017
15:19:11
Кроме сборщика мусорачто там есть?)

В GO есть леговесные потоки а в Д какая фишка? чем он облегчает жизнь?)

Денис
22.02.2017
15:19:36
Кроме сборщика мусорачто там есть?)
Тоже самое, что в C++11, 14, 17 только удобнее и красивее

Maxim
22.02.2017
15:19:40
крутые шаблоны же)

без ада угловых скобок

Сергей
22.02.2017
15:19:57
ну в этом и проблема, просто другой синтаксис)

Мерлин
22.02.2017
15:20:01
Сергей
22.02.2017
15:20:05
Нет изюминки)

Oleg
22.02.2017
15:20:21
ну кто за изюминками гонится, а кому работать хочется приятно

Pavel
22.02.2017
15:20:28
ну в этом и проблема, просто другой синтаксис)
Не просто другой, а грамотно органично вписывающийся в экосистему языка

Grigirii
22.02.2017
15:20:35
ctfe - вполне изюминка. просто мало кто её ценит

Pavel
22.02.2017
15:20:40
Да и сборка мусора это немалая фича

Сергей
22.02.2017
15:20:49
ну рейскондишены я и на с++ ловить могу) зачем мне для этого другой язык?)

Google
Maxim
22.02.2017
15:21:08
автовыведение типов, сборка мусора, @trusted, понятные шаблоны, юниформ фанкшн колл, вычисления на этапе компиляции, стандартная библиотека, вовсю использующая парадигму ranges

Денис
22.02.2017
15:21:09
ну в этом и проблема, просто другой синтаксис)
Ну при желании и просто на си можно писать, перегружать функции и заниматься любовью с указателями неистово. >gtk А можно быстро и безошибочно писать большие штуки.

Pavel
22.02.2017
15:21:38
ну рейскондишены я и на с++ ловить могу) зачем мне для этого другой язык?)
Формально чтобы повысить продуктивность от написания кода (а значит эффективность и прибыль компании) процентов на 20-30. Этого достаточно чтобы хотеть перейти.

Maxim
22.02.2017
15:22:17
язык достаточно всокоуровневый, но при желании можно спуститься вплоть до ассемблера

все это делает D отличным языком)

Сергей
22.02.2017
15:22:54
ладно я понял) Потому что красивый :)

Maxim
22.02.2017
15:23:32
ну а зачем еще нужны языки программирования?) для того, чтобы программистам было приятно и удобно их использовать)

Сергей
22.02.2017
15:23:41
Это как мода на Эрланг была) Что аж кто-то на нем GUI приолжения писать пытался)

Maxim
22.02.2017
15:24:28
ну, как бы, не нравится — не пользуй, никто же не заставляет)

Pavel
22.02.2017
15:24:36
ладно я понял) Потому что красивый :)
Я же привел метрику эффективности на 30%, причем тут красота?

Олег
22.02.2017
15:25:31
так вам 1с больше нужен))
1с подобные штуки мы тоже разрабытываем, но другой отдел -), я стараюсь держаться от этого подальше-)

Сергей
22.02.2017
15:25:32
Ладно, ладно... Я все :)

Pavel
22.02.2017
15:25:40
Разве ты не читал душераздирающих историй как проекты на с++ загибались потому что прогеры не могли месяцами найти где же память утекает и почему программа падает и не работает ?

Oleg
22.02.2017
15:26:45
главное чтобы язык не сковывал мышление

а так хоть на pascal можно писать... если мыслишь так же...

Maxim
22.02.2017
15:27:20
да, кстати, а кто-нибудь имел дело с долгоживущими программами на d, сборщик мусора не дырявый?)

Oleg
22.02.2017
15:27:44
должно живущие это долго работающие или долго разрабатываемые?

Maxim
22.02.2017
15:27:58
долго работающие

Oleg
22.02.2017
15:28:06
насколько долго?

Maxim
22.02.2017
15:28:15
что-нибудь на основе vibe.d, что висит месяцами)

Google
Oleg
22.02.2017
15:28:15
день, месяц, год?

я нет)

так блин, сайт самого vibe на vibe сделан

работает же

Сергей
22.02.2017
15:29:11
на апаче и пехепе саты тоже работают) не показатель же)

Maxim
22.02.2017
15:29:26
как-то пару лет назад, помню, они боролись с дырами сборщика — память хоть и не быстро, но текла, интересно, как сейчас дела обстоят)

ну, пехепе он выполняется и умирает, даже php-fpm, по сути, так сделан, что после каждого запуска скрипта память очищается

Oleg
22.02.2017
15:33:36
как-то делал приложение, которое должно было работать бесперебойно хотябы несколько часов, так мы его как-то так успешно написали, что спустя несколько часов уровень потребления памяти был байт в байт как после 2ой минуты работы

и сборщик мы не отключали

так что "на сборщик надейся, но сам не плошай" =)

немного надуманной проблема сборщика кажется в итоге...

Dmitry
22.02.2017
17:22:30
Кстати, а диспетчер задач показывает только память выделенню в куче или общую?

Сергей
22.02.2017
17:27:40
Общую

Dmitry
22.02.2017
17:35:13
new это всегда с гарантией аллокация в куче? Просто как я понимаю в Шарпе нет 100% гарантии где будет объект

Maxim
22.02.2017
18:29:16
вроде как да, в куче под контролем GC

Dmitry
22.02.2017
18:31:36
а хранение в стеке выглядит как? выделяется место под тип пеерменной, имя переменной и ее значение?

------------ тип —---------- имя —---------- значение —---------- как то так?

т.е. значение прям в стеке сохраняется

Maxim
22.02.2017
18:35:19
просто в стеке резервируется память под переменную, при выходе из области видимости, освобождается)

Google
Dmitry
22.02.2017
18:35:48
но у переменной же есть еще тип и значение

Maxim
22.02.2017
18:36:12
это уже на плечи компилятора ложится

Dmitry
22.02.2017
18:36:48
а какие варианты есть того что он может сделать?

Maxim
22.02.2017
18:38:35
ну как обычно стек выглядит: в программе, например, объявляется структура foo с двумя полями uint и выравниваем по байту, значит, в памяти она должна занимать 8 байтов (по 4 байта на каждый uint)

когда компилятор видит конструкцию типа foo bar; он понимает, что на стеке нужно зарезервировать 8 байтов, а когда в программе он встречает конструкцию типа auto baz = bar.bar1; он понимает, что нужно обратиться к первым четырем байтам памяти, выделенной под структуру bar

т.е. контроль типов происходит на этапе компиляции, а не на этапе выполнения, на уровне ассемблера это всего лишь чтение и запись по определенным адресам

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

куча от стека отличается глобальностью, т.е. в ней под переменную нужно явно выделить память, а когда переменная становится не нужна, ее нужно явно освободить, в D эту обязанность на себя берет сборщик мусора

Admin
ERROR: S client not available

Maxim
22.02.2017
18:45:14
в общем и целом как-то так)

Dmitry
22.02.2017
18:49:05
ух.... примерно понял

пасибо

Я запустил нагрузочное тестирование vibeв приложения на одном онлайн-сервисе. Мне не понятен что за график оно мне выдало и почему синяя линяя пошла вниз резко. Легенды там не нашел никакой. Что это может быть?



Количество коннектов? Согласно тесту получется оно что на 24 коннектах умерло?

Сколько в vibed по умолчанию создается количество системных потоков и можно ли управлять их количеством?

Pavel
24.02.2017
18:17:13
Мне кажется что 1 поток и в нем все асинхронно работает

Maxim
24.02.2017
19:13:11
http://vibed.org/api/vibe.core.core/setupWorkerThreads подозреваю, что через setupWorkerThreads настраивается, по умолчанию равно количеству логических процессоров в системе

Олег
24.02.2017
22:20:23
Dmitry
25.02.2017
18:11:03
Кстати, я тут дочитался до того, что как я понял при асинхронных операциях происходит очень хитрая штука. vibed отправляет запрос (к примеру) на чтение с ФС, переключается на новый файбер, ОС инициализирует устройство запросом на чтение данных (в рамках какого-то своего системного потока) но не ждет окончания чтения, а ждет когда устройство прочитает данные и вызовет специальное прерывание т.е. системные потоки не плодятся. Ну и далее даныые просто отправляются обратно.

Google
Dmitry
25.02.2017
18:52:29
Причем как я понял подобные запросы на чтение в планировщике ОС имеют приоритет т.е. должны ставиться перед другими тасками

IoIsOperationSynchronous routine determines whether a given IRP represents a synchronous or asynchronous I/O request. Эта штука работает уже на уровне драйвера

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

https://geektimes.ru/post/286304/ На долго ли нас хватит...?))

"с помощью такой нейросети люди могут создавать программы, даже не зная синтаксиса конкретного языка и фактически не умея программировать"

Сергей
25.02.2017
19:28:11
есть более простойвариант, со стаковерфлоу копипастить код, знать синтаксис тоже не требуется :D

Dmitry
25.02.2017
19:30:10
Я думаю IBM Watson скоро до SO доберется

Max
25.02.2017
21:49:06
https://geektimes.ru/post/286304/ На долго ли нас хватит...?))
Прорыв в ИИ обещают ещё с хрен знает каких пор, и где он? Пока эта штука составляет программы в 5 строк на своём собственном языке из 16 инструкций волноваться можно разве что о внуках.

Если я все правильно понял из статьи, оно это делает ещё и перебором вариантов смотря на результаты, "нейросеть учится программировать" — желтовато, однако

Pavel
25.02.2017
21:55:35
Если нейросеть научится программировать, то все другие профессии отпадут очень быстро, а программисты будут среди них последними. Так что неизвестно что будет вообще.

Evil
25.02.2017
22:32:39
Заказываю шунт в мозг. Нахуй искуственную нейросеть.

Dmitry
26.02.2017
11:37:37
А в vibed можно как-то генерировать урлы типа .ru/foo/bar без использования Diet template ?

А ни у кого нет идея сходу почему на VPS vibed приложение может не открываться. Вроде и порты открыты и все дела. Тупо не откарывается и все по урлу ничего. Я уже даже не знаю в какую сторону копать. ОС Windows. Раньше все работало. Теперь с новыми приложениями начал эксперимент и вот те на

выглядит все так:



Причем другое приложение (старое одно) работает вообще без проблем)

пф... идей нет. Все приложения работают как надо. Одно упорно не работает. Причем на моем компе все норм

Вообще мистика. Создал самое простое response hello word. Запустил. Работает. Скопировал из него код, вставил в то — не работает %)

Oleg
28.02.2017
19:52:40
а ты с портами точно не намудрил?

хотя на локальной машине все должны быть доступны

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