@dlangru

Страница 359 из 719
Evgeny
28.12.2017
15:46:54
Есть даже такой термин защитное программирование
ну я все время стараюсь так писать

Stepanos
28.12.2017
15:47:37
работаю в компании под 200 человек, проблем с коммуникацией нет, главное отсеивать людей которьіе не знают почему стринг иммутабелен))

Mike
28.12.2017
15:51:22
вот как без каста и лишнего оверхеда на копирование https://glot.io/snippets/ewu43zgrzk
да, но.... вот так string a = gen.split(); не сделать ? Error: cannot implicitly convert expression (split(gen())) of type char[][] to string - т.е. тут "кастом" является запихивание в string-переменную(

Google
Mike
28.12.2017
15:52:04
если есть возможность писать безопасно, зачем писать опасно?
я с вам полностью согласен! но вот та же split() хочет именно string, а не просто char[] - какой здесь смысл..? Щас забавный результат эксперимента получил: если обернуть char[] в immutable(), то split() отлично её хавает... но при этом возвращает char[][] ? я вконец перестал понимать логику компилятора

qwerty
28.12.2017
16:05:44
она ждет immutable, потому ей надо быть уверенной, что string не изменится где-нибудь через указатель какой-нибудь

Mike
28.12.2017
16:06:57
строковые литералы так вообще обычно в каком-нибудь защищеном data сегменте сидят или вовсе ПЗУ
полагаю, тут надо уточнить разницу между строками типо printf("fuck you") и буфферами, в которые ты получешь некоторые данные (являющиеся текстом), обрабатываешь их (как текст) и отдаёшь дальше ?тип string это представление данных как текста, зачем делать его immytable? как тогда эти данные обрабатывать? какждый раз новую память выделять???

Evgeny
28.12.2017
16:08:10
что за ерунда? split жрет вроде любой массив, в том числе и char[]

Mike
28.12.2017
16:09:56
что за ерунда? split жрет вроде любой массив, в том числе и char[]
оооо.. эт я затупил( да, она всё хавает ? там была какая-то другая трабла, из-за которой меня переклинило......

Evgeny
28.12.2017
16:10:39
split возвращает массив массивов

надо string[] a = gen().split();

Mike
28.12.2017
16:14:24
надо string[] a = gen().split();
не, вот так нельзя, потому что split вернёт char[][], который нельзя засунуть в string[]

она ждет immutable, потому ей надо быть уверенной, что string не изменится где-нибудь через указатель какой-нибудь
эмм.. разумеется она изменится! это же компьютер - он меняет данные))) а вот чтобы она не изменилась в том время пока ЭТА функция эти даннеы обрабатывать - я лично прослежу спомощью мьютексов и прочей синхронизирующей шелухи ? разве это не логично...?

qwerty
28.12.2017
16:17:52
хорошо, что вы так сделаете, а 80% других программистов не подумают

Stepanos
28.12.2017
16:23:17
я бы "отсеивал" людей, которые путают "почему" и "зачем" ?
я к русском язьіку имею очень отдаленное отношенте, поетому еще слабо его знаю

Google
Mike
28.12.2017
16:24:34
совсем не разумеется. например, split не меняет строку.
эмм.. я в своей программе над этой строкой только split использую что ли?) речь-то не об этом

Evgeny
28.12.2017
16:25:28
как показывает практика строки нужно менять нечасто, гораздо чаще они неизменны.

если нужна изменяемая строка используй char[], а не string

Evgeny
28.12.2017
16:37:59
вот так, правда с кастом. https://dpaste.dzfl.pl/be82cf5e5315

Mike
28.12.2017
16:46:11
вот так, правда с кастом. https://dpaste.dzfl.pl/be82cf5e5315
а чем отличается cast(immutable) a от immutable(a)..?

Oleg
28.12.2017
16:58:56
Вроде immutable(a) поддерживает только явное преобразование

Типа одно и тоже auto b = immutable(a); immutable b = a;

Mike
28.12.2017
17:21:28
очередной вопрос: есть некая структура, у неё есть приватный экземпляр класса (в частности, std.socket.Socket), в одном потоке это объект создаётся и пара полей ему прописывается - всё ок. затем порождается новый поток (в нём запускается функция из этой же структуры), который тоже пытается с этим объектом повзаимодейстсвовать. но тут случается Segmentation fault. ? что это вообще значит? как так случилось? почему компилятор ни слова не сказал когда компилил мой быдлокод..??? что делать???????

Anatoly
28.12.2017
17:24:58
точно с этим же объектом?

минимальный пример с сегфолтом нельзя написать, чтобы зарепортить?

Max
28.12.2017
17:48:23
.....а const для чего же тогда..?? ?
Он меньше гарантий чем immutable даёт, https://dlang.org/spec/const3.html

Там про все модификаторы

Mike
28.12.2017
20:20:52
Google
Oleg
29.12.2017
01:33:24
Mike https://github.com/deviator/duseful/tree/master/examples/strings может чего новое найдёшь

Dmitry
29.12.2017
05:34:56


Экранизировали. Will Smith в роли Уолтера Брайта. Joel Edgerton в роли Андрея Александреску.

Oleg
29.12.2017
08:05:40
Ох уж эта толерантность... Историю переврут, но негра вставят)

Evgeny
29.12.2017
08:07:23
а это типа какое-то отношение к истории имеет?

Evgeny
29.12.2017
08:08:56
ну мало ли может это типа по реальным событиям

Oleg
29.12.2017
08:09:37
Evgeny
29.12.2017
08:09:54
а, в этом смысле

да и Александреска вроде румын, а не инопланетянин

Maxim
29.12.2017
08:11:22
для основной массы целевой аудитории нетфликса румын и инопланетянин — практически одно и то же, иф ю ноу вот ай мин)

Evgeny
29.12.2017
08:13:38
но историю-то переврали, красного словца ради

qwerty
29.12.2017
15:22:48
Под винду на D пишет кто-нибудь?

добрый день

хочу чтоб DCD запускался фоновым процессом, но под винду не знаю как это сделать. Под Linux уже сделал

Если честно, проблема не в том, что не знаю, а в том, что не хочу разворачивать окружение на винде.

SR_team
29.12.2017
16:13:44
Закинь DCD в PATH, тулзы юзающие его сами должны подхватить

qwerty
29.12.2017
16:23:02
что?

зачем это?

как мне это поможет?)

Google
Dmitry
29.12.2017
17:24:00
Нутк std.process он и в винде. У меня в проекте дочерний процесс запускается с помощью pipeProcess с перенаправлением стандартных потоков в пайпы, чтоб с ним общаться.

SR_team
29.12.2017
18:06:43
как мне это поможет?)
Ну всякие kate, coedit, dlangide сами умеют dcd в фоне запускать, если находят его в PATH

Ievgenii
30.12.2017
18:54:06
Всех с наступающим Новым Годом! Пусть грядущий год принесет всем большой профессиональный рост и массу удовольствия от вашего дела!

Ну и развития с популизацией D

Pavel
30.12.2017
19:09:33
???

Admin
ERROR: S client not available

Andrey
31.12.2017
11:36:05
ну, за Ди, с наступающим (где тут блин эти бутылки)!?

Stepanos
31.12.2017
11:51:14
с наступающим всех :)

Oleg
31.12.2017
12:05:11
Всех с наступающим! Желаю чтобы кодинг доставлял только удовольствие!

Dmitry
31.12.2017
18:17:29
Привет из 2018! (у меня UTC+7) Всех с новым годом!

Oleg
31.12.2017
18:59:05
С новым годом!

Vadim
31.12.2017
19:09:18
С новым годом!

Pavel
31.12.2017
19:16:54
В следующем году обязательно допишу статью

Stepanos
31.12.2017
22:48:20


https://www.linux.org.ru/news/development/13930377

> вышла новая версия Code::Blocks 17.12 - среды разработки на языках С, С++, D (теперь и для него, с ограничениями)

Dmitry
02.01.2018
16:07:37
КодБлок для ограниченных

Stepanos
02.01.2018
16:19:21
ну все равно)) D-шку пилят

Google
Ievgenii
02.01.2018
16:41:00
Это гуд!

Stepanos
02.01.2018
18:32:24
поставив свифт плагин на VSCode, там примитивная, но есть кодогенерация типа как в Java

ввожу sw, предлагает switch, жму ок, генерит: switch switch_on { case a: default: switch_on }

if: if true { } и вьіделяет для редактирования true

forin: for item in collection { } ....

прикол, под D тоже генерит sw: switch() with() { default: break; }

Ievgenii
02.01.2018
19:52:54
И?

Я думал это все редакторы умеют делать

Stepanos
02.01.2018
20:24:07
нет(

Evgeny
02.01.2018
21:04:18
> вышла новая версия Code::Blocks 17.12 - среды разработки на языках С, С++, D (теперь и для него, с ограничениями)
D там давно поддерживается с ограничениями. В этой версии всего лишь навсего добавили wizard для D-проектов.

Stepanos
03.01.2018
05:57:54
А нахуя, если есть саблайм и dkit?
разнообразие же, чем больле ІДЕ поддерживает тем лучше, ибо каждьій привьік к своей ІДЕ. Мне, например, саблайм не зашел

Evil
03.01.2018
06:02:52
4 месяца работаю со "взрослой" IDE VS15. Так и не понял, в чем плюсы, кроме пошагового дебага сдожной хуеты, поиска референсов и интеграция с гит, в плане, сразу видно, какой уёбок трогал метод и когда?

Ну, т.е. плюсы то есть

Но сам редактор кода отвратительный, шорткаты хуй пойми кто выдумал, вместо плагинов костыли, и по дефолту ебошит кырылэф помеж ылэфов.

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