@dlangru

Страница 605 из 719
Stepanos
18.06.2018
06:53:49
9 разньіх GUI на D написанньіх и 16 оберток :)

Go и Rust таким похвастаться не могут

https://glade.gnome.org - вот ето прикрутить к dlangui и считайте успех, там в xml формате верстка сохраняется

Google
Eto
18.06.2018
07:33:54
Ну, и обычно не желание учить что-то новое. :)

Я было паре коллег объяснял файберы. Сказали херня какая-то.

Глеб
18.06.2018
07:43:00
Файбер это не часть аппаратуры, а значит не должно быть частью языка
про отражение в языке аппаратуры в чистом виде, это к Си. всё, что настраивается над сями, плюсы, Ди, Шарп, это как раз абстрагирование от аппаратуры. Чем дальше, тем больше. Вообще, забавная эволюция. Сначала товарищи математики разрабатывали языки, хорошенько абстрагированные от аппаратуры. Затем появился максимально э... инженерно близкий к аппаратуре Си и все пришли экстаз. И снова принцип максимального приближения к абстракно - алгоритмическим идеям пошёл в мэйнстрим. Так всякая апелляция к отсутствию отражения в аппаратуре не катит. Имхо, конечно.

Dmitry
18.06.2018
07:58:18
Ievgenii
18.06.2018
08:21:58
Нашел реализацию http сервера на C с использованием LibEv. Тоже, сука, зависает...

Гуратины им то нравятся?)

Eto
18.06.2018
08:32:35
и что они предлагают вместо?
Ничего. Они просто не могут в event loop (наверное).

Dmitry
18.06.2018
08:33:22
Типа потоки юзать?

Или как в ноде?

Dark
18.06.2018
08:47:24
Или как в ноде?
Как в ноде: хуяк, хуяк и в один поток

Ievgenii
18.06.2018
08:55:57
)))

Google
Ievgenii
18.06.2018
09:18:29
Или с настройками ядра

Dmitry
18.06.2018
09:21:39
Я, кстати, в том примере с libev потом тоже пронаблюдал зависания, когда число запросов сделал не 10к, а ближе к 100к.

Ievgenii
18.06.2018
09:22:39
Попробую на досуге написать автору LibEv

Может он что-то внятное скажет

Dmitry
18.06.2018
09:24:28
он вроде только места с аллокациями может показывать, а речь о живом приложении чтобы его профайлить можно было и видеть где и сколько памятииспользует
Кое-какой профайлинг GC доступен при запуске проги с заветным ключиком: https://dlang.org/spec/garbage.html#gc_config А так да, когда-то я делал решение с установкой своего прокси-GC, где писал в лог все интересные вызовы. Потом мой код протух, но все необходимое уже добавили в код GC, можно включить всякий логгинг установкой некоторых version flags (но для этого надо рантайм пересобрать).

//debug = PRINTF; // turn on printf's //debug = COLLECT_PRINTF; // turn on printf's //debug = PRINTF_TO_FILE; // redirect printf's ouptut to file "gcx.log" //debug = LOGGING; // log allocations / frees

отсюда: https://github.com/dlang/druntime/blob/master/src/gc/impl/conservative/gc.d

elias
18.06.2018
11:13:27
dlang подошел бы как доп. средство скриптования (помимо Python) для C++ пакетного менеджера conan?

Eto
18.06.2018
11:18:28
Как в ноде: хуяк, хуяк и в один поток
В ноде то тоже event loop есть.

Типа потоки юзать?
Не, просто не понимают и первая реакция — что это какая-то хуйня, раз они не понимают.

Dark
18.06.2018
11:22:49
Dmitry
18.06.2018
16:49:59
Еще один аргумент к теме что все эти курсы по программированию лажа полная. Вакансия упала на почту. Препод по Питону. «Опыт программирования на Питон от 1 года». Да с таким опытом только учить других.

Dark
18.06.2018
17:23:45
Dmitry
18.06.2018
17:24:29
Ди норм)

Глеб
19.06.2018
02:07:20
Нет. Многопоточность туда не завезли и результат плачевен
ой, да ладно. вообще, есть удачные алгоритмические представления для многопоточности?

Denis
19.06.2018
02:20:16
Я про примитивы для многопоточности. Компилятор реализует возможности процессора ведь - вот и извольте многопоточность дать в самом языке.

Stanislav
19.06.2018
02:24:31
Типа атомарные примитивы не нужны?)

Google
Глеб
19.06.2018
02:48:29
Я про примитивы для многопоточности. Компилятор реализует возможности процессора ведь - вот и извольте многопоточность дать в самом языке.
хе. ну вот смотри. классические примитивы, так или иначе, реализованы везде. выносить из на уровень языка, или в библиотеку, дело 10ое, в традициях Си вообще всё выносить именно в библиотеку. Только вот использование классических примитивов, на сегодняшнем железе, оказывается слишком дорогим. И?

Denis
19.06.2018
02:48:59
> ну вот смотри. классические примитивы, так или иначе, реализованы везде Нет > в традициях Си вообще всё выносить именно в библиотеку Нет

Когда Си запилили многоядерности не было

Всё остальное из железа там есть (типа работы со стеком, лол)

Stanislav
19.06.2018
03:00:08
ну сейчас то в си всё есть, и tls, и атомики )

а всякие IPC уже дано в unix есть

shared memory, queues

Глеб
19.06.2018
03:04:56
> ну вот смотри. классические примитивы, так или иначе, реализованы везде Нет > в традициях Си вообще всё выносить именно в библиотеку Нет
да. именно выносить в библиотеки. даже ввод-вывод. до Си это было не так, по максимуму всё тащщили на уровень языка. и если чего в языке не было, это означало его выход из употребления (Алгол 60). И если было "слишком много", тоже (ПЛ/1). А многопоточности, да, не было, но уже была многопроцессрность с общей памятью, а тут хоть сову о пень, хоть пень об сову, итог один.

Denis
19.06.2018
03:05:09
> даже ввод-вывод ДАЖЕ?!

всего лишь ввод-вывод

Глеб
19.06.2018
03:05:20
даже ;)

Denis
19.06.2018
03:05:42
> но уже была многопроцессрность с общей памятью в тех машинах для которых С делался её не было

Глеб
19.06.2018
03:06:07
а также манипуляции со строками и далее по всей стандартной библиотеке

в других языках это всё уровень языка

сложный вопрос. на пдп не было. но Си очень быстро запилили и для других машин

уже на ваксах была, а именно на них Си испытал рассвет

Denis
19.06.2018
03:08:42
тогда ещё теория многопоточности не так развита была

даже были в процессорах баги связанные с локами

Глеб
19.06.2018
03:09:56
ну сейчас то в си всё есть, и tls, и атомики )
и тоже, либо в библиотеке, либо в компиляторно специфичных интрисиках

Denis
19.06.2018
03:10:03
блять заебала эта монга

Google
Denis
19.06.2018
03:10:14
то не апдейтит то ещё что-то. говноеды синтаксис придумывали

Глеб
19.06.2018
03:10:29
хе. теория развивплась в 50 - 60 гг.

Denis
19.06.2018
03:11:02
хе. теория развивплась в 50 - 60 гг.
в моторолах или интелах был бессмысленный набор инстркций для многопоточности

Stanislav
19.06.2018
03:11:18
и тоже, либо в библиотеке, либо в компиляторно специфичных интрисиках
ну назови рантайм языка стандартной либой и тоже самое получишь. или сахара не хватает?

Denis
19.06.2018
03:11:21
Как CAS но другой, и потом уже в 90-е было доказано математиками что он не позволяет неблокирующий софт писать

а ты говоришь "теория"

Глеб
19.06.2018
03:12:24
ну назови рантайм языка стандартной либой и тоже самое получишь. или сахара не хватает?
не-а. библиотеку можно заменить. язык - нет. но и степень оптимизации при вынесении на уровень языка на порядки выше

Как CAS но другой, и потом уже в 90-е было доказано математиками что он не позволяет неблокирующий софт писать
не готов аргументировано ответить. в любом случае, всё развивается, пока живо

Denis
19.06.2018
03:13:55
не готов аргументировано ответить. в любом случае, всё развивается, пока живо
Ну вот оно как бы было живо, по всем теориям, а по факту - нет

Таков был уровень "теории"

Admin
ERROR: S client not available

Глеб
19.06.2018
03:25:48
нет. это была недостаточность практики

Denis
19.06.2018
04:19:45
Почему не добавляется/обновляется поле some_key? https://gist.github.com/denizzzka/423d6140139813ae58d3030fe748e9d0

монга злоебучая

если убрать $set то всё работает (перезаписывается весь документ)

9 часов потратил на это

Виталий
19.06.2018
05:40:41
Всем привет. Подскажите , кто работает под dlangIDE? Пытаюсь установить по инструкции в archlinux и в OS X, не получается?

Ievgenii
19.06.2018
06:55:27
Виталий
19.06.2018
07:25:37
Спасибо. У вас какая ос?

Google
Ievgenii
19.06.2018
07:39:34
Сижу учу GO по работе

Какое же оно GOвно...

Виталий
19.06.2018
07:44:31
А чего его учить? Я через неделю стал на нем писать после установки на комп)))

Только он падла многословный и узкопрофильный

Ievgenii
19.06.2018
07:47:04
Та я его первый раз в глаза вижу

И он мне уже не нравится

Виталий
19.06.2018
07:49:20
А у меня на него были большие надежды) сейчас напишу серверную часть на нем и в спокойной обстановке буду на D абсолютно все переписывать. А то сервер на го, десктоп-админка на nwjs, клиент на python. Вначале думал что все будет на го

Dmitry
19.06.2018
07:57:37
Да Го уж слишком многословный

Виталий
19.06.2018
07:57:40
На клиенте мп3 плейер на го не завёлся (raspberry pi), либо какие-то замедленные биндинги к популярным библиотекам, а мне надо потому что клиентские приложения раскиданы по всему городу и где-то даже в тех местах что стоять невозможно не то что сидеть. Десктопный вариант стоял выбор между gtk, qml или sciter. Функционал портирован не полностью на го. И это какой-то ад работать с десктопом в го все что сложнее хелло ворлд. Полноценный хтмл делать не хотел дабы взаимодействие шло по restfull api, то есть не хотел заморочек с кроссбраузерностью и хотел максимально уменьшить трафик... вообщем го поёжился только на сервере. Но так код некрасиво смотрится, особенно когда видишь его в справнее с D.

Виталий
19.06.2018
08:19:41
Можно было бы все на питоне, но жутко захотелось нормально скомпилированная прога)

Ievgenii
19.06.2018
08:20:11
)

Доступ к полям структуры может быть получен через указатель на структуру. Чтобы получить поле X структуры, когда у нас есть указатель на структуру p, мы можем написать (*p).X. Однако такая запись громоздка, поэтому язык позволяет нам просто писать p.X, без явного разыменования.

В D так же и это, черт возьми, удобно!

Без "." и "->" тебе

А всегда "."

Виталий
19.06.2018
08:46:12
“If err != nil” - через какое-то время начнёт выбешивать)

Ievgenii
19.06.2018
08:48:49
)))

Та там половину уже начинает бесить

Но то мои личные закидоны

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