?

Log in

No account? Create an account
fixed_capacity_vector - Valse oubliée [entries|archive|friends|userinfo]
aruslan

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]
[ delicious | aruslan's delicious ]

Links
[Links:| Tags Profile Friends FG1 PP gamedev XNA FF Entries Comments Memories ]

fixed_capacity_vector [May. 30th, 2006|04:40 am]
aruslan
[Tags|]

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

По-минимуму - в виде всяческого PR-промоушена.
Чтобы помнили.
LinkReply

Comments:
[User Picture]From: sergey_shandar
2006-05-30 01:15 am (UTC)
"Никогда ничего не просите.
Особенно у тех кто силнее Вас.
Сами все предложат.
Сами все дадут."

Поэтому, сижу и молча ковыряю C Bear. Я другое предлагаю - расширять C Bear. Чем будет отличатся, так это тем что все будет в одном репозитарии Subversion (просто с ветками стабильным и не очень ;-) ), а не 20 век - пошли ZIP, напиши нам письмо, а мы подумаем. Разработку Open Source Projects нужно вести близко по тем принципам, как пишут Wikipedia. Вноси изменения, а потом эти изменения проверяются (если они кому то нужны).
(Reply) (Thread)
[User Picture]From: aruslan
2006-05-30 08:15 am (UTC)
Серёга, ты прям как маленький :)
Как библиотека - буст всё более, ммм, бюэ, думаю, ты понимаешь, о чём я.
То есть тот же твой C Bear - он конкретнее.

Но буст - это же хороший шанс попасть в девятнадцатый том стандарта C++! :))
(Reply) (Parent) (Thread)
[User Picture]From: sergey_shandar
2006-05-30 08:21 am (UTC)
А, Вы о славе :-) Сорри за оффтоп ;-)
(Reply) (Parent) (Thread)
[User Picture]From: aruslan
2006-05-30 08:32 am (UTC)
Ну, я бы назвал славу попасть в стандарт сомнительной.

А вот придя в очередную компанию не видеть очередной набор велосипедов - это приятно.
(Reply) (Parent) (Thread)
[User Picture]From: sergey_shandar
2006-05-30 08:38 am (UTC)
>А вот придя в очередную компанию не видеть очередной набор велосипедов - это приятно.
Мы честно пытались использовать Boost и STL где можно. Со временем, их становится все меньше и меньше в наших проектах. Скорее, более важны соглашения по стандартизации велосипедов, чем велосипеды фирмы Boost. Если у вашего вектора интерфейс практически такой же как и std::vector, то проблем не будет с его использованием ;-)
(Reply) (Parent) (Thread)
[User Picture]From: aruslan
2006-05-30 08:47 am (UTC)
Про "интерфейсы" - думаешь правильно, молодца.
(Reply) (Parent) (Thread)
(Deleted comment)
(Deleted comment)
[User Picture]From: aruslan
2006-05-30 08:18 am (UTC)
Да вряд ли.
Японец там, конечно, гламурненький, но вряд ли это Пушыстик.
(Reply) (Parent) (Thread)
(Deleted comment)
[User Picture]From: aruslan
2006-05-30 07:47 am (UTC)
Накодать такой вектор легко, безусловно.
Оттого и видел больше десятка реализаций.
А в одном проекте - было даже сразу три разных реализации.

Пусть лучше он будет в бусте.
(Reply) (Parent) (Thread)
(Deleted comment)
[User Picture]From: aruslan
2006-05-30 08:51 am (UTC)
На современном этапе развития компиляторов C++ и языка в policy based я не верю совсем. Медленно и неудобно.

Я за простые чистые компоненты ;)
(Reply) (Parent) (Thread)
[User Picture]From: sergey_shandar
2006-05-30 08:58 am (UTC)
>Я за простые чистые компоненты ;)
С тагами интерфейсов :-)
(Reply) (Parent) (Thread)
[User Picture]From: _winnie
2006-05-31 09:20 pm (UTC)
А...

А цикл
for (...) p->~T(); - он выкидывается всеми интересными компиляторами?

просто у меня похоже возникает два варианта.
1) Sequence с полностью стандартным поведением и
2) "контейнер старательного второкурсника-начинающего С++-программиста с лабой написать контейнер".
На компиляторе без уничтожения пустых циклов и агрессивного инлайнинга будет рулить второе. Но С++зилоты будут плеваться.

http://users.livejournal.com/_gvozdoder_/4065.html

(Reply) (Thread)
[User Picture]From: _winnie
2006-05-31 09:26 pm (UTC)
Чем плох этот fixed_capacity_vector как Sequence?
(Reply) (Parent) (Thread)
[User Picture]From: _winnie
2006-05-31 09:30 pm (UTC)
ох не могу прочитать сейчас весь разговор.
(Reply) (Parent) (Thread)
[User Picture]From: aruslan
2006-06-01 12:16 am (UTC)
Знаешь, не могу сказать.
У нас контейнеры были на traits.
Один из traits - как раз как делать конструирование, копирование, присвоение и уничтожение.
И для всех нужных типов он был определен с пустотой в конструировании и уничтожении.

Но вообще это конечно пездец, что _gvozdoder_ наобнаруживал.
Ебланы.
Надо сцуко на Немерле уходить, хоть в JIT не так расстраиваешься.
Хотя оптимизатор в CLR - говно.
(Reply) (Parent) (Thread)
[User Picture]From: _winnie
2006-06-29 12:52 pm (UTC)
Подумал и решил.
Монстр, Удовлетворяющий Стандарту не нужен большинству людей, которых смущает std::vector (ни Кваксу, ни Шодану, ни Диме).

А простой велосипед a-la boost::array - слишком простой, что бы заставить людей не писать самим, и всё равно не удовлетворит всех, что бы все его приняли как стандарт. И слишком простой, что бы его приняли в буст :))) (Если я выкину reverse итераторы, инициализацию из InputIteratorов - то это не boost-style, ИМХО, и скажут "иди нафиг со своей поделкой, которая не Sequence").

+1 в копилку ненависти C++ ^_^
(Reply) (Thread)
[User Picture]From: aruslan
2006-06-30 11:31 am (UTC)
ыыы :) вот из-за таких как ты и я, этого полезного контейнера там всё нет и нет!
(Reply) (Parent) (Thread)