URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 93430
[ Назад ]

Исходное сообщение
"В стандарт C++ предложено добавить API на основе свободной г..."

Отправлено opennews , 05-Янв-14 10:52 
Герб Саттер (Herb Sutter), председатель комитета по развитию международных стандартов для языка С++, выступил (http://lists.cairographics.org/archives/cairo/2013-December/...) с предложением включить в состав будущего стандарта ISO C++ программный интерфейс для отрисовки двухмерной графики, реализованный в свободной библиотеке Cairo (http://cairographics.org/).

Cairo предоставляет унифицированный программный интерфейс для векторного формирования изображений, похожий на операции рисования в PostScript и PDF, но не зависящий от отдельных механизмов вывода. Формирование 2D-графики может производиться при помощи различных бэкендов вывода, от стандартного вывода на экран через X Window System, Quartz и Win32, до генерации PostScript, PDF, SVG и задействования OpenGL, XCB и DirectFB. Кроме функций, напоминающих операторы рисования PostScript и PDF, API библиотеки предоставляет такие дополненные возможности, как трансформация изображений (масштабирование, поворот, вращение и т.п.), создание полупрозрачных объектов и рендеринг текста. Код Cairo распространяется под лицензиями LGPL и Mozilla Public License. Среди известных проектов, использующих Cairo, можно отметить GTK+ и Firefox.

Так как Cairo написан на языке Си, в стандарте ISO C++ планируется использовать обёртку для языка C++. Создание подобной обёртки упрощает высокое качество кода Cairo, который уже построен в объекто-ориентированном  стиле с корректным отделением констант. В настоящее время изучается возможность (http://isocpp.org/files/papers/N3825.pdf) задействовать автоматическую систему трансляции базового  Cи-кода в форму на языке C++. Например, предлагается автоматически преобразовать традиционные функции "_create" в набор конструкторов, а параметры функций (mystruct*, int length) в параметры vector<struct>&. При этом дизайн библиотеки, абстрактные вызовы и непосредственно реализация функций останутся неизменными. Подобный подход позволит отслеживать дальнейшее развитие проекта и применять единый набор правил трансляции к будущим выпускам Cairo.


URL: http://tirania.org/blog/archive/2014/Jan-04.html
Новость: http://www.opennet.me/opennews/art.shtml?num=38792


Содержание

Сообщения в этом обсуждении
"API свободной графической библиотеки Cairo предложено включи..."
Отправлено anonymous , 05-Янв-14 10:52 
Но ведь сама Cairo от ещё кучи библиотек зависит. Да и непонятно, зачем это вообще надо в стандартной библиотеке. Хотят из libstdc++ фреймворк в стиле Qt слепить?

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 05-Янв-14 11:06 
Вот если бы в С++ был тулкит...

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 06-Янв-14 11:07 
> Вот если бы в С++ был тулкит...

ИМХО если они хотят кроссплатформенную графику - лучше на SDL смотреть. По крайней мере для игроделов, etc.


"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 06-Янв-14 21:22 
кроссплатформенная графика уже есть: OpenGL называется. точнее, была, пока хроносы не наплодили всяких глесов.

"API свободной графической библиотеки Cairo предложено..."
Отправлено Аноним , 07-Янв-14 05:47 
> кроссплатформенная графика уже есть: OpenGL называется

Только оно на 3D очень уж двинуто. Конечно до кучи можно и 2D выплевывать, но это заметно повышает требования и к оборудованию и к програмерам.


"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 07-Янв-14 08:01 
> Только оно на 3D очень уж двинуто.

да не очень. совсем, можно сказать, не «двинуто». если тебе совсем уж преобразований не хочется — ну, сделай ты glOrto() да glTranslate(), и рисуй себе в пикселях. как дети малые: увидят три числа — и всё, СТРАШНОЕТРИДЭЭЭЭЭ!

> Конечно до кучи можно и
> 2D выплевывать, но это заметно повышает требования и к оборудованию и
> к програмерам.

ко второму — никак не повышает. к первому… ты что, каиру собрался на 51-е совать, что ли? нет? ну так тогда и gl там вполне заведётся. более того: gl таки намного шире известен, нежели каира. но нет: надо выбрать что-нибудь, лишь бы не то, что широко используется на куче платформ. это, конечно, если вдруг упороться веществами и согласиться с тем, что в стандарте c++ нужно графическое API.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 05-Янв-14 12:11 
это реализация Cairo зависит от кучи библиотек. включить в стандарт предлогается интерфейс, а как он месте будет реализован, дело 10-е

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Убунт , 05-Янв-14 15:44 
Зачем плюсам «интерфейс»??
Вы, вообще, понятие о плюсах имеете?

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 05-Янв-14 18:17 
>Вы, вообще, понятие о плюсах имеете?

Похоже вы не имеете понятия что такое интерфейс, а сто такое реализация. Почитайте книгу по С++.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 05-Янв-14 22:04 
Какую посоветуете?

"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 05-Янв-14 22:29 
> Какую посоветуете?

а какая разница? зелёненькую.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Убунт , 06-Янв-14 02:50 
Енту гнижгу почедадь?

Интерфейсы в конкретных языках и системах

Реализация интерфейсов во многом определяется исходными возможностями языка и целью, с которой интерфейсы введены в него. Очень показательны особенности использования интерфейсов в языках Java, Object Pascal системы Delphi и C++, поскольку они демонстрируют три принципиально разные ситуации: изначальная ориентация языка на использование концепции интерфейсов, их применение для совместимости и их эмуляция классами.

В Java интерфейсы изначально входят в язык, являясь неотъемлемой его частью.

В объектной подсистеме языка Object Pascal никаких интерфейсов не было, их поддержка была введена в Delphi 2 для обеспечения написания и использования COM-компонентов. Соответственно, механизм интерфейсов Delphi ориентирован, в первую очередь, на использование технологии COM.

В C++ интерфейсов, строго говоря, нет вообще. Механизм, аналогичный интерфейсам (и исторически предшествующий им) реализуется другими средствами чрезвычайно мощной объектной подсистемы этого языка.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 06-Янв-14 23:20 
Гы, так не в этом смысле интерфейсы. В смысле АПИ.

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Анод , 05-Янв-14 14:46 
Да в стандарте и стандартная либа не особо нужна. Те же файловые потоки не могут открывать пути в std::string и требуют c string. Даже если и исправят в следующем релизе, между релизами в прошлый раз прошло 10 лет.

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Анод , 05-Янв-14 14:47 
> Да в стандарте и стандартная либа не особо нужна. Те же файловые
> потоки не могут открывать пути в std::string и требуют c string.
> Даже если и исправят в следующем релизе, между релизами в прошлый
> раз прошло 10 лет.

Упс, в С++11 исправили но все же.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 05-Янв-14 20:06 
Следующий релиз плюсов — С++14, планируется в только наступившем году. Потом ожидается в 17-м с весьма интересными и вкусными нововведениями, вроде async/await и корутин.

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anon1 , 05-Янв-14 21:59 
Вам что мало того, что в нем есть на данный момент или сами не способны реализовать на языке то, что вам нужно и поэтому ждете, когда это сделают другие людли и раздуют язык ешё на 100500 раз ? Всё чаще от школьников начинаю слышать подобные сообщения, в которых они над каждым обновлением пишут "Вау!!, сколько всего нового!!" а что из этого всего нового действительно придется применить на практике ? Лично я не вижу ничего такого в новом дополнении, без чего нельзя было б жить.

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 05-Янв-14 22:05 
> Вам что мало того, что в нем есть на данный момент

Да. Кое-что не помешало бы.

> сами не способны реализовать на языке то, что вам нужно и
> поэтому ждете, когда это сделают другие людли и раздуют язык ешё
> на 100500 раз ?

Кое-какие вещи требуют модификаций самого языка, его логики и семантики, библиотеками тут не обойдёшься.

> Всё чаще от школьников начинаю слышать подобные
> сообщения, в которых они над каждым обновлением пишут "Вау!!, сколько всего
> нового!!"

Языки — они растут и развиваются, да. Это нормально, в этом нет ничего плохого.

> а что из этого всего нового действительно придется применить на
> практике ?

Смотря какие навыки, фантазия, опыт с другими языками. Если писать на плюсах как на си с с классами, то это всё не нужно, конечно.

> Лично я не вижу ничего такого в новом дополнении,
> без чего нельзя было б жить.

Ассемблер тоже Тьюринг-полный, API ОС дёргать на нём можно — жить можно.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anon1 , 05-Янв-14 22:20 
> Да. Кое-что не помешало бы.

В новых стд либ есть что-то особенное, чего нет в любой другой библиотеке к языку, например оффициально включенного Cairo ?

> Кое-какие вещи требуют модификаций самого языка, его логики и семантики, библиотеками тут не обойдёшься.

Вы в глаза хоть раз видели, как выглядет скомпилированная программа на самом деле, какие модицикации к языку ?! Сейчас на Си можно написать всё, что угодно, а некоторым тут и синтаксиса Си++ малоо.. Изучите его сначала, потом говорите.

> Языки — они растут и развиваются, да. Это нормально, в этом нет ничего плохого.

Нормально - это когда язык не расширяют до тех пор, пока перестанут писать под него компиляторы, а до тех пор, пока он не станет удобным в написании кода. Си, например последний раз модифицировали в 95 и ничего - большиснтва всё устраивает и на нем по-прежнему пишут 40% порграмм.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 05-Янв-14 22:30 
> В новых стд либ есть что-то особенное, чего нет в любой другой
> библиотеке к языку, например оффициально включенного Cairo ?

Поддерживаемая контейнерами семантика перемещения.
std::future::then в C++14 (есть в бусте, но таскать ради этого буст как-то перебор).

Дело не только в STL же.

>> Кое-какие вещи требуют модификаций самого языка, его логики и семантики, библиотеками тут не обойдёшься.
> Вы в глаза хоть раз видели, как выглядет скомпилированная программа на самом
> деле, какие модицикации к языку ?!

Из уже имеющегося, к примеру… Ну попробуйте реализовать move semantics без rvalue references. Вон в бусте реализовали кое-как, и есть ограничения и проблемы. Туда же вариадики, туда же вывод типов, туда же override/final (а final может позволить компилятору инлайнить виртуальные методы чуть чаще). Адекватные юнионы, чтобы не плодились зоопарки вроде boost::any или QVariant.

Или вот поддержка трединга — это не только std::thread. Это ещё и формализм, которым язык описывается, нужно заменить с последовательной машины. Тоже модификации языка.

Из неимеющегося — атрибут pure, пресловутые resumable functions, и так далее.

> Сейчас на Си можно написать
> всё, что угодно, а некоторым тут и синтаксиса Си++ малоо.. Изучите
> его сначала, потом говорите.

Я знаю плюсы, уж поверьте.

>> Языки — они растут и развиваются, да. Это нормально, в этом нет ничего плохого.
> Нормально - это когда язык не расширяют до тех пор, пока перестанут
> писать под него компиляторы, а до тех пор, пока он не
> станет удобным в написании кода.

Уж коли мы говорим об удобстве — какие-нибудь там лямбды, вывод типов, nullptr, оно и для удобства написания кода в том числе. И половина из перечисленного мной выше — тоже. Или вам нравится и вас полностью устраивает сегодняшний std::async и std::future?

> Си, например последний раз модифицировали в
> 95 и ничего - большиснтва всё устраивает и на нем по-прежнему
> пишут 40% порграмм.

Си последний раз модифицировали в 2011 году, чтоб вы знали.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anon1 , 05-Янв-14 22:50 
> Поддерживаемая контейнерами семантика перемещения.
> std::future::then в C++14 (есть в бусте, но таскать ради этого буст как-то перебор).
> Дело не только в STL же.

Вы напару с разработчиками стандарта, мыслите одинаково, чего нет - дабовить, что нужно и без чего нельзя обойтись - не добавлять. Я, например с удовольсвием принял новый стандарт, если бы там начали править синтаксис языка, а не добавлять его, особено это касается ситуация с указателями\на функции, где все там заморочено, что проще писать на ассемблере, чем на ЯП высокого уровня.


> Уж коли мы говорим об удобстве — какие-нибудь там лямбды, вывод типов, nullptr, оно и
> для  удобства написания кода в том числе. И половина из перечисленного мной выше — тоже.

Ну да, лямбды, указатели типов такие удобные вещи.. Порой мне хочется отругать тех людей, которые используют в коде подобные конструкции. Не поймите меня не правильно, но их порой затруднительно разбирать. А вообще, синтаскис стандартных классов и функций меня полностью устраивает, не более и не менее.

> Си последний раз модифицировали в 2011 году, чтоб вы знали.

Я писал про серьезные модифицакии, заменяющие\изменяющий синтаксис языка.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 05-Янв-14 22:55 
> Вы напару с разработчиками стандарта, мыслите одинаково, чего нет - дабовить, что
> нужно и без чего нельзя обойтись - не добавлять.

Боюсь, это решать не мне и не вам. Хотя это даже к счастью, чего уж бояться. Просто я радуюсь общему вектору развития C++ и с удовольствием читал пропозалы с летних собраний WG в ушедшем году. Хотя конкретно графическая библиотека у меня вызывает вопросы, да.

> Я, например
> с удовольсвием принял новый стандарт, если бы там начали править синтаксис
> языка

Тогда новым языком никто не стал бы пользоваться, ибо сила плюсов, к сожалению, в легаси. Я сам бы не отказался от адекватных модулей, раздельной компиляции и кое-каких изменений в синтаксисе, чтобы это всё счастье не компилялось по полчаса. У меня даже Template Haskell-программы собираются быстрее, чем иные плюсошаблоны.

> а не добавлять его, особено это касается ситуация с указателями\на
> функции, где все там заморочено, что проще писать на ассемблере, чем
> на ЯП высокого уровня.

А что такого с указателями на функции? У std::function весьма чистый и прозрачный API, удобно, C++-но, нулевой (или около того) оверхед.

> указатели типов

А это ещё что такое? Можно английский термин, если есть?

> такие удобные вещи.. Порой мне хочется отругать
> тех людей, которые используют в коде подобные конструкции. Не поймите меня
> не правильно, но их порой затруднительно разбирать.

И эти люди мне говорят «выучите C++». Эх. Почему у меня не возникает проблем с разбором таких конструкций?

>> Си последний раз модифицировали в 2011 году, чтоб вы знали.
> Я писал про серьезные модифицакии, заменяющие\изменяющий синтаксис языка.

Ну вот, началось :(


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anon1 , 05-Янв-14 23:18 
> А что такого с указателями на функции? У std::function весьма чистый и прозрачный API, удобно, C++-но, нулевой (или около того) оверхед.

Боюсь, что я не совсем это имел ввиду, но вы тут не ошиблись. Я говорил про исходную форму  указателей на функции: int (*p)(const char *)=(int *)test; int* (*(*tst())()), etc

> А это ещё что такое? Можно английский термин, если есть?

Возможно и тут не корректно выразился, но имел ввиду подобные записи - void *е;e = (int *)&mmm; где е - указатель на объект неопределннного типа, в этом слачае - инт

> И эти люди мне говорят «выучите C++». Эх. Почему у меня не возникает проблем с разбором таких конструкций?

Эх, так всё-таки не один я вам об этом говорил ? как чуял прям..


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 05-Янв-14 23:23 
>> А что такого с указателями на функции? У std::function весьма чистый и прозрачный API, удобно, C++-но, нулевой (или около того) оверхед.
> Боюсь, что я не совсем это имел ввиду, но вы тут не
> ошиблись. Я говорил про исходную форму  указателей на функции: int
> (*p)(const char *)=(int *)test; int* (*(*tst())()), etc

Да я понял, тут скорее я криво сформулировал. Что мешает везде, где нужно передавать делегаты-коллбеки, использовать интерфейс на базе std::function, а не сишных указателей? Собственно, указатели-то на самом деле сишные.

>> А это ещё что такое? Можно английский термин, если есть?
> Возможно и тут не корректно выразился, но имел ввиду подобные записи -
> void *е;e = (int *)&mmm; где е - указатель на объект
> неопределннного типа, в этом слачае - инт

Так это, опять же, ещё из сей. Причём тут лямбды и всё такое?

Упоротые нетипобезопасные коллбеки, где указатель на указатель и указателем погоняет — это удел сишечки как раз, кстати. Вот тут между делом в порядке развлечения куски своего комбайна на GStreamer перевожу, успел хлебнуть этого счастья сполна. В сочетании с плохо документированным API самого GStreamer вызывает просто непередаваемые ощущения, рекомендую!

Кстати, к вашему тезису пару постов назад о 40% пишущих на C до сих пор — все, с кем я делился своими впечатлениями о взаимодействии с GStreamer, со мной соглашались. Ну это так.

Ну а что поделать, аналогичных библиотек особо не наблюдается.

>> И эти люди мне говорят «выучите C++». Эх. Почему у меня не возникает проблем с разбором таких конструкций?
> Эх, так всё-таки не один я вам об этом говорил ? как
> чуял прям..

Ну, многие люди говорят «да эти плюсы вообще читать невозможно!» Вы скорее один из них.
Из более-менее знающих таки никто не говорил.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено pavlinux , 06-Янв-14 00:17 
> Ну, многие люди говорят «да эти плюсы вообще читать невозможно!»

Код на максимуме С++ - ужасен. Многа букав, код жирный,
не алгоритмы читаешь, а сказку с аргументам и операциями.

Да и ваще С++_ники - лохи полные, без IDE ваще писать не умеют,
максимум count << хелло ворд осилят.  


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anonn , 06-Янв-14 07:12 
Пришёл главный эксперт по C++, все в Страуструпа!

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Vkni , 06-Янв-14 05:34 
> Да я понял, тут скорее я криво сформулировал. Что мешает везде, где
> нужно передавать делегаты-коллбеки, использовать интерфейс на базе std::function, а не
> сишных указателей? Собственно, указатели-то на самом деле сишные.

То, что люди разные, их много => обязательно кто-то накосячит.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Anonn , 06-Янв-14 07:09 
Все уже поняли, что для вас ассемблер - идеал. Для чего тогда распыляетесь здесь? Язык должен развиваться, иначе загнётся.
Менять синтаксис? Синтаксис, к которому привыкли программисты за годы использования? И для чего же, интересно, это делать? Потому что вам захотелось?

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено plum , 06-Янв-14 16:57 
Для меня тоже ассемблер идеал - RISC мой самій любимій!1
Я так и не привык к синтаксису С++, так как каждым годом он превращается в что-то на подобии перла, да, меняйте синтаксис, да, мне так захотелось!1
Чтоб завтра вселябмды, указатели, функции и все выпилили.. приду проверю.

"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 05-Янв-14 22:32 
> Си, например последний раз модифицировали в 95

вот ведь… ясно, c99 на свете не существует. иллюзия.

а, ну да: m$vc про c99 не в курсе — и анонимус не в курсе. забавное совпадение.


"API свободной графической библиотеки Cairo предложено..."
Отправлено ананим , 06-Янв-14 05:25 
c11 уже давно.
фактически новшества теже, что и в С++ http://ru.cppreference.com/w/c
вон теже потоки http://ru.cppreference.com/w/c/thread

"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 06-Янв-14 05:38 
> c11 уже давно.

m$ не в курсе. да и всё равно ничего хорошего там нет. разве что атомарные операции.


"API свободной графической библиотеки Cairo предложено..."
Отправлено 0xd34df00d , 06-Янв-14 05:39 
VLA еще.

"API свободной графической библиотеки Cairo предложено..."
Отправлено arisu , 06-Янв-14 06:57 
> VLA еще.

а, ну да. я как-то привык, что в gcc они давно уже были.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 06-Янв-14 11:08 
> Ассемблер тоже Тьюринг-полный, API ОС дёргать на нём можно — жить можно.

Да что там, брейнфак тоже тюринг-полный.



"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 06-Янв-14 21:28 
Нет. Он тюринг-толстый :)

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Аноним , 07-Янв-14 05:48 
> Нет. Он тюринг-толстый :)

Это ты еще whitespace не видел.


"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Сергей , 08-Янв-14 00:30 
async, future  -есть в с++11

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено 0xd34df00d , 08-Янв-14 00:33 
async/await — это к resumable functions, а не к недоразумению под названием std::async, которое уже в C++14 будет deprecated.

"API свободной графической библиотеки Cairo предложено включи..."
Отправлено Гость , 07-Янв-14 01:43 
>> Но ведь сама Cairo от ещё кучи библиотек зависит.

Только от pixbuf

Это от cairo много библиотек зависят. Pango, например.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено тоже Аноним , 05-Янв-14 10:52 
Непонятно, при чем здесь стандарт.
Нужна графическая библиотека - юзай Cairo, раз ее сам Саттер советует.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Слушатель , 05-Янв-14 11:21 
Cairo - вещь хорошая, но зачем этот в стандарте? Кому надо и так её использует.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено VoDA , 05-Янв-14 11:27 
А чего Cairo, а не Qt или там GTK? Что из перечисленного не умеет через X или Win рисоваться?

Пусть сделает как в java. Базовый стандарт на С++, стандарт на графику. Вместе образуют стандарт на комбайн С++ + C++2d graph. Захотели добавить audio - создали стандарт С++audio. Нужно добавить в комбайн - сделали С++ + C++2d + С++audio.

Кому нужно будет пользоваться комбайном. Кому не нужно - базовый язык остается языком, а не кучей огрызков.


PS 2d API нужно привести к виду, когда Cairo, Qt и GTK могут его адекватно реализовать. Иначе будет костыль типа AWT в java.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Crazy Alex , 05-Янв-14 11:54 
Хм, Cairo и Qt/GTK - это разные уровни - одна - рисовалка, другие - контролы (а в случае Qt - черт знает что ещё). Собственно, сам Gtk через Cairo рисует.

Я бы, кстати, Cairo засунул не в стандарт C++, а как очередное расширение в X.org.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено VoDA , 05-Янв-14 12:42 
Хм... по мне рисовалки и рисовалки )))

<trollmode>Qt же как то отрисовывает, значит и "аналог" Cairo имеет на борту. А если рисовалку тянут в стандарт, так пусть сразу с контролами, 3D графикой и XML-парсером</trollmode>

Мысль в том, чтобы стандарт на язык оставался стандартом на язык, а стандарт на рисование шел отдельтым "модулем". Хочешь - пользуешь. Не хочешь - пользуешь что другое.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Crazy Alex , 06-Янв-14 02:53 
Насчет моджульных стандартов - идей,, с одной стороны хорошая, а с другой - оно даёт слишком много простора для пялсунов, которые делают вид, что реализовали стандарт, а по факту - только минимальное подмножество. Так что в последнее время мне подход "всё или ничего" импонирует больше - не с технической точки зрения, а именно с маркетинговой.

Вот почему они движок взяли из Cairo, а не из Qt -  вопрос интересный. Вроде ж  родное, плюсовое... Впрочем, внутрь я не глядел, может, там как в контролах - уже не плюсы, а что-то совсем своё.

А чистые языки, для которых не стандиратизирована ещё куча сопутствующих библиотек (в смылсе - их API) в последнее время не взлетают или умирают. В этом смысле твой trollmode не такой уж и troll. Использовать сторонние реализации это не мешает (вон сколько коллекций для тех же плюсов наплодили параллельно STL), зато даёт возможность сделать более-менее целостную и предсказуемо работающую систему.

P.S. Хотя по-моему Саттер всё же скурил что-то не то.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 06-Янв-14 11:21 
> Вот почему они движок взяли из Cairo, а не из Qt -
>  вопрос интересный. Вроде ж  родное, плюсовое...

Больно уж кутя немеряная со всеми прибабахами. Конечно до дотнета ей еще далеко, но задатки у них очень даже, особенно с QML и прочей вебней/JS.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 07-Янв-14 16:32 
думаю, Qt не взяли потому, что она написана НЕ на c++, а на C++ со своими расширениями (moc compiler)

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено annulen , 10-Янв-14 12:57 
>Вот почему они движок взяли из Cairo, а не из Qt -  вопрос интересный.

Потому, что в Qt его постоянно переделывают - у Qt 4 и Qt 5 они совсем разные


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Vkni , 05-Янв-14 20:57 
> а как очередное расширение в X.org.

Именно.


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 05-Янв-14 22:39 
> Я бы, кстати, Cairo засунул не в стандарт C++, а как очередное
> расширение в X.org.

НЕ НАДО! а то ведь пакард может подумать, чем он там обычно думает, и нагадить очередной дурнопахнущей кучкой.

у X11, кстати, когда-то было XIE: http://en.wikipedia.org/wiki/X_Image_Extension
как всегда — «народу это не надо, есть же mit-shm, а по сети битмапы гонять вообще круто!»


"В стандарт C++ предложено добавить API на основе..."
Отправлено Crazy Alex , 06-Янв-14 02:46 
Да ладно, хуже уже не было бы - некуда.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Edemoe , 05-Янв-14 11:54 
Каким боком вы сюда Qt и GTK приплели? Это тулкиты для создания пользовательского интерфейса. А Cairo - библиотека для создания (по типу postscript) и обработки изображений, картинок то есть.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено all_glory_to_the_hypnotoad , 05-Янв-14 17:55 
>  А Cairo - библиотека для создания (по типу postscript) и обработки изображений, картинок то есть.

не обработки, а "рисования" векторных/растровых картинок.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено ДяДя , 05-Янв-14 15:40 
Правильно же!

Вон даже велосипед Eclipse SWT так реализован. Хоть он и велосипед, но его создатели грамотные и известные люди с опытом в подобных делах.

Есть API, которое все используют, а реализация на разных системах своя.
В Linux - это GTK + Cairo. В других системах может быть Motif. В Windows, QNX, Mac OS X, Windows CE - нативные виджеты используются. Можно через HTML реализовать и т.д и т.п.

Герб на наркомана похож с такими предложениями.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено CPP , 05-Янв-14 12:10 
Давно надо было это сделать. Хотя если бы взяли API из Qt мне было бы проще -)

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:26 
Это для того, чтобы потомкам было чем заняться. Например заниматься переписыванием с этого на очередную библиотеку.

Есть хорошая объектная библиотека Qt именно под C++, а предлагается подставлять костыли под инородную С-шную архитектуру....


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено anonymous , 05-Янв-14 21:45 
Qt — это не C++ по большому счету.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 12:13 
Почему не использовать Skia, которая на "родном" С++, вместо Cairo? (Firefox перешел с Cairo на Skia, да и Chrome на Skia)

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Anonn , 06-Янв-14 06:49 
Богатая фантазия. Подтверждения, конечно же, есть?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 12:29 
Это уже безумие. Добавить в стандарт параллельности, да, стоило. Но графику в стандарт? Чтобы народ распугать и обязать знать ненужную каиро?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено 0xd34df00d , 05-Янв-14 20:10 
В плюсах и без того есть, чем распугивать. Взять ту же параллельность — как думаете, понимает ли средний программист C++11 memory model и все тонкости различных ордерингов?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Vkni , 05-Янв-14 20:58 
> В плюсах и без того есть, чем распугивать. Взять ту же параллельность
> — как думаете, понимает ли средний программист C++11 memory model и
> все тонкости различных ордерингов?

Я подозреваю, что и не средний не понимает.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 23:03 
Тонкости моделей памяти, о которых вы говорите, - это скорее тонкости устройства современных процессоров, а не тонкости самого языка. При разработке С++ во всех местах, где можно сделать выбор между простотой языка и производительностью, делается выбор в пользу производительности, такая уж у С++ ниша. Вот и в данном случае разработчики стандарта приняли решение тонкостей модели памяти не скрывать.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено 0xd34df00d , 05-Янв-14 23:07 
> Тонкости моделей памяти, о которых вы говорите, - это скорее тонкости устройства
> современных процессоров, а не тонкости самого языка. При разработке С++ во
> всех местах, где можно сделать выбор между простотой языка и производительностью,
> делается выбор в пользу производительности, такая уж у С++ ниша. Вот
> и в данном случае разработчики стандарта приняли решение тонкостей модели памяти
> не скрывать.

Безусловно, и члены Комитета вроде даже не скрывают, что разрабатывали модель памяти и, в частности, memory ordering, с весьма весомой оглядкой на современные процессоры. Тем не менее, теперь это часть плюсов, и, по-хорошему, это нужно знать, чтобы писать оптимальный многопоточный код (и чтобы его потом отлаживать ещё).


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Anonn , 06-Янв-14 06:45 
Вы некомпетентны. Каким образом вы так чудно связали модель памяти C++ с процессором?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Anonn , 06-Янв-14 06:48 
Владеть в совершенстве всеми возможностями C++ уже невозможно. Но не особенно и нужно - вы ведь платите лишь за то, что используете.
Да, многопоточные программы писать нетривиально, в том числе под C++. Но есть отличные книги, C++ Concurrency in Action к примеру. Всё разложено по полочкам и вполне понятно.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено annulen , 10-Янв-14 12:59 
> Взять ту же параллельность — как думаете, понимает ли средний программист C++11 memory model и все тонкости различных ордерингов?

Такой и атомарные операции на builtin'ах не поймет, так что хуже не стало.



"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 13:17 
как надоели...
лучше бы енумы и модули нормальные сделали

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:56 
> как надоели...
> лучше бы енумы и модули нормальные сделали

"Енумов" в с++ пять видов. Все с фатальным недостатком?


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено фдуч , 06-Янв-14 13:29 
> "Енумов" в с++ пять видов. Все с фатальным недостатком?

Вы же не рассматриваете набор дефайнов или констант в качестве енума? А остальное всё да, увы, с фатальными недостатками. См. ниже.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено 0xd34df00d , 05-Янв-14 20:11 
> как надоели...
> лучше бы енумы и модули нормальные сделали

А что с енумами-то не так, особенно в 11?

Вот нормальную RTTI/CTTI сделали бы, концепты, это вот всё — это да, такие претензии я бы ещё понял.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено anonymous , 06-Янв-14 13:25 
Проблемы енума все те же:

1. названия членов енума теряются при компиляции. В результате нужно писать вручную перевод в строку (кто использовал енумы для описания ключевых слов какого-либо входного/выходного потока или конфига, тот поймёт эту боль).

2. перевод енума в строку тоже как был корявый, так и остался, потому что это не настоящий класс и в нем не может быть методов.

3. нет итератора по енуму.

Нововведённое ограничение области видимости бесполезно, потому что всё равно надо по-старинке завернуть енум в класс или неймспейс чтобы реализовать вышеописанные пункты в объектном стиле.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено тоже Аноним , 06-Янв-14 15:02 
А при чем здесь С++ enum? Для ваших задач нужен не enum, а статическая std::map с ключами std::string или класс на ее основе. Для тех задач, где в С++ используется enum, это чрезвычайный оверхед, поэтому в стандарте ничего подобного и нет.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 07-Янв-14 01:32 
Можете не рассказывать, я прекрасно знаю, как простейшая семантика типа енума в с++ вырастает в десятки строчек мусора ради того, чтобы было "всё правильно". Десятки статических мапов инициализируются при старте, всё вокруг трещит винтом и иногда ещё падает из-за того, что очередной новый коллега в порядке инициализации не разобрался.

С++ используется в разных задачах, а не только для "тех". Когда счёт строчек в программном продукте идёт на сотни тысяч, а коллеги исчисляются десятками, то язык должен помогать, а не побеждать прогеров и сроки.

Смешно просто, сама суть типа - enumerable - не работает. Никакой ни енумербл, хрен его проитерируешь. И даже это в 2011 году не смогли сделать.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено annulen , 10-Янв-14 13:02 
> А при чем здесь С++ enum? Для ваших задач нужен не enum,
> а статическая std::map с ключами std::string или класс на ее основе.

Здесь должен быть как минимум std::unordered_map, хотя гораздо правильнее было бы встроить в компилятор генерацию идеальных хэш-функций для статических хэшей, как в gperf.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено 0xd34df00d , 06-Янв-14 16:42 
Ну так это всё к CTTI и RTTI на самом деле.

По всем функциям класса (в темплейте) или объекта (в рантайме) тоже бывает полезно пройтись, например.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено фдуч , 07-Янв-14 01:35 
> Ну так это всё к CTTI и RTTI на самом деле.
> По всем функциям класса (в темплейте) или объекта (в рантайме) тоже бывает
> полезно пройтись, например.

А как угодно, хоть синтаксический сахар, хоть RTTI. Лишь бы на 10 полезных строк не надо было писать 10 бесполезных.
Всего лишь нужно было сделать как в яве хотя бы. Енум - обычный класс со статическими константами. И область видимости тут и методы и даже базу с RTTI можно в stdlib вложить.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 07-Янв-14 06:02 
> Всего лишь нужно было сделать как в яве хотя бы.

Если нужно как в яве - нужно использовать яву. Не нужно для этого делать из си яву.


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 06-Янв-14 21:24 
> перевод в строку (кто использовал енумы для описания ключевых слов какого-либо
> входного/выходного потока или конфига, тот поймёт эту боль).

неа, не понимаю. это спокойно автоматизируется.


"В стандарт C++ предложено добавить API на основе..."
Отправлено фдуч , 07-Янв-14 01:37 
>> перевод в строку (кто использовал енумы для описания ключевых слов какого-либо
>> входного/выходного потока или конфига, тот поймёт эту боль).
> неа, не понимаю. это спокойно автоматизируется.

Я ж разве спорю. В с++ всё можно сделать. Спокойно. Я и сам так делал, пока на с++ работал. Просто ещё +30% к числу полезных строчек кода.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено фдуч , 06-Янв-14 13:26 
Проблемы енума все те же:

1. названия членов енума теряются при компиляции. В результате нужно писать вручную перевод в строку (кто использовал енумы для описания ключевых слов какого-либо входного/выходного потока или конфига, тот поймёт эту боль).

2. перевод енума в строку тоже как был корявый, так и остался, потому что это не настоящий класс и в нем не может быть методов.

3. нет итератора по енуму.

Нововведённое ограничение области видимости бесполезно, потому что всё равно надо по-старинке завернуть енум в класс или неймспейс чтобы реализовать вышеописанные пункты в объектном стиле.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Kodir , 06-Янв-14 22:49 
Язык D вам в помощь :)

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 14:07 
>Создание подобной обёртки упрощает высокое качество кода Cairo

Можно качественную оценку, извиняюсь за тавтологию, высокости качества кода после упрощения


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено umbr , 05-Янв-14 14:26 
Нафига козе баян?
Зачем API вбивать в стандарт?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:55 
> Нафига козе баян?
> Зачем API вбивать в стандарт?

Что бы новые версии библиотек/новые версии ОС/новые платформы не ломали существующие программы.
Если бы это уже было реализовано, то никаких проблем с реализацией интерфейса на с++ например под андроид не возникало бы, а так Qt потребовалось 4 года и смена владельца чтобы выпустить совместимую версию.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено 0xd34df00d , 05-Янв-14 20:13 
> Если бы это уже было реализовано, то никаких проблем с реализацией интерфейса
> на с++ например под андроид не возникало бы, а так Qt
> потребовалось 4 года и смена владельца чтобы выпустить совместимую версию.

А так разработчикам компиляторов в аналогичных случаях потребуется +4 года, чтобы поддерживать эту часть стандарта. Совсем другое дело!


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Anonn , 06-Янв-14 06:52 
Зато будет уже стандартом, и даже талантам Microsoft придётся реализовать поддержку.

"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 06-Янв-14 06:58 
> Зато будет уже стандартом, и даже талантам Microsoft придётся реализовать поддержку.

угу. такую же, как они для c99 сделали, например.


"В стандарт C++ предложено добавить API на основе..."
Отправлено Аноним , 06-Янв-14 11:10 
> угу. такую же, как они для c99 сделали, например.

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


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 05-Янв-14 22:42 
> Если бы это уже было реализовано, то никаких проблем с реализацией интерфейса
> на с++ например под андроид не возникало бы

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


"В стандарт C++ предложено добавить API на основе..."
Отправлено Аноним , 06-Янв-14 11:11 
> если бы ведроид проектировали не жопой, то никаких проблем бы не возникло
> изначально.

Ну как же хипстеры из гугли да вдруг без NIH-синдрома, ты чего, Кэп?


"В стандарт C++ предложено добавить API на основе..."
Отправлено Аноним , 06-Янв-14 17:30 
>> если бы ведроид проектировали не жопой, то никаких проблем бы не возникло
>> изначально.
> Ну как же хипстеры из гугли да вдруг без NIH-синдрома, ты чего,
> Кэп?

(ехидно) Хипстеры с оным синдромом, по-моему, в гораздо большем количестве пасутся на distrowatch


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 06-Янв-14 21:18 
> (ехидно) Хипстеры с оным синдромом, по-моему, в гораздо большем количестве пасутся на
> distrowatch

не, у этих не хватает ресурсов, чтобы «до основания разрушить, а затем…» так, обои нескучные делают.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Vkni , 05-Янв-14 21:00 
> Нафига козе баян?
> Зачем API вбивать в стандарт?

Есть понятие стандартной библиотеки языки - это и есть API, вбитый в стандарт. Реализаций libStdC++ несколько, а вот API у них стандартный.

В данном случае планируется включить в стандартную библиотеку C++ ещё и двумерную графику. В 86-м году, по понятным причинам этого сделать не могли, но очень хотели.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено bOOster , 05-Янв-14 14:26 
Всю жизнь пытались отделить реализацию языка от абстракции интерфейсов пользователя и нате. Давайте слепим все в единую кучу..
Смысла ноль. Если и реализовывать то в отдельных, стандартизированных библиотеках типа libc++

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 14:36 
Наконец-то настала пора, когда с++ сам себя уничтожает. Новый с++11 это было нечто, но вот графический тулкит это совсем ни в какие ворота

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:52 
c++ хоронили еще до вашего рождения, и если будете так нервничать, то с++ вас еще и переживет.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 06-Янв-14 03:29 
>c++ хоронили еще до вашего рождения

Если не умеете угадывать возраст языков программирования и людей, не стоит говорить без чёткой уверенности.
>с++ вас еще и переживет.

В этом я уверен на 100%, также как алгол, фортран и ассемблер для Motorola 68000


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:13 
Что-нибудь для работы с БД запили бы.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено umbr , 05-Янв-14 15:59 
Ога, и скрипты, для полноты картины :)

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено kurokaze , 05-Янв-14 15:13 
>Так как Cairo написан на языке Си, в стандарте ISO C++ планируется использовать обёртку для языка C++

(facepalm) уберите этот ужас, я его достаточно натерпелся под GTK ваяя


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 15:58 
В java так сделали (awt/swing) результаты плачевные.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Петр , 05-Янв-14 16:49 
По-видимому, в стандарт C++ надо включать вообще все. А что: простой язык, всем известный во всех деталях, пара лишних возможностей никому не помешает...

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено хрюкотающий зелюк , 05-Янв-14 17:09 
Это ошибка! Не надо такое делать, ни в коем случае!

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено VKraft , 05-Янв-14 19:50 
это идея на фоне легализации? )
даже если не все зависимости для рантайма но всё-же:
#cd /usr/ports
#make all-depends-list
/usr/ports/ports-mgmt/pkg
/usr/ports/devel/libtool
/usr/ports/devel/pkgconf
/usr/ports/x11/xcb-util-renderutil
/usr/ports/x11/glproto
/usr/ports/x11/dri2proto
/usr/ports/x11/pixman
/usr/ports/x11/libXrender
/usr/ports/print/freetype2
/usr/ports/graphics/png
/usr/ports/x11-fonts/fontconfig
/usr/ports/graphics/libGL
/usr/ports/devel/glib20
/usr/ports/devel/pcre
/usr/ports/devel/gmake
/usr/ports/devel/xorg-macros
/usr/ports/x11/libxcb
/usr/ports/x11/xcb-util
/usr/ports/lang/perl5.16
/usr/ports/x11/renderproto
/usr/ports/x11/libX11
/usr/ports/x11/xproto
/usr/ports/devel/cmake
/usr/ports/textproc/expat2
/usr/ports/devel/makedepend
/usr/ports/lang/python2
/usr/ports/textproc/py-libxml2
/usr/ports/lang/python27
/usr/ports/devel/bison
/usr/ports/x11/libXext
/usr/ports/x11/libXxf86vm
/usr/ports/x11/libXdamage
/usr/ports/x11/libXfixes
/usr/ports/graphics/libdrm
/usr/ports/devel/libffi
/usr/ports/devel/gettext
/usr/ports/devel/libcheck
/usr/ports/x11/xcb-proto
/usr/ports/devel/libpthread-stubs
/usr/ports/x11/libXau
/usr/ports/x11/libXdmcp
/usr/ports/textproc/libxslt
/usr/ports/textproc/libxml2
/usr/ports/x11/bigreqsproto
/usr/ports/x11/xcmiscproto
/usr/ports/x11/xextproto
/usr/ports/x11/xtrans
/usr/ports/x11/kbproto
/usr/ports/x11/inputproto
/usr/ports/x11-fonts/xf86bigfontproto
/usr/ports/devel/cmake-modules
/usr/ports/devel/m4
/usr/ports/x11/xf86vidmodeproto
/usr/ports/x11/damageproto
/usr/ports/x11/fixesproto
/usr/ports/devel/libpciaccess
/usr/ports/security/libgcrypt
/usr/ports/misc/pciids
/usr/ports/security/libgpg-error

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 07-Янв-14 05:51 
Сразу видно бздельника: спам на страницу, при том эталонно бесполезный.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено VKraft , 05-Янв-14 19:52 
*cd /usr/ports/graphics/cairo

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Пиу , 05-Янв-14 19:56 
а как быть с версионностью? в стандарте будет либо фекалии мамонта либо постоянные поломашки

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 22:28 
> а как быть с версионностью? в стандарте будет либо фекалии мамонта либо
> постоянные поломашки

Понимаешь, золотой середины в ПО не существует по определению. Аминь.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 20:59 
А звуковую? Звуковую библиотеку добавим?

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 22:29 
> А звуковую? Звуковую библиотеку добавим?

А 3D? 3D-то когда?


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 05-Янв-14 22:45 
> А звуковую? Звуковую библиотеку добавим?

и 3д движок, обязательно! и физический API!


"В стандарт C++ предложено добавить API на основе..."
Отправлено 0xd34df00d , 05-Янв-14 22:45 
И линейную алгебру, и пару реализаций SVM. И без статистики никуда.

"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 05-Янв-14 22:47 
> И линейную алгебру, и пару реализаций SVM. И без статистики никуда.

слушай, дошутимся ведь…


"В стандарт C++ предложено добавить API на основе..."
Отправлено Аноним , 06-Янв-14 11:17 
> и 3д движок, обязательно! и физический API!

Вы тут поаккуратнее! А то я про LeechCraft пошутил уже как-то раз...


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 05-Янв-14 21:30 
Больше мощности добавляем все, чтобы язык казался еще лучше. (Сарказм)
А вообще так всегда, рано или поздно начинается истерия и начинаются интеграции всего что в голову придет. Язык C++ настолько активно развивается что эта самая активность развития начинает отпугивать

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено umbr , 06-Янв-14 01:03 
Форки спасут Мир.
И на С++ свет клином не сошелся.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Kodir , 06-Янв-14 03:26 
Некоторые молодые хомячки даже не попали в ту эпоху, когда Си был "просто языком" - это был мрак! Микрософт лепит одно, Борланд -  другое, Ватком, Симантик - каждый своей дорогой и общего у них было только "void main()"! Ну и набор строковых функций. КАК можно писать в этом бардаке, да ещё многоплатформенно?
Если бы кто-то думал мозгами, 30 лет назад могли ввести стандарты и сейчас мы бы наблюдали всеобщую гармонию и совместимость всего со всем. Вместо этого мы видим судорожные попытки комитета догнать C# по фичастости, а важные программистские области (3D, мультимедия, СУБД, сеть) как при каменном веке - продолжаем реализовывать прикручиванием сторонних либ на изоленте и молитвах.
Cairo нужен уже потому, что ничего достойного в области 2Д ещё не появилось. А как стандарт, он может обеспечить громадный шаг вперёд для всех производителей ГУЁВ - очевидно же, что только громоздкость поддержки 2D API для каждой платформы - сдерживающий фактор для кучи достойных библиотек. А выживший уродец Qt - для меня не альтернатива.

"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 06-Янв-14 03:45 
говорящая жопа, ты опять выходишь на связь?!

"В стандарт C++ предложено добавить API на основе..."
Отправлено Anonn , 06-Янв-14 06:54 
usri,a

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 06-Янв-14 11:15 
> них было только "void main()"!

Ты, лох, даже на си программить не умеешь. Куда уж тебе в плюсы лезть, если ты в декларации main лажаешься?

> Вместо этого мы видим судорожные попытки комитета догнать C# по фичастости,

То-то я и смотрю - все игроделы фигачат на плюсах и знать ничего не хотят о C#, а половина програмеров MSVS стали валить на gcc и шланг. Ибо не в кассу им это уродище кривое, с кучей проблем.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 06-Янв-14 13:15 
Да что уже, валим все туда, все равно там свалка

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено lucentcode , 06-Янв-14 23:55 
Сама идея неплохая. Приложение, использующее Cairo писал всего раз. Но впечатления от использования данной библиотеки самые положительные. Сразу видно, что библиотека очень качественно спроектирована. Вот только код на C(пусть и реализующий ООП) плохо стыкуется с кодом на C++. Нужно будет байдинг к плюсам писать. Потому, что автоматическое транслирование с С в C++ не может оказаться весьма не надёжным.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Аноним , 07-Янв-14 16:45 
объясните мне пожалуйста, как может существовать библиотека 2d графики без минимальнейших контролов, как минимум окон-виджетов? куда она рисовать будет, в память и на диск?
или к ней будет прилагаться кастрированный какой-нибудь std::create_window? или std::create_new_canvas_где_попало_неизвестного_размера?
тогда за этой универсальностью протеряется вся гибкость. на некоторых платформах вон и окон нету.

"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Vkni , 07-Янв-14 22:53 
>  объясните мне пожалуйста, как может существовать библиотека 2d графики без минимальнейших контролов
> тогда за этой универсальностью протеряется вся гибкость. на некоторых платформах вон и окон нету.

А тут диалектика - и с управляющими компонентами нельзя, и с ними нельзя: на том же принтере никаких кнопочек в принципе быть не может; без поддержки окон на десктопах фигня получается.

Хотя, теоретически, можно сделать аналог DC из Win32, который будет предоставлять сторонняя библиотека или ОС со всеми необходимыми интерфейсами.


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 08-Янв-14 01:00 
> объясните мне пожалуйста, как может существовать библиотека 2d графики без минимальнейших
> контролов, как минимум окон-виджетов?

точно так, как существует OpenGL, например. люди, гугель что, веерные баны начал раздавать?


"В стандарт C++ предложено добавить API на основе..."
Отправлено Аноним , 08-Янв-14 19:43 
ну то есть воспользоваться этой либой (как и OpenGL) без платформно-оконно-зависимого кода будет нельзя?

"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 09-Янв-14 01:25 
> ну то есть воспользоваться этой либой (как и OpenGL) без платформно-оконно-зависимого кода
> будет нельзя?

какой «этой» — я не знаю: я ещё с прошлого цпп-стандарта понял, что нечего от новых стандартов ждать. а после такой наглядной демонстрации содержимого головы того, кто стандартами занимается — на чтение следующих вообще не буду тратить силы. равно как и на хипстерософт, который их будет требовать. поэтому я не знаю и знать не собираюсь, что там планируется и как.

а отсутствие прибитого гвоздями кода для первичной инициализации в графбиблиотеке — дело нормальное. это библиотека для рисования, знаешь ли. а не для создания окон и кнопочек. библиотека для рисования вообще не должна знать, на чём она рисует и как это создать.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено Джо , 09-Янв-14 17:14 
Странные идеи. Попытка из плюсов сделать Java?

Лучше бы плюсовым ABI занялись, чтобы можно было уйти от Сишного... :)


"В стандарт C++ предложено добавить API на основе..."
Отправлено arisu , 10-Янв-14 01:13 
> Лучше бы плюсовым ABI занялись

фу на тебя! это же ОЧЕНЬ ПОЛЕЗНОЕ. а если комитет по стандартизации сделает что-то весьма (или очень) полезное, все его участники опозорят себя навек в глазах участников других комитетов по стандартизации.

задача таких комитетов — собрать много бесполезного хлама, разбавить его парочкой фич, которые на практике полезны весма относительно, старательно избежать включения фич, которые очень полезны и релизнуть новый стандарт. в идеале — надо делать это как можно чаще, чтобы разработчики компиляторов не успевали реализовывать весь хлам.


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено bOOster , 10-Янв-14 10:47 
> Странные идеи. Попытка из плюсов сделать Java?
> Лучше бы плюсовым ABI занялись, чтобы можно было уйти от Сишного... :)

Зачем? Чтобы прийти к JAVAшному??  


"В стандарт C++ предложено добавить API на основе свободной г..."
Отправлено annulen , 10-Янв-14 13:06 
> Лучше бы плюсовым ABI занялись, чтобы можно было уйти от Сишного... :)

А чего тут занимать, Itanium C++ ABI уже давно придуман, все приличные компиляторы его используют.