
Dmitry
13.04.2016
13:33:10
а вот это не то?
https://github.com/nakagami/firebirdsql/commit/5e98f8226dfd14eeaf6b9871903bf6496fab6eec#diff-c69002d8036f4dc38f422fb1aaab54c6L907
так, может PyD поможет? На сколько реально будет его заюзать?
О, нашел что оно умеет http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/html/langrefupd25-hexbinstrings.html
Решил попробовать с Питоном. Что-то тоже тухло

Google

Dmitry
13.04.2016
18:42:28
Вот пример как надо:
http://www.firebirdsql.org/file/documentation/reference_manuals/reference_material/html/langrefupd25-hexbinstrings.html
Вот сам драйвер http://www.firebirdsql.org/file/documentation/drivers_documentation/python/fdb/getting-started.html
ему упорно не нравится что я данные в формате:
x'39393'
пытаюсь вставить
В C# есть stream. Как я понимаю это обобщенный интерфейс для работы с байтовыми потоками. У ди какой аналог?

Pavel
14.04.2016
18:53:00
https://dlang.org/phobos/std_stream.html

Dmitry
14.04.2016
18:53:42
его я видел, а что на замену пришло?

Pavel
14.04.2016
18:55:12
не знаю, но возможно что-то можно нарыть в этой теме http://forum.dlang.org/thread/vnpriguleebpbzhkpdwi@forum.dlang.org?page=1

Dmitry
14.04.2016
18:55:47
вообще где эти streams полезны?

Pavel
14.04.2016
19:05:23
Если ты про контекст блобов в базе данных, то они могут быть полезны при асинхронной записи. Из стрима можно прочесть определенное количество данных, незаблокировавшись. И все это с удобным единообразным интерфейсом.
Вообще концепция стримов она во всем, это очень хорошая абстракция

Dmitry
17.04.2016
16:14:03
Ребят, вот такой вопрос. Как красивее сделать. Нужно чтобы в прога останавливала свое выполнение. Для этого readln использую.
Вопрос. Как сделать так, чтобы readln работал только если какой-либо флаг установлен? Чтобы глобально можно было включать отключать?

Max
17.04.2016
17:53:17
https://dlang.org/spec/version.html#version
Если нужно опр. флаг в рантайме – синглтон

Dmitry
17.04.2016
17:58:12
А, на счет версий логично

Google

Dmitry
17.04.2016
18:12:45
Есть идеи почему следующий код, если расскомментить логгер выпадает с исключением?
if(!postprocessor.exists)
{ writeln("Путь до постпроцессора не существует"); //fLogger.fatal("Путь до постпроцессора не существует");
}
object.Error@(0): A fatal log message was logged
—------------—
0x00572156 in D3std12experimental6logger4core6Logger6__ctorMFNfE3std12experimental6logger4core8LogLevelZ12__dgliteral2MFNaNbNfZv
0x004A3CE5 in void parseconfig.Config.parseconfig() at D:\code\GeoDataLoaderNew\source\parseconfig.d(157)
разве логгер должен бросать исключение?
fatal поменял на info и все прошло, но почему не ясно
Кому интересно. Я тут разобрался что такое жирные указатели. Это указатель + размерность данных на которые он ссылается.

Alex
20.04.2016
13:54:16
http://www.redox-os.org/
ого раст
ну чо
может на ди свою напишем?

Max
20.04.2016
13:55:09
Я как минимум уже 2 на д видел
Смысловая нагрузка уровня реактос, а то и ниже

Alex
20.04.2016
13:56:38
чет не найду

Max
20.04.2016
13:57:19
Xomb kernel загугли

Alex
20.04.2016
14:01:26
XOmB is an exokernel operating system being written by students at the University of Pittsburgh
хорошая дипломная

@proDOT
20.04.2016
14:09:39

Dmitry
21.04.2016
15:09:45
Кто там про Андроид спрашивал? http://forum.dlang.org/thread/cdekkumjynhqoxvmgjze@forum.dlang.org

Pavel
27.04.2016
12:47:48
Господа, а то что на новом dlang.ru половина страниц не работает это нормально?

Dmitry
27.04.2016
12:51:09
Пока что да, идет переделка сайта...
к сожалению быстрее никак

0x9d8e
27.04.2016
13:06:40
Зачем же на боевом то править :)

Google

Dmitry
27.04.2016
13:07:46
да к сожалению он уже давно в таком состоянии и фактически уже полтора года непригоден для использования

Pavel
27.04.2016
14:58:36
Давай переделаем )

Dmitry
27.04.2016
15:01:53
К сожалению двиг это не только мой проект, я больше как организатор. Так что пока приобщить к великому делу не могу, хотя бы хотелось)

Max
27.04.2016
15:05:19
Так открой исходники на гитхабе, приобщится вообще любой сможет

Pavel
27.04.2016
15:10:50
ну можно конечно пытаться все это на d написать героически, но цирк будет еще тот :) Хотя и челендж тоже неплохой.

Игорь
27.04.2016
15:48:02
А сейчас на каком языке?

Pavel
27.04.2016
15:55:08
вроде говорили что на asp.net

Dmitry
27.04.2016
16:06:16
Да, именно на нем

Вячеслав
27.04.2016
18:59:15
Кто-нибудь знает какая кодировка в excel по умолчанию для csv?
UTF-8, UTF-16, KOI8-R, Windows-1251, ANSI не катят... Все равно

Dmytro
27.04.2016
20:03:35
1251
UTF-8 можно но через импорт.

Dmitry
04.05.2016
13:11:33
Так, я тут с указателями туплю
void questions(HTTPServerRequest req, HTTPServerResponse res)
{
Json questions = req.json;
res.writeBody("Hello, World!", "text/plain"); // FIXME
// user statistic
logInfo(req.peer); //IP
&sendVisitorInformationToArangoDB(req.peer); // просто данные переслать сюда и вернуться
sendQuestionsToArangoDB(questions); // чтобы дойти до этой функции
}
void sendVisitorInformationToArangoDB(HTTPServerRequest req) // только для тех кто прошел тест по идее. Нужно убедиться что только их инфа будет храниться
{
}
вjпрос по функции sendVisitorInformationToArangoDB

Eto
04.05.2016
13:12:24
А что ты пытаешься сделать?

Dmitry
04.05.2016
13:13:03
ну мне нужно просто данные данные в функцию sendVisitorInformationToArangoDB передать и продолжить дальше не останавливаясь

Eto
04.05.2016
13:14:31
Так ведь просто sendVisitorInformationToArangoDB(req);. Или ты хочешь чтобы процедура параллельно работала?

Dmitry
04.05.2016
13:14:49
чтобы параллельно

Eto
04.05.2016
13:15:27
Тогда надо поток стартовать.

Dmitry
04.05.2016
13:16:03
а понял, пасибо

Google

Eto
04.05.2016
13:17:25
Хотя, если это на vibe.d, то по идее можно стартануть отдельную задачу. Параллельности не будет, но по крайней мере не придётся ждать выполнения.

Dmitry
04.05.2016
13:18:01
так а чем это будет от поотка отличаться?
ты про Task ?

Eto
04.05.2016
13:18:21
Да, про Task.

Dmitry
04.05.2016
13:19:32
так?
Task runTask;
runTask(sendQuestionsToArangoDB(questions)); // чтобы дойти до этой функции
тут есть еще какой-то
runWorkerTask

Eto
04.05.2016
13:21:16
Вот как-то так:
runTask(toDelegate(&sendVisitorInformationToArangoDB), req);
Тебе ведь надо, чтобы sendVisitorInformationToArangoDB выполнился "где-то там"?

Dmitry
04.05.2016
13:21:40
ну да, чтобы в фоне

Eto
04.05.2016
13:22:29
Тогда попробуй, как я прислал.
toDelegate в std.functional лежит.

Dmitry
04.05.2016
13:24:49
заработало, а почему req передается не в параметрах функции, а после закрывающих скобок?
у меня почему-то без доволнительного импорта заработало

Eto
04.05.2016
13:25:27
Потому что runTask сам вызовет передаваемую функцию.

Dmitry
04.05.2016
13:25:27
*дополнительного

Eto
04.05.2016
13:25:41
Наверное уже что-то импортирует.
Особенно, если у тебя не 2.071 версия компилятора.

Dmitry
04.05.2016
13:26:10
да именно
в ней неявный импорт сделали?
тоесть тут runTask вызывает функцию и уже сам передает в нее верно?
и вообще имеет ли смысл каждую операцию с БД в вайбовский таск превращать?

Google

Dmitry
04.05.2016
13:41:56
нужно ли yield() вызывать тогда в конце каждой функции?

Eto
04.05.2016
13:44:25

Dmitry
04.05.2016
13:46:49
тоесть каждая функция автоматом ассинхронна?

Eto
04.05.2016
13:48:41
В некотором роде. Это у тебя сервер?

Dmitry
04.05.2016
13:54:31
да
браузер шлет на него JSON

Eto
04.05.2016
13:54:50
Это не классическая асинхронность, которую все знают с JavaScript. Это файберы. Аналог потоков, только в одном потоке.
Ты пишешь обычный синхронный код. Который на I/O делает yield — передаёт управление другому файберу. Так управление постоянно прыгает туда-сюда.

Pavel
04.05.2016
13:55:28
Разве это не и есть классическая асинхронность?
И чем отличается файбер от корутины от green thread ?

Eto
04.05.2016
13:56:55

Pavel
04.05.2016
13:57:41
Я не в курсе как там, вроде там event loop крутится неявно как то, и все на колбеках.

Eto
04.05.2016
13:58:22
Да, event loop всем мать.

Dmitry
04.05.2016
14:20:42
. Который на I/O делает yield — передаёт управление другому файберу
руrами его вызывать надо в конце функции?

Eto
04.05.2016
14:21:15
Нет.