Hi, I tried to take another approach at UFCS, Here
It isn't professionally written I tried my best.
I like free functions but I don't like them syntax wise, I prefer left to right reading in most cases than inside out and sometimes left to right at same time.
```cpp
auto collisions = getCollisionBoxes(expanded(translated(aabb, position), vel), dimension, block_registry);
```
this is hard to read but I don't want to have intermediary variables that have no meaningful names.
While with that proposal it would allow
```cpp
auto collisions = aabb.
.math::translated(position)
.math::expanded(vel)
.gameLogic::getCollisionBoxes(dimension, block_registry);
```
-- Std-Proposals mailing listStd-Proposals@lists.isocpp.orghttps://lists.isocpp.org/mailman/listinfo.cgi/std-proposals