
Andrei
13.06.2017
23:05:00
Просто компилятор понимает, что это статически элиминируемые вещи и делает с ними то, что полагается не, добавляя оверхеда в рантайме.

Aldar
13.06.2017
23:05:23
типа хаскеля на этапе компиляции?

Andrei
13.06.2017
23:05:29
Угу.

Alexey
13.06.2017
23:05:52
А не слишком долго происходит компиляция?

Google

Stanislav
14.06.2017
01:14:45
так и хочется поорать что это https://github.com/agauniyal/rang/ не нужная фигня
отчасти точнее
если целит на вин10 то на половину нужная

Andrei
14.06.2017
01:16:37
Демка симпатишная.

Stanislav
14.06.2017
01:16:44
они там в vt100 смогли
поэтому все коды работают
надо только для своего приложения вызывать одну функцию включающую это
https://github.com/agauniyal/rang/blob/master/include/rang.hpp#L180
тут видимо пытались, но не дотянули
пруфцы

Berkus
14.06.2017
07:50:30

Дед Пегас
14.06.2017
07:51:34
+
И расщирять!

Google

Alexey
14.06.2017
07:52:48
В большом проекте инстанцирование сущностей значительно повышает его "понятность"

Berkus
14.06.2017
07:53:08
поясни
вот нам нужно получить через REST api CSV и выдать его в виде JSON - какие сущности нужно инстанциировать для понятности?

Alexey
14.06.2017
07:54:12

Berkus
14.06.2017
07:54:34
так, и что с ней делать

Alexey
14.06.2017
07:55:39
Ну в данной задаче ничего

Berkus
14.06.2017
07:55:54
ну то есть я могу написать fetch . csvToJson . validateSchema mySchema . output с этой инстанциированной моделью, а могу не писать, mySchema будет функцией возвращающей нужную модель
окей, какая есть задача в которой глобальная инстанциация какой-то конкретной json схемы нам помогает?

Alexey
14.06.2017
08:01:32
Предположим к нам приходит json.
Нам его нужно распарсить, записать в базу данных, проделать с полученными данными ещё какие-то манипуляции.
На мой взгляд, удобнее для для всех этих манипуляций представлять json-файл в качестве объекта со списком полей и методов для обработки этих полей.
*парсить json файл в объект

Berkus
14.06.2017
08:02:58
ок, и что мы тут инстанциируем?
и чем JSON.calculatePriceRange лучше свободно композируемой функции calculatePriceRange(list) ?

Дед Пегас
14.06.2017
08:04:12
А чо за методы у json-а могут быть? Чо там обрабатывать?
Хотя есть же тайпклассы.

Alexey
14.06.2017
08:06:12

Berkus
14.06.2017
08:06:40
если тебе захочется просто посчитать price range то придется инстанциировать данные в JSON объект? возможно это и сделает что-то "понятней", но точно не связь цен с джсоном
если мы парсим json по схеме, то нам нужен в итоге финальный датакласс со всеми данными, в удобном виде, а не как оно в джсоне пришло
в частности prices может быть уже list<Price> например

Dmitry
14.06.2017
08:08:07
народ, оффтопну) кто какие облака юзает?

Google

Berkus
14.06.2017
08:09:00
(и да, Price может быть в джсоне не флоатом а строкой со значением в центах и видом валюты, если это нормальные люди писали)

Alexey
14.06.2017
08:11:50
Да, разумней писать сразу финальный датакласс со всей логикой.

Sergey
14.06.2017
08:13:56

Mr.WeB
14.06.2017
08:59:16
Привет всем Где могу скачать c++ builder?

Evgeniy
14.06.2017
08:59:26

Mr.WeB
14.06.2017
08:59:34
можешь линк дать?

Berkus
14.06.2017
09:13:49
google.com

Antony
14.06.2017
09:20:53
Очень грамотно. Спасибо.
Есть две части, и у них разные причины не опенсорсить прямо вот сейчас
- Спецификация языка, референсный интерпретатор, та часть, где оно лучше Питона, вот это всё - это должно стать достоянием общественности, и единственная причина, почему ещё не - оно не доведено до того состояния, когда не стыдно
- Та часть, где оно лучше плюсов, оптимизирующий компилятор, который может оптимизировать гораздо круче, чем ICC - это имеет вполне ощутимую коммерческую ценность, и туда можно только с NDA
Что-то я запутался: за счет чего именно ваш язык выигрывает в производительности? Какие такие хитрые оптимизации, которые невозможно сделать в С++?

Mr.WeB
14.06.2017
09:21:46
google.com
Сказали что сpp builder стоит 6000$ это правда?

Дед Пегас
14.06.2017
09:21:58
Думаю, если влепить больше матана в систему типов языка, можно много профита наоптимизировать.

Friedrich
14.06.2017
09:22:14

Sergey
14.06.2017
09:22:52

Дед Пегас
14.06.2017
09:23:03
Го не убийца C++.

Matway
14.06.2017
09:23:04

Дед Пегас
14.06.2017
09:23:41

Friedrich
14.06.2017
09:24:06
Ну почему же?
Потому что не всё в матане практично и может потенциально приводить к каким-то оптимизациям.

Дед Пегас
14.06.2017
09:24:16
Если выражение можно вычислить на этапе компиляции и сократить, то профит, думаю, возможен.

Mr.WeB
14.06.2017
09:24:30

Friedrich
14.06.2017
09:24:36
Засунул ты в язык нетипизированное лямбда-счисление — и давай потом, оптимизируй.

Дед Пегас
14.06.2017
09:24:36
Не всё, но таки упростить реально.

Google

Antony
14.06.2017
09:24:37

Berkus
14.06.2017
09:24:59

Group Butler [beta]
14.06.2017
09:25:00
кто то слышал?
Чат supapro.cxx: https://telegram.me/joinchat/BYlFbD3eN3JMaG34hyh96w

Friedrich
14.06.2017
09:25:04

Matway
14.06.2017
09:25:13

Admin
ERROR: S client not available

Mr.WeB
14.06.2017
09:25:17

Friedrich
14.06.2017
09:26:08

Antony
14.06.2017
09:26:45

Friedrich
14.06.2017
09:27:10
Ну то есть конкретный пример кода, который некие компиляторы C++ не оптимизируют, а ваш компилятор/язык/платформа — оптимизирует.
Если будет пример с разбором — это хороший, годный, предметный разговор.

Antony
14.06.2017
09:27:33
+1

Matway
14.06.2017
09:28:49

Antony
14.06.2017
09:29:46
Ну хоть ссылку дайте на какой-то конкретный пример? А то мне хочется вам поверить, но не получается

Дед Пегас
14.06.2017
09:30:36

Arseny
14.06.2017
09:37:56
https://t.me/NewLanguage_temporary
Кому интересны примеры кода, апдейты - приглашаются в онтопик чат, не засоряйте плюсовую тему.

Constantine
14.06.2017
09:41:11
и template <T> immutable_ptr<T> make_immutable(std::unique_ptr<T>);
все никак руки не доходят

Google

Sergey
14.06.2017
09:43:54

Дед Пегас
14.06.2017
09:45:06

Matway
14.06.2017
09:46:05

Sergey
14.06.2017
09:48:08

Constantine
14.06.2017
09:48:11
хм...
компилятор очень часто что-то не оптимизирует потому, что не уверен, что после оптимизации все пойдет так
в данном случае нужны какие-то хитрые эвристики отсутствия side-effect для всего и вся, что не очевидно

Matway
14.06.2017
09:50:40

Igor
14.06.2017
09:50:41

Constantine
14.06.2017
09:50:56

Arseny
14.06.2017
09:51:13
operator+ видимо
v3 можно не вычислять целиком.

Matway
14.06.2017
09:52:09

Constantine
14.06.2017
09:52:33
я просто хочу понять, какой код в итоге вы хотите увидеть и насколько быстрее он будет работать

Berkus
14.06.2017
09:52:49

Matway
14.06.2017
09:53:08

Constantine
14.06.2017
09:53:18
с точки зрения С++ это не эквивалентный код