
elias
15.03.2018
11:33:01
а для D компромиссный вариант был бы плох? к примеру, как C++: STL + Boost. Т.е., иметь урезанный std, а "почти стандартные" вещи выносить в Boost-аналог на D. Эдакое Phobos и при3.14здыш Tango2

Stanislav
15.03.2018
11:33:13
сегодня survey закрыли кстати, интересно, изменят ли они планы развития D на 2018 год
а то народ вон жалуется
> According to the State of D Survey, 71% of the respondents don't care about betterC. Why is betterC on the priority list?

Evgeny
15.03.2018
11:33:35

Google

Denis
15.03.2018
11:37:17
догадаться это не про компьютеры)

Денис
15.03.2018
11:37:43
а для D компромиссный вариант был бы плох? к примеру, как C++: STL + Boost. Т.е., иметь урезанный std, а "почти стандартные" вещи выносить в Boost-аналог на D. Эдакое Phobos и при3.14здыш Tango2
Ох, как же плохо все это в мире ++ обстоит. Есть std, есть qt, есть boost, где одни и те же вещи копируют почти один в один, но все они несовместимы друг с другом. В итоге это вревращается в ад, где gui требуют qstringи, которые из std::string не создать, а только из с-стайл-стринг или мьютексы бустовые, потоки стдшные - в этой каше просто ад и погибель.

Evgeny
15.03.2018
11:38:30
в данном случае в компилятор скорее всего заложили некие стандартные паттерны, вроде делений на 2, тестирования битов и прочее.

elias
15.03.2018
11:40:32


Dmitry
15.03.2018
11:41:00
Corporate Platinum
$100,000
per year
Support us with an annual donation and receive: 8 priority bug fixes per month (no accrual), your company's logo on the dlang.org sponsors page, 5 DConf registrations, 10 hours of phone support per month (no accrual), your company's logo in the README of 2 DLang projects (dmd, Phobos, DRuntime, etc.), 2 days of on-site training (travel and accommodation paid by sponsor), and your companies logo on either the dlang.org front page or the front page of the official D blog.
фига условий напридумывали ))
Поздравления в комментах кода по десять баксов продавать.
// привет Пете
// описание функции

Evgeny
15.03.2018
11:41:29
но я был не прав, в этой функции есть косяк. Накой они возвращают int? Если вернуть bool, то исчезает xor eax, eax
https://godbolt.org/g/jnnue3

Stanislav
15.03.2018
11:41:34
а что, тоже неплохо! на скорость не влияет

Denis
15.03.2018
11:43:02
всё таки правильнее не догадываться а использовать конкретные функции которые на низком уровне всё точно что надо делают...

Evgeny
15.03.2018
11:43:17
Ох, как же плохо все это в мире ++ обстоит. Есть std, есть qt, есть boost, где одни и те же вещи копируют почти один в один, но все они несовместимы друг с другом. В итоге это вревращается в ад, где gui требуют qstringи, которые из std::string не создать, а только из с-стайл-стринг или мьютексы бустовые, потоки стдшные - в этой каше просто ад и погибель.
ну из boost многое в std перетекает, кстати.
ЕМНИП, std::thread, например пришел из boost::thread


Денис
15.03.2018
11:46:50
я тоже сторонник умеренной монолитности.
Вообще по мне в питоне дела обстоят идеально. Иметь нормальный менеджер библиотек и центральный оффициальный репозиторий с библиотеками, с минимальным контролем качества (чтобы не как в cpan где тоже пиздец). И пускай все льют. Вообще концепты с минимумом центральнымх репозиториев - это всегда удобно для пользователя (линуксовые репозитории, эпл или гугл маркеты, pip, cpan и т.д.)

Google

Pavel
15.03.2018
11:48:37
На высоком уровне немыслимо писать без GC, а на низком наоборот. Поэтому думаю что нужная какая-то субстандартная библиотека поверх стандартной ?

Oleg
15.03.2018
11:49:48

Dark
15.03.2018
11:50:23
О чем речь?

Pavel
15.03.2018
11:50:40
в стандартной только всякие контейнеры, conv, typecons и все это nogc и макисмально оптимизировано. А в субстандартной уже всякие xml json и прочее популярное

Oleg
15.03.2018
11:51:25

elias
15.03.2018
11:51:57

Pavel
15.03.2018
11:52:12

Evgeny
15.03.2018
11:52:34
преимущество помещения либы в std - только одно: эта либа поддерживается разработчиками компилятора - это некая гарантия, что оно не сдохнет из-за того, что автор либы улетел на Марс навсегда.

Денис
15.03.2018
11:53:09

Pavel
15.03.2018
11:54:03
JSON однозначно нужен но с ним все сложно. Я сам на это натолкнулся пару дней назад. Если кому то нужен очень быстрый парсер то там нельзя сделать опциональный пропуск несуществующих в структуре полей. Если его сделать то десериализация получится медленной что в ряде случаев так же годится. Но одно нельзя основывать на другом.

Oleg
15.03.2018
11:59:53
json в std должен быть как тип данных — удобный и гибкий
а средства для парсинга и сериализации уже могут внешними быть

Pavel
15.03.2018
12:01:04
Ну вот сейчас в std достаточно удобный json )
И гибкий
Но десериалзацию не умеет

Evgeny
15.03.2018
12:11:15
сериализация/десериализация и JSON - это перпендикулярные сущности

Dark
15.03.2018
12:12:31
(Я все прочитал)
(Знаю, что всем пофиг)

Evgeny
15.03.2018
12:12:58

Pavel
15.03.2018
12:13:20

Google

Evgeny
15.03.2018
12:13:23
я, например, не осилил такое кол-во букв, читал по-диагонали
Всмысле?
в прямом. сериализация/десериализация - это преобразование неких данных в бинарный поток. Не вижу тут слова JSON.
Но можно сериализовать данные в строку содержащую JSON.

Dark
15.03.2018
12:16:21
А как тогда преобразование структур в json называется?

Evgeny
15.03.2018
12:17:01
библиотека JSON должна давать инструменты для генерации и парсинга строк в формате JSON. Все.

Pavel
15.03.2018
12:17:42
Думаю оно может так изначально и было, но потом было спокойной расширено на случай текстового потока.

Stanislav
15.03.2018
12:18:04
Так и разговор вёлся в ключе сериализация/десериализация json. А не какая-то абстрактная

Evgeny
15.03.2018
12:18:04

Pavel
15.03.2018
12:18:15
Ну ок, строка это и есть поток байт.
И структуру можно преобразовать в строку по формату JSON. Это и будет сериализация по определению.

Evgeny
15.03.2018
12:18:41
я к тому, что сериализации не место в std.json
а вот какой-нибудт std.serialization - может быть и не помешал

Pavel
15.03.2018
12:19:43
Если удастся эти абстракции разнести то будет супер

Evgeny
15.03.2018
12:19:51
кстати в vibe.d так и сделано

Stanislav
15.03.2018
12:20:26
Это вообще возможно например для таких разных форматов как json и xml?

Pavel
15.03.2018
12:21:41
Ну как бы у сериализатора будет один абстрактый метод string serialize(object) Вот и все возможности ;)

Google

Oleg
15.03.2018
12:23:25
ребят, напомните как под win без вижака обойтись

Dark
15.03.2018
12:23:36

Oleg
15.03.2018
12:24:02

Pavel
15.03.2018
12:24:04

Oleg
15.03.2018
12:24:49

Stanislav
15.03.2018
12:27:33
А какая цель то? Express не пойдёт? (Или их уже не делают?)

Oleg
15.03.2018
12:27:58

Stanislav
15.03.2018
12:28:23
На плюсах?

Admin
ERROR: S client not available

Oleg
15.03.2018
12:28:40
нет, почему, на D
вот только линковщик 64битный в вижаке для плюсов

Денис
15.03.2018
12:29:36

Oleg
15.03.2018
12:29:58

Stanislav
15.03.2018
12:31:07
Я под винду давно не писал) а dub + dmd не хватает? Или линковщик отдельно ставится?

Oleg
15.03.2018
12:31:09
пиздец печаль

Денис
15.03.2018
12:31:45
Лол, но на самом деле этот sdk есть отдельно. Под 7 точно.
https://www.microsoft.com/en-us/download/details.aspx?id=3138

Oleg
15.03.2018
12:34:19
32битные норм собираются

Google

Oleg
15.03.2018
12:34:55

Denis
15.03.2018
12:35:48

Pavel
15.03.2018
12:36:55

Dark
15.03.2018
12:37:45
С изначально делали для того, что бы все на всех платформах работало
А ты предлагаешь сделать все наоборот
И самое плохое в этом то

Денис
15.03.2018
12:40:48

Dark
15.03.2018
12:41:12
Что если сейчас хоть как то std заводится на других платформах, то после твоего решения перестанет

Денис
15.03.2018
12:42:43
Да, именно
Ох, будет как в бустах, где поддержка самых бесноватых компиляторов/платформ вкрячена так, что черт ногу сломит, код просто нечитабельный.

Dark
15.03.2018
12:44:48
Вот-вот
std не для хайлоад
Максимально низкоуровнево ускорять его бессмысленно

Pavel
15.03.2018
12:45:26
У меня гениальная и новая идея - а что если сделать некую виртуальную машину которая будет исполнять код на всех платформах одинаково? =)

Dark
15.03.2018
12:45:38
V8, JVM

Pavel
15.03.2018
12:45:48
DVM

Dark
15.03.2018
12:45:59
У меня была такая же идея
Но в чем суть?
D изначально не продумывали для работы на некой платформе
И поэтому DVM будет не самая лучшая
А смысла в ней просто нет