Виноват ли Boost в том, что он не похож на Boost? - PullRequest
5 голосов
/ 19 декабря 2008

Я только что читал вступление к фреймворку Boost :: Spirit LL Parser. Предисловие предполагает, что автору и создателю нравится использовать такую ​​технологию синтаксического анализа для чтения параметров программы. Разве у Boost нет собственной библиотеки для параметров программы?

Мне интересно, проверяет ли комитет по ускорению все заметки библиотеки на общие темы и стиль? Кажется, что документы для каждой библиотеки имеют свой собственный вкус.

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

Ответы [ 5 ]

10 голосов
/ 19 ноября 2009

Проще говоря, Spirit существовал до библиотеки Boost.Program-Options. Теперь я всегда использую Boost.Program-Options вместо того, чтобы катиться вручную, используя Spirit.

9 голосов
/ 19 декабря 2008

Вы правы, не все библиотеки boost особенно похожи на boost. Дух является очень хорошим примером этого. Частично причина в том, что когда это было принято, другие библиотеки повышения еще не были приняты / достаточно зрелые, чтобы Дух мог их использовать. (Вот почему есть что-то вроде 3 библиотек Boost, которые определяют свои собственные (несовместимые) значения заполнителей _1, _2 и т. Д.).

В большинстве этих случаев я считаю, что они постепенно работают над тем, чтобы объединить эти странности. Но, на самом деле, Дух был добавлен, потому что это была такая большая и впечатляющая вещь, что ее «непристойность» была прощена. ;)

5 голосов
/ 03 августа 2009

Дух в Повышении может однажды стать Повышением в духе: -)

3 голосов
/ 02 июля 2011

Как сказал Джоэл, у нас не было опций программы, когда родился Дух. Хартмут Кайзер и я (оба разработчики Spirit) используют Program-Options на работе вместо того, чтобы развертывать наш собственный анализатор Spirit. Опции программы делают намного больше, чем просто разбор, и, по крайней мере, для наших нужд производительность разборов командной строки не важна. Для критического анализа производительности я бы определенно использовал Spirit.

1 голос
/ 03 марта 2009

Нет такой вещи, как комитет по повышению стиля. WG21 ISO будет тратить немного больше времени на общий стиль, но даже им удалось забыть std :: ifstream :: ifstream ((std :: string const & filename)

...