
qwerty
08.09.2017
09:32:51
да(

Dmitry
08.09.2017
09:34:20
Кто-то писал, что ревьюверы упорно в книге по порограммированию заменяли
2*2
на
2x2
типа так правильнее писать

Eto
08.09.2017
09:42:19
:)

Andrey
08.09.2017
10:25:47
а typeof для незаиниченного массива не работает же?

Google

Andrey
08.09.2017
10:28:12
пытаюсь сделать что-то типа - arr[0].typeof typeof(arr[]) - не получается

Andrey
08.09.2017
10:37:43
зачем?

Andrey
08.09.2017
10:39:55
например, в функцию передается массив как шаблон (можно такое сделать?) и в зависимости от того, какой тип элементов массива, в функции делаются разные действия

Dmitry
08.09.2017
10:40:44
Почему в режиме betterC классы недоступны?

Andrey
08.09.2017
10:40:59
void fun(T)(T[] arr) { static if (is(T==char)) {} else {} }

Andrey
08.09.2017
10:41:25
о как, спасибо большое
и еще один вопрос задам ,повторно, мб, есть ответ на него. когда запускаю dmd -Dddoc - понятно ,что документация будет генериться в каталог doc. Но она генерится без индексного файла, просто по каждому модулю - отдельный файл. Можно ли как-то задать так, чтобы в один файл вся документация писалась по всем моудулям?

Andrey
08.09.2017
10:45:09
вроде народ свои велосипеды использует

Dmitry
08.09.2017
10:45:14
э... не уверен, но возможно сторонние генераторы доков помогут

Andrey
08.09.2017
10:46:03

Andrey
08.09.2017
10:46:07
с велосипедами понятно (: думал, что, мб, как-то =из коробки= можно. дело-то очевидное

Maxim
08.09.2017
10:46:30

Andrey
08.09.2017
10:47:25
еще нету Object, который лежит в рантайме

Google

Dmitry
08.09.2017
10:47:30
а в чем фишка? почему требуют?

Maxim
08.09.2017
10:47:41
более того, в BetterC недоступны scope(exit), если функция возвращает значение, и деструкторы структур тоже недоступны, что очень удручает)

Andrey
08.09.2017
10:48:39
GC не требуют если юзать emplace. scope(exit) работает если функция nothrow
тогда не создается try catch finally

Maxim
08.09.2017
10:51:16
Error 42: Symbol Undefined __d_framehandler
это scope(exit)

Andrey
08.09.2017
10:51:42
а функция nothrow?

Maxim
08.09.2017
10:53:25
ога
DMD32 D Compiler v2.076.0
винда, линукса сейчас под рукой нет, проверить не могу)
я так понимаю, для скоупа и деструкторов структур он использует D runtime
про структуры вообще обидно, никакого raii не сделать

Andrey
08.09.2017
10:57:59
http://forum.dlang.org/post/jovj99$kv5$1@digitalmars.com

Maxim
08.09.2017
11:03:35
мы же вот про этот случай говорим, да?

Andrey
08.09.2017
11:09:53
nothrow перед функцией точно работает?

Maxim
08.09.2017
11:11:58
должно

Ned Ogl
08.09.2017
11:14:06

Pavel
08.09.2017
11:22:28
Да я не пушил на гитхаб даже. В режиме черновика. Сегодня вечером могу запушить и расшарить тебе доступ

Dmitry
08.09.2017
11:43:55
тут есть две переменных:
//writeln("Virtual memory used by process: ", memInfo.usedVirtMem);
//writeln("Physical memory used by process: ", memInfo.usedRAM);
первое это как я понимаю с учетом выгруженной в своп памяти или как?

Google

Dmitry
08.09.2017
11:44:06
Речь про потребляемую процессором память

Ned Ogl
08.09.2017
12:04:42

Pavel
08.09.2017
12:07:32
А, их нет. Это моя первая статья будет

Ned Ogl
08.09.2017
12:12:05
Кхм
Жду с нетерпением

Pavel
08.09.2017
12:13:37
Там ничего про разработку осей нету )

Ned Ogl
08.09.2017
12:14:12
Да мне и сам D интересее
Он ведь развивается
Может, у меня крутые пропозалы однажды появятся по нему

Oleg
08.09.2017
12:16:30

Maxim
08.09.2017
12:16:48
деструкторы?

Oleg
08.09.2017
12:16:57
Да

Ned Ogl
08.09.2017
12:16:58

Oleg
08.09.2017
12:17:02
Да

Ned Ogl
08.09.2017
12:17:15
Кхм, ну я проверю, че

Maxim
08.09.2017
12:17:19
я вот тоже на днях ковырялся, не работало, ни в линуксе, ни на виндах)

Oleg
08.09.2017
12:17:20
Все прочитали и никто не проверил
Это про scope
import core.stdc.stdio;
import core.stdc.stdlib;
extern (C):
T[] talloc(T)(size_t n)
{ return (cast(T*)malloc(T.sizeof*n))[0..n]; }
void tfree(T)(ref T[] arr)
{
free(arr.ptr);
arr = null;
}
void main()
{
auto x = talloc!int(10);
scope (exit) tfree(x);
foreach (i, ref v; x)
v = cast(int)i^^2;
foreach (i, v; x)
printf("x[%d] = %d\n", i, v);
}
До компа доберусь и для деструкторов скину код

Google

Maxim
08.09.2017
12:20:39
ну так про скоуп я так и сказал, как только функция будет возвращать значение, все, скоуп перестанет работать)

Dmitry
08.09.2017
12:24:03
почему следующий код при добавлении toLower начинает выпадать?
если убрать, то все норм
вот пример вывода без toLower:

Ned Ogl
08.09.2017
12:26:22
Ты это с винапи общаешься?

Dmitry
08.09.2017
12:26:33
нет, это тупо выпод консоли паршу

Maxim
08.09.2017
12:26:52
судя по ошибке, не UTF строка интерпретируется как UTF

Admin
ERROR: S client not available

Dmitry
08.09.2017
12:27:39
типа вывод в другой кодировке идет?

Pavel
08.09.2017
12:27:57
Задампи нулевой элемент и посмотри что там выдается

Dmitry
08.09.2017
12:28:22
@chebotarevp по идее первая строка это:
"Имя образа","PID","Имя сессии","№ сеанса","Память","Состояние","Пользователь","Время ЦП","Заголовок окна"

Pavel
08.09.2017
12:28:49
Задампи и увидь) Не надо ванговать

Dmitry
08.09.2017
12:29:06
не, я же выводил ее уже

Pavel
08.09.2017
12:29:27
Если все будет ок то распечатай строку по хексам, посмотри в каком-конкретно оффсете ошибка, потом иди в спеку UTF8 и читай там почему такой код некорректен
может тебе надо UTF16 применить тут

Dmitry
08.09.2017
12:30:14
м... походу проще скипнуть первую строку. В foreach это можно как-то красиво сделать?

Maxim
08.09.2017
12:30:31
ну вообще, если тем же far открыть строку, там быстро можно установить, что за кодировка)

Pavel
08.09.2017
12:30:40
А может действительно ты пытаешься применить toLower к результатут который не является строкой
Попробуй этот нулевой элемент вручную скопипастить в код и к нему применить toLower

Dmitry
08.09.2017
12:32:00
я боюсь что он при копи-пасте кодировку потеряет

Google

Dmitry
08.09.2017
12:32:08
foreach(line; result.splitLines().skip(1)) // как-то так можно?
dropOne помог)
перестало падать)

Andrey
08.09.2017
12:45:00

Dmitry
08.09.2017
12:45:15
А разница между просто dropOne?

Maxim
08.09.2017
12:45:19
да, виртуальная — это вся, зарезервированная поцессом, физическая — то, что сейчас в оперативке

Dmitry
08.09.2017
12:47:26
иными словами виртуальная это оперативка + выгруженная?

Maxim
08.09.2017
12:49:20
должно быть да)

Oleg
08.09.2017
13:05:07
блин
по всей видимости scope(exit) и деструкторы раобтают по одной схеме

Eto
08.09.2017
14:07:51

Ievgenii
08.09.2017
14:13:20
А чем режим betterC режим лучше обычного?

Dmitry
08.09.2017
14:13:33
С чистым си совместим
и все
можно писать без дишного рантайма

Ievgenii
08.09.2017
14:13:43
Хм...
Тоесть можно писать so и импортировать в прогу на С написанную?