Re[30]: Про boost
От: skeptik_  
Дата: 08.08.08 13:00
Оценка:
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, skeptik_, Вы писали:


E>>>>>Как, тебе хватает $100 в месяц?


_>>>>Мне хватает 70 евро в час.


E>>>Где же ты таких лохов находишь?


_>>Ась? Стандартная ставка для специалиста с уровнем выше среднего вообще-то...


E>Так тож для специалистов. Да еще уровнем выше среднего...


Аргументы, как я понимаю, кончились? Пошли в ход оскорбления? Я был о тебе, честно говоря, лучшего мнения.
Re[31]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 08.08.08 13:05
Оценка:
Здравствуйте, skeptik_, Вы писали:

_>Аргументы, как я понимаю, кончились?


А мне надоело в одиночку аргументы приводить.

_>Пошли в ход оскорбления?


Это был откровенный стеб, после понтов о фрилансерстве.

_>Я был о тебе, честно говоря, лучшего мнения.


Всем свойственно ошибаться. В конце-концов, мы же в "Священных воинах" находимся. Здесь исключением является конструктивный разговор.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[32]: Про boost
От: skeptik_  
Дата: 08.08.08 13:19
Оценка:
Здравствуйте, eao197, Вы писали:

_>>Пошли в ход оскорбления?


E>Это был откровенный стеб, после понтов о фрилансерстве.


Какие понты? Я 15 лет живу в Германии, здесь такие ставки для фрилансеров -- обычное дело, средняя сейчас — 65 евро. SAP'шники так и того больше зарабатывают.
Re[23]: Про boost
От: DmitryKarpov Россия  
Дата: 08.08.08 21:54
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>Я не пониамаю тебя. Буст стремится объеденить лучшее что есть в индустрии с оглядкой на принцыпы залорженные в C++ и его библиотеках. Если есть билиотека решающая поставленные задачи лучеш чем решение в бусте , я не вижу причин по которым бы эта библиотека не вытеснила бустовскую и не заняла ее место.


Мы тут, конечно, все не Грибоедовы, но хотя бы чуть-чуть текст на опечатки можно проверять?
(Фанаты буста проигрывают по русскому языку)
Re[28]: Про boost
От: skeptik_  
Дата: 09.08.08 00:35
Оценка: -1 :)
Здравствуйте, eao197, Вы писали:

E>Понятно, т.е. вместо кода:

E>
E>int result = do_something();
E>if( result )
E>  throw some_exception( "do_something failed with result: " + slexcast( result, hex_0x ) );
E>

E>мне нужно будет делать что-то вроде:
E>
E>int result = do_something();
E>if( result )
E>  throw some_exception( "do_something failed with result: " + str( format( "0x%x" ) % result ) );
E>


E>Зато, блин, буст. Не какой-нибудь свой велосипед.


Поискал в гугле slexcast, нашёл твой сайт. Всё сразу стало ясно: запущенный случай велосипедостроедизма:
args_4 => Boost.Program_options
auto_ptr_3 => Boost.Smart_ptr
cls_2 => Boost.Program_options
cpp_util_2 => Boost.Conversion + noncopyable + Function
mxx4 => Boost.Build
smart_ref_3 => Boost.Smart_ptr
threads_1 => Boost.Thread

Не, тебе своего времени не жалко? Ну ладно было бы что-то чего нет в бусте, или было бы сделано лучше. Так у тебя ж даже тестов нормальных нет и функциональности десятая часть от бустовских аналогов. Хочется что-то сделать — сделай то, чего ещё нет. Например Boost.DB, Boost.GUI или Boost.Net. Сразу станешь famous.
Re[29]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 09.08.08 06:06
Оценка: 3 (3) +2
Здравствуйте, skeptik_, Вы писали:

_>Поискал в гугле slexcast, нашёл твой сайт. Всё сразу стало ясно: запущенный случай велосипедостроедизма:

_>args_4 => Boost.Program_options

Библиотеки args_* я развивал и использовал где-то с 1996 до 2004. Boost.Program_options появился в Boost 1.32, это где-то 2004-й год.

_>auto_ptr_3 => Boost.Smart_ptr


auto_ptr_* это попытка устранить косяки с auto_ptr в разных компиляторах (VC++ 5.0, 6.0, g++ 2.95). Где-то в районе 1998-2002 гг.

_>cls_2 => Boost.Program_options


Мимо кассы. Cls -- это синтаксис разметки, основанный на ситаксисе языка программирования Curl. В чем-то конкурент XML и YAML. Первая реализация -- 2001-й год, сейчас идет разработка cls_3. Уже несколько лет есть ее порт на Ruby -- ClsRuby.

_>cpp_util_2 => Boost.Conversion + noncopyable + Function


+ еще адаптация к особенностям разных компиляторов. И все это в нескольких килобайтах архива.
Эксперименты с unary_method -- это так, попытка приобщится к modern C++ design. В будущем я его вообще оттуда выкину.
Новые версии cpp_util_2 я вообще очень давно на сайт не выкладывал, а там появились новые вещи, например, hex_dump::string_dumper, hex_dump::hex_escaped_string_dumper, string_piece, temporary_object_ref.

_>mxx4 => Boost.Build


mxx4 был разработан в начале 2001 года. В 2004 был заменен на Mxx_ru. В некоторых вещах Boost.Build вообще не имеет никаких преимуществ перед инструментами типа Mxx_ru или SCons, если не сказать больше.

Имхо, Boost.Build может нравится только тем, кто нормальных инструментов не видел, т.к. SCons, qmake, Rake, CMake, MPC, Mxx_ru.

_>smart_ref_3 => Boost.Smart_ptr


Первые smart_ref_* у меня появились, если не ошибаюсь, где-то в 97-м. Одна из целей smart_ref_* -- сделать возможным экспорт умных указателей из DLL. Уже года три не используется -- есть ACE_Refcounted_Auto_Ptr.

_>threads_1 => Boost.Thread


Библиотека threads появилась в 96-м, и прошла через Windows, OS/2, Linux, BSD еще до того, как о Boost-е узнала общественность. Затем была адаптирована даже под NonStop Kernel. С 2004 года не используется вообще. Сейчас есть средства ACE.

Кстати, в threads_1 такие вещи, как condition variables и rw_mutex, присутствовали давно и на всех платформах. В отличии от.


Ты еще забыл ObjESSty => Boost.Serialization.

_>Не, тебе своего времени не жалко?


Жалко. Но это не было потерянное время. Сейчас такие вещи, как cls, mxx_ru и objessty -- это ключевые инструменты в наших проектах. А mxx4 был хорошим опытом реализации своего скриптового языка, который затем несколько раз был востребован.

_>Ну ладно было бы что-то чего нет в бусте, или было бы сделано лучше.


ObjESSty -- половины ее функциональности в бусте нет, а вторая половина в бусте просто хуже.
cls -- в бусте нет.

_>Хочется что-то сделать — сделай то, чего ещё нет. Например Boost.DB, Boost.GUI или Boost.Net. Сразу станешь famous.


А я и делаю. ObjESSty, например. Mxx_ru. SObjectizer. За счет чего уже famous в узких кругах.

Делать что-нибудь для Boost? Это неправильная постановка вопроса -- разрабатывать нужно то, что необходимо тебе и, при желании, публиковать в виде OpenSource. Кто заинтересуется -- присоединится к разработке.

Boost.DB => есть OTL, Soci, Qt, Ultimate++
Boost.GUI => есть FLTK, FOX, Qt, wxWidgets, Ultimate++
Boost.Net => есть ACE, Poco

Ну и нафига в очередной раз заводить песню "мы наш мы новый мир построим"?


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[30]: Про boost
От: skeptik_  
Дата: 09.08.08 06:38
Оценка: -1
Здравствуйте, eao197, Вы писали:

И за 11-12 лет ты к своим либом даже юнит-тесты не собрался прикрутить? Короче, говорить тут не о чём. Велосипед -- он и есть велосипед. А то, что велосипеды используются дальше, когда появились production quality аналоги -- это уже клиника.
Да, вот ты сказал, что boost::lexical_cast это плохо, ибо тормозит и негибко. И что slexcast это круто. Ну что ж, смотрим в код, и видим:
template< class From, class Putter >
std::string
slexcast(
    //! Что преобразуется.
    const From & f,
    //! Как преобразуется.
    const Putter & putter )
{
    std::stringstream    ss;
    putter( ss, f );

    return ss.str();
}

и ты хочешь сказать, что это быстрее чем boost::lexical_cast или гибче чем boost::format?
Комментарии нужны, или и так всем всё ясно?
Re[31]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 09.08.08 07:51
Оценка:
Здравствуйте, skeptik_, Вы писали:

_>И за 11-12 лет ты к своим либом даже юнит-тесты не собрался прикрутить?


Доработки покрываются unit-тестами, то что было сделано давно без unit-тестов и не меняется, так без unit-тестов и остается.

Если не ошибаюсь, 12-ть лет назад unit-тесты широко использовались разве что Кентом Беком.

_>Короче, говорить тут не о чём. Велосипед -- он и есть велосипед.


Да, я люблю строить велосипеды. Временами это получается.

_>А то, что велосипеды используются дальше, когда появились production quality аналоги -- это уже клиника.


В моих условиях проще пользоваться своим маленьким велосипедом, чем production quality паровозом Boost-а.

_>Да, вот ты сказал, что boost::lexical_cast это плохо, ибо тормозит и негибко. И что slexcast это круто. Ну что ж, смотрим в код, и видим:

_>
_>template< class From, class Putter >
_>std::string
_>slexcast(
_>    //! Что преобразуется.
_>    const From & f,
_>    //! Как преобразуется.
_>    const Putter & putter )
_>{
_>    std::stringstream    ss;
_>    putter( ss, f );

_>    return ss.str();
_>}
_>

_>и ты хочешь сказать, что это быстрее чем boost::lexical_cast или гибче чем boost::format?

Я хочу сказать, что это гибче, чем boost::lexical_cast. А на произвольных пользовательских типах не медленнее. И проще в нужных use case-ах, чем boost::format.

_>Комментарии нужны, или и так всем всё ясно?


Я бы послушал


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[28]: Про boost
От: Roman Odaisky Украина  
Дата: 09.08.08 16:47
Оценка:
Здравствуйте, eao197, Вы писали:

E>Понятно, т.е. вместо кода:

E> throw some_exception( "do_something failed with result: " + slexcast( result, hex_0x ) );
E>мне нужно будет делать что-то вроде:
E> throw some_exception( "do_something failed with result: " +
E> (format( "0x%x" ) % result).str() );
E>[/ccode]

На всякий случай, в Boost.Format это выглядит иначе:
throw some_exception(str(boost::format("do_something failed with result: 0x%x") %result));
throw some_exception(str(boost::format("Oops! Result = 0x%1$x (%1%), error = %2%") %errno %strerror(errno)));
До последнего не верил в пирамиду Лебедева.
Re[30]: Про boost
От: VoidEx  
Дата: 10.08.08 05:52
Оценка:
Здравствуйте, eao197, Вы писали:

E>Имхо, Boost.Build может нравится только тем, кто нормальных инструментов не видел, т.к. SCons, qmake, Rake, CMake, MPC, Mxx_ru.


В порядке интереса, а чем же Boost.Build плох?
Re[31]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.08.08 06:58
Оценка:
Здравствуйте, VoidEx, Вы писали:

E>>Имхо, Boost.Build может нравится только тем, кто нормальных инструментов не видел, т.к. SCons, qmake, Rake, CMake, MPC, Mxx_ru.


VE>В порядке интереса, а чем же Boost.Build плох?


Когда я года четыре назад пытался найти замену mxx4 чтобы переползти на одну экзотическую платформу, то смотрел на Boost.Build в попытке добавить туда поддержку нужного мне компилятора. Сейчас уже не помню подробностей, но у меня осталось впечатление, что Boost.Build -- это такая адская смесь недо-make и недо-языка программирования. Из особенно ярких воспоминаний -- необходимость ставить пробелы перед завершающими строку точками с запятой.

Но сравнению с Boost.Build такие вещи, как SCons и MPC осваиваются гораздо проще. При этом SCons еще и построен на базе нормального языка программирования (как и Rake, Mxx_ru).

Если бы сейчас поиск на RSDN работал, то можно было бы попробовать найти обсуждения Boost.Build-а в форумах по C++.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[32]: Про boost
От: VoidEx  
Дата: 10.08.08 07:23
Оценка:
Здравствуйте, eao197, Вы писали:

E>Когда я года четыре назад пытался найти замену mxx4 чтобы переползти на одну экзотическую платформу, то смотрел на Boost.Build в попытке добавить туда поддержку нужного мне компилятора. Сейчас уже не помню подробностей, но у меня осталось впечатление, что Boost.Build -- это такая адская смесь недо-make и недо-языка программирования. Из особенно ярких воспоминаний -- необходимость ставить пробелы перед завершающими строку точками с запятой.


Пробел многих раздражает почему-то

E>Но сравнению с Boost.Build такие вещи, как SCons и MPC осваиваются гораздо проще. При этом SCons еще и построен на базе нормального языка программирования (как и Rake, Mxx_ru).


Не знаю, может, изменилось что-то, но, по-моему, буст.билд очень просто осваивается.
Возможно, у меня требования небольшие, но что такого особенного умеет, например SCons?

E>Если бы сейчас поиск на RSDN работал, то можно было бы попробовать найти обсуждения Boost.Build-а в форумах по C++.

Да, с поиском что-то не то
Re[30]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.08.08 08:06
Оценка:
Здравствуйте, eao197, Вы писали:

_>>cpp_util_2 => Boost.Conversion + noncopyable + Function


E>+ еще адаптация к особенностям разных компиляторов. И все это в нескольких килобайтах архива.

E>Эксперименты с unary_method -- это так, попытка приобщится к modern C++ design. В будущем я его вообще оттуда выкину.
E>Новые версии cpp_util_2 я вообще очень давно на сайт не выкладывал, а там появились новые вещи, например, hex_dump::string_dumper, hex_dump::hex_escaped_string_dumper, string_piece, temporary_object_ref.

Выложил на сайт последнюю версию cpp_util_2. Документации в on-line нет, т.к. она генерируется doxygen-ом в utf-8, а narod.ru этого очень не любит. Зато есть ее архив.

Там в документации есть специальный раздел, посвященный lexcast/slexcast с объяснением того, почему я сделал lexcast вместо использования boost::lexical_cast.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[33]: Про boost
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.08.08 08:14
Оценка:
Здравствуйте, VoidEx, Вы писали:

E>>Но сравнению с Boost.Build такие вещи, как SCons и MPC осваиваются гораздо проще. При этом SCons еще и построен на базе нормального языка программирования (как и Rake, Mxx_ru).


VE>Не знаю, может, изменилось что-то, но, по-моему, буст.билд очень просто осваивается.

VE>Возможно, у меня требования небольшие, но что такого особенного умеет, например SCons?

К сожалению, у меня нет времени на то, чтобы заново ознакомится с Boost.Build и SCons-ом, чтобы провести такое сравнение. Насколько я помню, самое важное -- это различие в подходах. Boost.Build -- это развитие make, тогда как SCons -- это подход на основе шаблонов. Человек в SCons (MPC, Mxx_ru) просто указывает какую цель ему нужно достичь, а формирование make-правил берет на себя SCons.

Итогом этого является то, что проектный файл в SCons (MPC, Mxx_ru) больше напоминает обычную маленькую простую программу. Тогда как в Boost.Build это make-правила со всякими особенностями, присущими make.

Все субъективно, естественно.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[7]: Про boost
От: Danchik Украина  
Дата: 10.08.08 19:20
Оценка:
Здравствуйте, Handie, Вы писали:

RO>>Коней на переправе не меняют, это верно, но если нужна какая-то новая библиотека, по-моему, есть смысл поискать в первую очередь в Boost, а потом уже и в других местах. Логистические проблемы Boost мне не представляются сколько-нибудь значимыми.


H>Посмотрел boost regex и в ужасе перешел на TRE.


Ну и что тебя там напугало? Уже пятый пост шарахаешся?
Возьми тогда boost::xpressive или опять душа в пятки?
Re[21]: Про boost
От: CreatorCray  
Дата: 11.08.08 12:59
Оценка:
Здравствуйте, minorlogic, Вы писали:

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

Интересно. А что ты скажешь если программист не пользуется стандартной билиотекой по умолчанию, но при этом хорошо ее знает и имеет серьезный опыт ее применения?

M>А если кричит что буст это отстой и при этом не строчки не зная и не понимая как это работает

Аналогично. Если от буста отказались после длительного применения?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[23]: Про boost
От: CreatorCray  
Дата: 11.08.08 12:59
Оценка:
Здравствуйте, skeptik_, Вы писали:

_>Ага. А взамен такой товарищ будет юзать самописный список с линейным поиском.

Неверно.

_>Плавали, знаем.

Ну вот и понятно в какой субстанции плавали и соответственно что об этом знаете.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[24]: Про boost
От: skeptik_  
Дата: 11.08.08 13:04
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Здравствуйте, skeptik_, Вы писали:


_>>Ага. А взамен такой товарищ будет юзать самописный список с линейным поиском.

CC>Неверно.

_>>Плавали, знаем.

CC>Ну вот и понятно в какой субстанции плавали и соответственно что об этом знаете.

Нет, просто доводилось исправлять так написанные продукты.
Re[25]: Про boost
От: CreatorCray  
Дата: 11.08.08 13:15
Оценка:
Здравствуйте, skeptik_, Вы писали:

_>Нет, просто доводилось исправлять так написанные продукты.

Дык я про то, что не те вам люди попадались.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[22]: Про boost
От: minorlogic Украина  
Дата: 11.08.08 18:56
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Здравствуйте, minorlogic, Вы писали:


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

CC>Интересно. А что ты скажешь если программист не пользуется стандартной билиотекой по умолчанию, но при этом хорошо ее знает и имеет серьезный опыт ее применения?

M>>А если кричит что буст это отстой и при этом не строчки не зная и не понимая как это работает

CC>Аналогично. Если от буста отказались после длительного применения?


Было бы интересно поработать с таким програмистом, если бы он смог предоставить лучшее решение.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.