
Maxim
19.02.2018
06:54:00

NullSanya
19.02.2018
06:54:10
Хотелось бы visual-d использовать, но у него странный курс развития

elias
19.02.2018
06:54:45
а есть нормальный туториал - работа с языком D на vscode (для тех, кто не работал c vscode)?

Google

NullSanya
19.02.2018
06:55:06

elias
19.02.2018
06:55:18
windows

Maxim
19.02.2018
06:55:49
да мне кажется, хватит туториала для начинающих в vscode

NullSanya
19.02.2018
06:56:01
Как у меня например
и да, ldc2 тогда надо ставить
и workspace-d лучше самому компилировать
Как и само расширение
Кстати, code-d у меня сегодня запускал кучу dmd
ЗАчем я так и не понял

Maxim
19.02.2018
06:57:41
хм, я как-то далёк от виндовых заморочек, у меня основная система для жизни — kubuntu
но настойчивость, с которой сообщество D плюет на Windows, удивляет)

NullSanya
19.02.2018
06:58:33

Google

NullSanya
19.02.2018
06:58:42

Maxim
19.02.2018
06:58:51
шаманство на шаманстве шаманством погоняет

NullSanya
19.02.2018
06:59:04
Выпилили бы уже поддержку omf и не требовали бы vs для coff
и радости бы не было предела

Maxim
19.02.2018
07:00:12
это огромную работу проделывать надо, как говорит Уолтер — так исторически сложилось, что все инструменты Digital Mars заточены под OMF

NullSanya
19.02.2018
07:00:12
типа линковщик и библиотеки из mingw
Мда... это печалит

Evgeny
19.02.2018
07:08:42

NullSanya
19.02.2018
07:09:02
в rust допустим есть такая возможность

Evgeny
19.02.2018
07:09:26
ну и какая разница? один хрен нужен сторонний линкер
проблема, что в ведре нет штатного компилятора
с штатным же линкером

NullSanya
19.02.2018
07:10:13
Ну mingw куда проще поставить, чем vс++ без vs

elias
19.02.2018
07:11:15
mingw разный бывает - новичков может отпугнуть обилие модификаций.

Evgeny
19.02.2018
07:11:47
если GDC впилят в GCC, то есть шанс, что в мингве будет GDC

Maxim
19.02.2018
07:12:06
а еще VS Community никак не хочет заводиться в wine

Pavel
19.02.2018
07:13:55
и не захочет)

Google

Maxim
19.02.2018
07:15:22
не, ну может, конечно, наступит когда-нибудь такой момент, ходят слухи, что в Wine 3.0 кому-то это удавалось сделать)

Dmitry
19.02.2018
07:46:43
Ради линкера ставить Visual Studio не нужно, достаточно поставить http://landinghub.visualstudio.com/visual-cpp-build-tools
DLangIDE я недавно пытался на винде использовать, месяц или два назад. Увы, текущая версия оказалась совершенно неюзабельной: через несколько минут после запуска она или виснет, или начинает дико тормозить и жрать проц (1-2 ядра). Причем даже если не использовать - просто запустить и держать в фоне. Я подозреваю это из-за плохо встроенного dcd там. Раньше такого не было, вроде.

elias
19.02.2018
07:53:35

Dmitry
19.02.2018
07:54:40
Неа. Кажется, там такие issue уже упоминались.

Denis
19.02.2018
08:14:32

Evgeny
19.02.2018
08:19:26
Sublime Text 3 :D

Dmitry
19.02.2018
08:40:13

Pavel
19.02.2018
08:41:25
Tuple - массив Variant-ов
Список, если точнее.

Dmitry
19.02.2018
08:42:37
Variant это обёртка над Tuple?

Pavel
19.02.2018
08:43:00
Обычно там Union.

Evgeny
19.02.2018
09:01:01
Tuple - это кортеж. По сути сахар для быстрого создания анонимных структур

Denis
19.02.2018
09:14:18
Гоню-с

Igor
19.02.2018
18:31:52
о, выпустили большой релиз dmd - 2.079.0

Denis
19.02.2018
18:40:44
бета же
The delete keyword has been deprecated.
Ну вот и всё...

Igor
19.02.2018
18:48:51
есть интересные и полезные фишки
Function parameters with default values are now allowed after variadic template parameters
прикольно, только недавно наткнулся на эту проблему

Denis
19.02.2018
19:01:11
и как оно догадается?

Google

Evgeny
19.02.2018
19:02:36
что догадается?

Denis
19.02.2018
19:03:38
Ну там пример вон дан https://dlang.org/changelog/2.079.0.html#default_after_variadic
пишу я предположим вызов:
log(int, string); // string тут в file пойдёт или как более левый аргумент?

Igor
19.02.2018
19:06:13
ну думаю что оно смотрит на типы и определяет - попадают типы последних переменные в вызове в типы переменных с дефолтными значениями в описании функции и если нет - относит их к variadic

Denis
19.02.2018
19:12:01
почему для простых типов (long, например) не работает (иногда?) конструкция типа:
i.someFunc();
?
если функция someFunc(long) существует

Evgeny
19.02.2018
19:13:09
вот приятное изменение:
https://dlang.org/changelog/2.079.0.html#minimal_runtime
наконец-то какие-то подвижки

Denis
19.02.2018
19:13:36
давно пора было ага
контроллеры ждут

Pavel
19.02.2018
19:15:50
А где можно почитать как свой рантайм делать?

Evgeny
19.02.2018
19:26:48

Igor
19.02.2018
19:30:25
то есть явно я их указать никак не могу? Т.е. я хочу в вызов передать некие полученные откуда-то line и file - так не получится?

Evgeny
19.02.2018
19:39:23
Получится, если явно указать параметры шаблона:
log!(int, string)(10, "ssss", 256, "file.d")

Eto
19.02.2018
19:42:56

Igor
19.02.2018
19:43:20

Pavel
19.02.2018
19:43:46

Evgeny
19.02.2018
19:51:37
лично я все делал как обычно, но подсовывал линкеру свой скрипт, который резал весь рантайм. А нужные мне функции рантайма я просто определял где-нибудь в своих же исходниках.

Dmitry
20.02.2018
01:56:34

Google

Dmitry
20.02.2018
02:00:16
С тем же подходом что у Евгения.

Valeriy
20.02.2018
03:20:05
А кто и как решает какие изменения попадут в язык, а какие нет.
У D есть консорциум, стандарт?

Denis
20.02.2018
03:21:51
На форуме коллегиально.

Valeriy
20.02.2018
03:27:04

Denis
20.02.2018
03:27:28
Нет, но есть референсный компилятор.

Valeriy
20.02.2018
03:27:54
Понял спасибо.

Denis
20.02.2018
03:32:47
Там костыль в виде __delete ещё оставили

Valeriy
20.02.2018
03:33:25

NullSanya
20.02.2018
04:02:12

Evgeny
20.02.2018
04:30:05

Valeriy
20.02.2018
05:56:06

NullSanya
20.02.2018
05:56:54
Так что есть он, или нету... разницы нет

Dmitry
20.02.2018
05:59:01
Я использовал иногда с пользой. А вообще, если делать свой uniq_ptr, то там лучше память не в GC куче выделять, соответственно и освобождать не через delete.
Так что тут как раз проблемы нет.

Valeriy
20.02.2018
06:01:44

Dmitry
20.02.2018
06:03:57
Их или аллокаторы на их основе.
std.experimental.allocator