Функциональные структуры данных в C ++

Кто-нибудь знает библиотеку структур данных C ++, предоставляющую функциональные (a.k.a. неизменяемые или «постоянные» в смысле FP) эквиваленты знакомых структур STL?

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

В идеале такая библиотека должна быть похожа на STL и хорошо работать с Boost.Phoenix (предостережение: я на самом деле не использовал Phoenix, но, насколько я могу судить, она предоставляет много алгоритмов, но не имеет структур данных, если только не лениво вычисленное изменение к существующей структуре данных имеет значение - не так ли?)

Ответы на вопрос(2)

Ваш ответ на вопрос