Первая реализация тащит дополнительные поля (которых там могло не быть),
вторая реализация ниразу не многопоточная (как могло бы показаться).
Эксперты ведущего программистского форума советуют управлять памятью на стороне библиотеки,
использовать иммутабельность, и вообще писать на Rust. Но у вас требование — максимальный рынок сбыта,
возможность интеграции в разные приложения, а у языка "C" с этим лучше (API/ABI стандартизированы).
Как вы будете продавать эту библиотеку программистам? Где вы их возьмёте десять миллионов?
Если продавать компаниям, то где возьмёте столько софтовых компаний, которые захотят её покупать?
Во сколько денег обойдётся разработка такой библиотеки
с совершенно шикарной документацией, туториалами, курсами, техподдержкой,
и несколькими книгами-учебниками (иначе не будут покупать)?
Каким должен быть объём функциональности, чтобы проект разработки библиотеки стал окупаемым, как этот объём считать?
Можно ещё сделать метамодель и генерацию в разные языки (Rust, C++, Ruby и т.д.),
а так же автоматизированный перевод документации на крупнейшие естественные языки мира.
Это очень, очень много работы. Что с окупаемостью?
Re: Библиотека для работы с красно-чёрными деревьями
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Вы хотите сделать библиотеку для работы с красно-чёрными древьями, ЭФ>чтобы в дальнейшем продавать её миллионами лицензий на планетарных рынках.
Мы не хотим. Мы знаем, где в BSD взять готовый комплект макросов. Пусть несколько неуклюжий, но проверенный миллионами программ, в которых он используется. И под удобной лицензией.
И вообще, мы патриоты и подумываем о переходе от импортных RB-деревьев к отечественным AVL
Re[2]: Библиотека для работы с красно-чёрными деревьями
Pzz> мы патриоты и подумываем о переходе от импортных RB-деревьев к отечественным AVL
Красно-чёрное дерево проще в реализации, чем AVL-дерево.
То есть дешевле. А у нас и так окупаемость не достигнута, и закрыт приём денег англоязычного мира.
Pzz> Мы знаем, где в BSD взять готовый комплект макросов под удобной лицензией.
Расскажите, пожалуйста, по-подробнее.
Re[2]: Библиотека для работы с красно-чёрными деревьями
Красно-чёрное дерево проще в реализации, чем AVL-дерево.
ЭФ>То есть дешевле. А у нас и так окупаемость не достигнута, и закрыт приём денег англоязычного мира.
Зато AVL более сбалансированное.
Pzz>> Мы знаем, где в BSD взять готовый комплект макросов под удобной лицензией.
ЭФ>Расскажите, пожалуйста, по-подробнее.
Из гусениц напиток
Не варят много лет.
Варить себе в убыток
Большого смысла нет.
Продукт не из дешёвых.
С сырьём зимой напряг.
Вредителей садовых
Найти зимою как?
А спрос довольно слабый,
Точнее, никакой.
Вот ты бы или я бы
Напиток пил такой?
И если объективно,
Из гусениц нектар –
Не очень перспективный,
Убыточный товар.
Re[2]: Библиотека для работы с красно-чёрными деревьями
И что теперь, вообще программированием не заниматься?
Просто тогда нужна какая-то крупная российская компания, аналогичная Microsoft или Oracle,
специализирующаяся именно на разработке софта (я ни одной не знаю, Яндекс не российская теперь).
Конструктивнее, пожалуйста. И красно-чёрные деревья — это отличный пример,
показывает как могут различаться требования при разных применениях у разных заказчиков так,
что фиг запрограммируешь общеприменимый случай.
Re[3]: Библиотека для работы с красно-чёрными деревьями
Здравствуйте, Эйнсток Файр, Вы писали:
Pzz>> мы патриоты и подумываем о переходе от импортных RB-деревьев к отечественным AVL
ЭФ>
Красно-чёрное дерево проще в реализации, чем AVL-дерево.
ЭФ>То есть дешевле.
Наоборот. Достаточно вспомнить, что ситуаций, требующих внимания, в нём 5 (и то массовые реализации пошли, когда смогли сократить с 7-8 до 5), а в AVL — 4 (а если учесть симметрию, то 2), и действия в каждой из них проще.
И бенчмарки сейчас такие, что AVL в среднем не хуже.
В ZFS вообще всё построено на AVL (не B!) на дисках! (я охренел когда увидел)
ЭФ> А у нас и так окупаемость не достигнута, и закрыт приём денег англоязычного мира.
Pzz>> Мы знаем, где в BSD взять готовый комплект макросов под удобной лицензией.
ЭФ>Расскажите, пожалуйста, по-подробнее.
Не могу, нехватает навыков. Сейчас вообще могут работать совместные предприятия с российскими и украинскими учредителями? Как при этом распределяется прибыль? В смысле, как она чисто технически переводится на счета украинца И россиянина одновременно?
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Каким должен быть объём функциональности, чтобы проект разработки библиотеки стал окупаемым, как этот объём считать?
Я считаю, что сейчас на продаже узкоспециализированной библиотеке не заработаешь, потому что примерно с уже написано с каким-то качеством и даже выложено в опенсорс. При необходимости пишется на коленке своя реализация или допиливается открытая.
На чём можно заработать? На поддержке, консалтинге и заказной разработке. Делаешь библиотеку, выкладываешь, опенсорсишь, продвигаешь как мега решение в индустрию. Когда им начнут пользоваться, то начнутся хотелки в виде портирования на разные платформы, просьбы с реализацией конкретных фич и т.д. Вот за все эти услуги надо брать деньги, а результат не отдавать конкретному заказчику, а вливать в main и делать доступным сразу всем.
Re[2]: Библиотека для работы с красно-чёрными деревьями
N> Вот за все эти услуги надо брать деньги, а результат не отдавать конкретному заказчику, а вливать в main и делать доступным сразу всем.
Если бы это работало, мы бы в России видели большое количество НКО, занимающихся поддержкой различных опенсорсных проектов.
Но оглянитесь вокруг — видите?
Re[3]: Библиотека для работы с красно-чёрными деревьями
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Если бы это работало, мы бы в России видели большое количество НКО, занимающихся поддержкой различных опенсорсных проектов. ЭФ>Но оглянитесь вокруг — видите?
Не понял, причём тут НКО. Но именно так и работает, та же Астра Линукс разве не по такой схеме разрабатывается?
Не понял, причём тут Россия. Ты говорил про миллионные тиражи и планетарные рынки. Забыл уже? Перечитай себя
Re[4]: Библиотека для работы с красно-чёрными деревьями
N> причём тут Россия. Ты говорил про миллионные тиражи и планетарные рынки.
Ну да. Россия и планетарные рынки, продажи за рубли в Индию (там будет/обещан один офис Сбербанка) и никаких противоречий.
N> та же Астра Линукс разве не по такой схеме разрабатывается?
Уверен, что основные деньги у них от госконтрактов, а не с рынка.
А как ещё prefix_tree ?
В ней же при поиске — сравнение ключей по тексту не всегда прям с первого элемента строки (символа)
по сабжу ТС: можно ли паттерн дерева от каунта брать, чтобы он был фиксированного вида для этого каунта?
из индекса сразу битмаска как путь // для доступа и по инту [0 .. count)
Не уверен правда на сколько это реализуемо
на Сжатии по хаффману найдётся спрос?
В компайл тайм можно и без методов изменения
Или лучше сортировку параметров шаблона, вместо мап, а потом binary search ?
Всё-же если это будет либа, то как там с naming guide?
(внутренний <=> внешний) == 0 ? yes : no