Pharo is used for robots you can find more info here http://car.mines-douai.fr/category/pharos/
I am actually building now OpenCV on macos, the hard stuff is C. UFFI and Pharo are a breeze but with C everything can go wrong and it will at some point. Took me 30 minutes to find information on how to build on macos. I complain about Pharo documentation but OpenCV is much worse , we have a tiny community and still our documentation is tons better. So I totally can feel you, documentation is a huge issue does not matter what language you choose , its a struggle. In popular language you can find a gazillion things about the basics and popular stuff but as soon as you venture to specifics and more technical things that are the ones that need documentation the most, then you meet the hell of "no sorry no documentation about this, but you should be fine reading the codes and (then non existent) comments". But that is part of the fun of coding, overcoming these challenges and enduring until the "Eureka" moment. Unfortunately OpenCV fails to build for me on macos, I also see that it takes advantage of CUDA which is great news for performance bad news for building it because CUDA is huge and it can be quite tedious to build because there are a ton of stuff to be aware of. In any case the documentation I linked is what we use to learn about UFFI this is how I learned to make a shared memory tool for manipulating C++ executable from Pharo. It takes time and patience because in C the moment you do something bad with the memory it crashes the executable (OS default behavior to protect from misbehaving executables) , this means I crashes Pharo like a hundrend time till I get pointers right (how C/C++ manipulates memory). The good news is that unlike C , Pharo is prepared from such situations and will never allow you to lose code but to be safe always use a version control system and commit frequently because it will be a breeze to restore your code after a crash to a pharo image this way. We have specific tools for such situation , for example Epicea will open after the crash and ask you if you want to restore code and is a great tool but I find git more convenient for such situations. So to summarize you need to build OpenCV for 32bits architecture and use UFFI. 64bits may work too but you need specific Pharo VM and image. 32bit should be more stable and should be enough because it will try to use the GPU memory anyway which is faster than CPU memory. I wish I could be more of a help but I do not want to spend a ton of time on building a library that I won't use.