@dlangru

Страница 93 из 719
Oleg
24.10.2016
04:39:49
О, еще попробуй GC.minimize();

Just
24.10.2016
04:40:43
Oleg
24.10.2016
04:40:53
Сработало?

Just
24.10.2016
04:41:05
ну вот на 3 мегабайта

Google
Just
24.10.2016
04:41:11
стало 112

Oleg
24.10.2016
04:41:32
А теперь попробуй на той штуке которая Node считает

Только GC.disable(); мне кажется лишним

minimize по идее сразу после collect вызывать

Just
24.10.2016
04:43:12
А теперь попробуй на той штуке которая Node считает
не 3, а 5 даже. из 117 до 112, но это ж все равно не существенно

disable убрал еще раньше

Just
24.10.2016
04:44:20
щас

Oleg
24.10.2016
04:44:54
Я сейчас посмотрю, если в D строки дедуплицируются то это оно

Just
24.10.2016
04:46:02
хм, без минимайза 64 мб, с ним - 8. именно столько, сколько и должно быть

Oleg
24.10.2016
04:46:22
Это если string убрать?

Google
Just
24.10.2016
04:46:44
да, это если int[int] aa;

string[int] aa тоже ведет себя адекватно с минимайзом

выходит что проблема, только если он ключ

Oleg
24.10.2016
04:48:32
Ага

Тогда стоит брать не строку, у хеш строки

Just
24.10.2016
04:50:02
хотя, стоп, минимайз существенно память то минимизурует, но эти структуры вообще не должны ее занимать после него. это не совсем выход

Oleg
24.10.2016
04:50:26
import std.digest.crc; Node*[int] nodesListTemp; nodesListTemp[crc32Of(t.src)]=src;

Just
24.10.2016
04:51:05
там в статье на хабре описывается, как использовать malloc из C, что бы помимо уборщика память самим виделять

Alex
24.10.2016
12:00:00
как выделить код

string[int] aa

string[int] aa

qwe
24.10.2016
12:00:30
внутри двух `

Alex
24.10.2016
12:00:44
string[int] aa

ооо спасибо

Just
24.10.2016
12:00:50
как сделать find в RedBlackTree структур? struct BinaryArray(K, T) { struct Pair { K key; T value; } auto data = new RedBlackTree!(Pair, "a.key < b.key"); bool isSorted = false; int insertCount = 0; ptrdiff_t find(K key) const { auto res = data.lowerBound(K); if(res){ return res; } else{ return -1; }

или тремя ` , если код многострочный

три перед кодом и три после

Alex
24.10.2016
12:02:39
бблагодарю

Dmitry
25.10.2016
06:56:52
Ребят, а в чем фишка vibed-core The I/O core library of vibe.d. чем она от stdio отличается?

и в чем суть наличия nothrow зачем нужно помечать, что функция исключений не бросает

Google
Sergey
25.10.2016
07:41:25
иногда просто полезно знать, что функция не бросает исключений. И в таком случае нет необходимости использовать лишние try-catch. А nothrow не просто информирует, но еще и гарантирует это

а еще это полезно для оптимизации, которую делает компилятор

Pavel
25.10.2016
07:55:03
Ребят, а в чем фишка vibed-core The I/O core library of vibe.d. чем она от stdio отличается?
Я могу ошибаться, но в vibe.d фишка в том что все IO там асинхронное, а в стандартной библиотеке нет.

Что огромный минус, например по сравнению с go

Dmitry
25.10.2016
07:55:23
т.е. хороший программист помечает функции и другой читает эти пометки?

Pavel
25.10.2016
07:56:31
Не только читает, еще же компилятор может сделать определенные выводы в процессе анализа

Если все-же где то по коду может быть кинуто исключение, компилятор скажет что непорядок

Dmitry
25.10.2016
08:00:47
имеется ввиду умный компилятор, а точнее какая-то штука покажет, что мол "в коде есть необработанное исключение" так?

Sergey
25.10.2016
08:03:47
имеется в виду, что если в теле функции, помеченной данным атрибутом будет по факту выбрасываться исключение, то программа просто не скомпилируется. Кроме того, компилятор запретит вызов любых не nothrow функций вне try-catch. А вот если в такой функции исключения не будут выбрасываться, то программа скомпилируется и будет работать чуточку быстрее на вызовах данной функции

и еще есть момент: речь идет отлько об исключениях, т.е. Exception и наследники. Другие наследники Throwable (например Error) вполне могут быть брошены в nothrow функции

Dmitry
25.10.2016
08:16:19
так а safe гарантирует что функция аккуратно с данными работает?

Sergey
25.10.2016
08:16:34
по идее, да

Sergey
25.10.2016
08:16:41
по факту, пока что не на 100%

но они к этому идут

Dmitry
25.10.2016
08:17:03
а где критерий то что работает как надо?

Sergey
25.10.2016
08:17:30
с .NET не приходилось работать?

Dmitry
25.10.2016
08:17:36
очень мало(

Sergey
25.10.2016
08:17:53
в общем, критерий - это гарантия, что ты не сможешь выстрелить себе в ногу

даже если очень захочешь

Dmitry
25.10.2016
08:18:14
можно пример каой-то?

Google
Dmitry
25.10.2016
08:18:21
подобного стреляния

Я тут конструкцию: nothrow @safe { try { увидел т.е. получается функция nothrow обрабатывает исключения внутри самой себя так?

Sergey
25.10.2016
08:19:56
в том числе и так

в safe, если не ошибаюсь, запрещено использование указателей

так как баловство с указателями и есть самый простой способ выстрелить себе в ногу

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

нельзя использовать объекты типа union, включающие ссылочные типы

кто-то здесь говорил, что пользуется vs code. От чего зависит возможность использования навигации по символам (ctrl+shift+O)? У меня в d файлах она не работает, а очень хочется, чтобы работала

@andrushaTheSlayer вопрос выше, судя по всему, к вам. У вас есть/была эта проблема? Если есть или была, то пробовали как-то решать?

Admin
ERROR: S client not available

Sergey
25.10.2016
15:00:04
Расширение: D Languge 0.8.0 (dlang-vscode)

Денис
25.10.2016
15:43:23
@andrushaTheSlayer вопрос выше, судя по всему, к вам. У вас есть/была эта проблема? Если есть или была, то пробовали как-то решать?
Сейчас попробовал, да у меня работает. Правда я code-d использую расширение. Вообще с ним просто местами магия: написал функцию myFunс(T)(), которая принимает именно тип данных и его парсит там в нужный мне в формат в компайлтайме. В другой функции у меня определена конкретная структура С, которую я потом передаю в myFunc. Ну так вот, в редакторе во время написания кода в myFunc он подсвечивал мне ошибки, выполняя какие-то куски компайл-тайма, дескать для поля x структуры C там этот метод не скомпилиться. Уж не знаю dcd настолько мощный, или плагин сам что-то мутит, но воспринял я это просто как какую-то магию.

Sergey
25.10.2016
15:53:32
спасибо. Попробую code-d

хотя, в этих расширениях, вроде бы, одни и те же решения используются

поставл code-d, посик через @ так и не заработал

и еще почему-то имена классов не подсвечиваются при объявлении переменных. В другом раширении так же было. Иными словами ничего не изменилось

А вы на линуксе, или на винде?

Oleg
25.10.2016
16:21:44
Говорите vscode тащит?



Sergey
25.10.2016
16:22:18
ну, есть в нем свои маленькие прелести

Google
Oleg
25.10.2016
16:22:21
Какое из них?

Sergey
25.10.2016
16:22:30


Oleg
25.10.2016
16:23:16
ну, есть в нем свои маленькие прелести
VSCode вообще хорошо взлетело, самые лучшие плагины под неё. Atom как-то вообще даже не включаю никогда..

Sergey
25.10.2016
16:23:22
то, что успешно использует Денис Сычев. Я неуспешно

Oleg
25.10.2016
16:23:49
то, что успешно использует Денис Сычев. Я неуспешно
Code-d needs its backend, workspace-d. Go there and follow the installation instructions. Installing it will automatically detect or install the necessary D tools (dcd, dfmt, dscanner).

Sergey
25.10.2016
16:23:49
мне очень нравится pick code

Sergey
25.10.2016
16:24:10
да, да. я это все сделал

установил, добавил в PATH все, как полагается

дебаг настроил

Oleg
25.10.2016
16:26:01
У dub нету инсталлера под убунту? Пфф..

Sergey
25.10.2016
16:27:25
быть такого не может

sudo apt-get install dub

из документации

Oleg
25.10.2016
16:28:30
На офф сайте такого не написано

Sergey
25.10.2016
16:28:37
это с оффсайта

Oleg
25.10.2016
16:28:54
Ооо, нашел

Grigirii
25.10.2016
16:29:02
а он появился в официальном репозитории? или с подключением их?

Oleg
25.10.2016
16:29:10
А на главной написано On other systems, the only thing that you may want to do, other than extracting the archive, is to place the dub executable somewhere in your PATH so that you can call it from anywhere.

sudo apt-get install dub
А dub мне так установит dmd?

Sergey
25.10.2016
16:29:55
на федоре я, вроде бы, тоже с репозитория устанавливал. правда, не уверен, с официального ли

Oleg
25.10.2016
16:30:25
А dub мне так установит dmd?
Поставило мне GDC, ну ладно

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