
Pavel
22.08.2017
09:54:32

qwerty
22.08.2017
09:55:20
Тогда о чем переживать? Просто проблема как мне видится не в том, что у нас что-то медленно работает. А в том, что просто не работает)

Pavel
22.08.2017
09:55:27
Но я не очень в курсе как там nodejs внутри архитектурно устроен, вроде его вылизывали до невозможности и он стал почти компилируемым, настолько там байткод оптимизирован в движке

Dmitry
22.08.2017
10:46:35
Короче он может дохнуть из-за того что коннекшены не закрвыаются? Как-то проверить это можно?

Google

Pavel
22.08.2017
10:55:21
Попробуй через apache benchmark завалить туда в него сразу несколько сотен тысяч запросов в 1000 потоков

Ievgenii
22.08.2017
16:09:18

Stepanos
22.08.2017
16:43:12
и перейти на spring :)

Ievgenii
22.08.2017
16:57:08
Нужно что-то самим сделать. Достойную замену

Stepanos
22.08.2017
17:08:00
а hunt не ковьіряли?

Ievgenii
22.08.2017
17:10:56
Нет
Наличие чего-то хорошего, не повод не делать что-то своё!)

Dmitry
22.08.2017
18:14:55
Hunt дико ключный

Pavel
22.08.2017
18:15:18
что за hunt?

Dmitry
22.08.2017
18:16:13
фреймворк типа вайба

Stepanos
22.08.2017
18:16:34
ну он MVC

Dmitry
22.08.2017
18:33:50

Pavel
22.08.2017
18:45:50
Нет предположений, надо разбираться )

Google

Pavel
22.08.2017
18:46:07
Причем код там достаточно захитренный, полностью до конца его понимает только Людвиг
Кстати у libasync тоже наблюдалась подобная бага, она попроще, может стоит на ней воспроизвести

Eto
22.08.2017
18:53:53

Ievgenii
22.08.2017
18:55:25
Они уже годами отлажены
И работают хорошо

Pavel
22.08.2017
18:56:00
libevent не умеет epoll же вроде?
Или это абстракция?

Ievgenii
22.08.2017
18:56:14
По-моему умеет
http://libevent.org/

Pavel
22.08.2017
18:56:56
Просто libasync написан полностью на D что повышает его пафосность.

Ievgenii
22.08.2017
18:56:58
Currently, libevent supports /dev/poll, kqueue(2), event ports, POSIX select(2),Windows select(), poll(2), and epoll(4).
Делайте драйвер и потом, когда он будет стабильный, меняйте дефолтный драйвер на него

Maxim
23.08.2017
03:50:21

Ievgenii
23.08.2017
07:32:18
Возможно. Но он реально течёт...

Dmitry
23.08.2017
07:34:25
У вайба они сменные? Менять их можно?

Maxim
23.08.2017
07:37:52
за файберы, вроде, сам вайб отвечает, а libasync просто вызывает делегат, когда что-то случается
https://github.com/rejectedsoftware/vibe.d/tree/master/core/vibe/core/drivers — это вот все, поверх чего vibe может работать

Google

Maxim
23.08.2017
07:40:59
По сути, libasync2 и libevent. До появления libevent по умолчанию использовался libasync2

Ievgenii
23.08.2017
09:21:51

Maxim
23.08.2017
09:22:29
да, async и event местами перепутал)

Ievgenii
23.08.2017
09:22:47
:)

zk
23.08.2017
11:33:18
скиньте кто фотку где Александреску сидит и все указывают на него

qwerty
23.08.2017
11:46:24
на стену повесить?)

Oleg
23.08.2017
11:46:24

qwerty
23.08.2017
11:46:43
это было на dconf '14 кажется

Eto
23.08.2017
11:58:44
Я кажется её видел. Но найти не получается.

Oleg
23.08.2017
12:03:42
Вы про нее?

Eto
23.08.2017
12:05:56
Хм. Может быть.

Dmitry
23.08.2017
13:30:29
Кстати, а это нормально что приложения на Java когда падают такую пежню прям на страинцу кидают:
хотя вайб вроде бы тоже правда необработанные исключения так кидает
Caused by: java.lang.NullPointerException
Указательно в java O.o

Eto
23.08.2017
13:32:46
Ну, это нормально, если оно так локально кидает. Но кидать так любому посетителю в сети — чревато проблемами в безопасности.

Dmitry
23.08.2017
13:33:25
Сберанк онлайн этим грешил раньше..))
https://dlang.org/blog/2017/08/23/d-as-a-better-c/
На reddit хороший коммент о том, что этот режим Все фишки Ди убивает.
"But if you want to use C (or a "better C"), why would you care about D's multi-paradigm features and libraries? And if you're writing better C, why would you care about D's libraries if you can just as easily use C's many libraries. The actual reason nobody writes in D's betterC is that until shortly, some basic language features required hacks in order to make things work."

Google

Pavel
23.08.2017
15:52:22
Если я передаю string в аргументах, то она копируется или ссылка передается?

Eto
23.08.2017
15:52:34
Ссылка.
Копируется slice.

Pavel
23.08.2017
15:53:23
?

Eto
23.08.2017
15:54:05
string это массив. А массивы можно представить, как структуру с ptr и length полями. Эта структура копируется. А ptr естественно остаётся неизменным.

Dmitry
23.08.2017
15:59:03
C надо просто закопать и забыть вообще. А прежде это сделать с С++.

Eto
23.08.2017
16:02:27
Сколько на codewars с C разбираюсь... Никогда ещё не хотелось закопать этот язык. Улучшить — да, постоянно.

Денис
23.08.2017
16:12:55

Dmitry
23.08.2017
16:43:22
Кстати, а чем распознавание образов отличается от классификации?

Admin
ERROR: S client not available

Eto
23.08.2017
16:45:02
(Забавно. Нейронная сеть спрашивает помощи у других сетей в классификации.)

Maxim
23.08.2017
17:16:44
а зачем это С закапывать? Ему же альтернатив нет)

Dmitry
23.08.2017
17:17:19
Rust?

Maxim
23.08.2017
17:17:44
да ну нет, раст — это пиздец в кубе, простите за мой французский)
Си — это такой слегка высокоуровневый ассемблер, в нем, по сути, кроме структур, даже абстрактных, оторванных от железа типов нет

Ned Ogl
23.08.2017
17:19:31

Maxim
23.08.2017
17:19:40
это как?)

Ned Ogl
23.08.2017
17:19:53
Потому что он уёбищен по своей сути, там слишком всё compiler-defined

Maxim
23.08.2017
17:20:25
да ладно, чего там в типах compiler-defined?

Ned Ogl
23.08.2017
17:20:33
Изза этого приходится делать какие-то извороты, и если ты хочешь точно байт, тебе нужна stdint.h и uchar_8t

Google

Ned Ogl
23.08.2017
17:20:56
В D с этим несказанно проще. Хочешь байт, бери byte

Maxim
23.08.2017
17:21:40
ну так фишка в том, что размер байта, шорта и инта от архитектуры может зависеть)
собственно, эим и объясняется такой зоопарк в си
в ди, конечно, проще для программиста все это сделано, но не так однозначно ложится на архитектуру
берем, например тип long, в Си его длина будет зависеть от архитектуры, а в D, она будет всегда 64 бита
казалось бы, проще, но тогда для x86 компилятора D придется реализовать какого-то рода длинную арифметику

Ned Ogl
23.08.2017
17:30:48
x86 умер и нинужен
Соглашусь с тем, кто писал это выше около 5 дней назад

Maxim
23.08.2017
17:34:25
Ну ок, тогда заменим это на 32-битные системы)
А ещё есть, о боги, 16-битные, и их используют)

Ned Ogl
23.08.2017
17:36:24
Просто, видишь, ли, ОСь пилю
На D
Ну как пилю... Экспериментирую
И с D намного удобнее

Maxim
23.08.2017
17:38:49
не спорю, удобнее, но это не значит, что Си не нужен)

Ned Ogl
23.08.2017
17:39:04
Правда, я нихера не понимаю, что там работает в рантайме, что просто в стдлибе, а что может работать freestanding
Читал даже про version freestanding, но все равно не понял
Не знаю, правильно ли это, но приходится компилиться с параметрами -c -betterC и линкаться самому
Это нормально на первых этапах. Меня волнует другой вопрос: когда это всё закончится?
Так рано или поздно придётся придумывать свою систему сборки ядра
Не мейк, не смейк, а аналог Kbuild линуксовского