@JohnAD I think I agree with your gut reaction. I have tried a few times to 
replace the `.`, `.=`, and `.()` a few times already with `->` for exactly this 
reason, but I couldn't find a way to replicate all of my usecases with it. I 
guess I could bite the bullet and just use something like 
`cppObject.tryCall(CppMethod, args)` \-- which definitely screams "here be 
dragons" \-- but after using something like `dotOperators` this lessens 
"programmer happiness" on my part.

@shirleyquirk yes relying on the underlying backend to find and fix typos is 
definitely one of the weaknesses of my interop design. I do find it worth the 
trouble though given that the porting aspect of interoping with C++ is taken 
out of the equation and I go straight to prototyping. I have tried other 
solutions like generating the C/C++ interfaces with tools like nimterop, but it 
simply does not work with the libraries I use.

Thanks guys for your input. Perhaps a better direction to go with this is to 
completely eliminate the need for dot operator overloading and instead allow 
similar capabilities but using other operators like `->`?

Reply via email to