This really is the chicken or egg question.
Lazarus depends on users - who report issues - to become (or keep being) a good environment.
This is true on all platforms. On Windows and Linux there are plenty of people, and problems are discovered, and the developers (or sometimes users by means of patches) can fix them.
At current there is active development for cocoa. So if you run into issues they may get fixed.
So the final question: Is it "worth" having an eye on MacOS + Lazarus and thinking about buying hardware or will the "Lazarus experience" not be as good as with Linux and Windows?
About the buying, if you go for x-code you have buy it too.
About coming from windows... You probably will scream about the OS differences, even before you download Lazarus. Every mouse action and keyboard usage are totally difference.
That goes to the point, that many of the key-combos that Lazarus uses, are occupied by the MacOs, and you need to use others.
As for comparing the IDE and LCL experience:
There are widget dependent differences, some by design. (same as some things work diff in gtk, compared to win).
Cocoa is much newer. So it is far less tested. But it also is actively worked on right now.
I have no experience of my own how they compare.
But I would say, you will have to expect some pitfalls at the very least.
(while I wrote about debugging speed (below), compiling is slower too)
No idea if it is worth it. (in terms of money spent on the hardware).
------------------
As for comparing debugging:
(one of the topics, and the one on which I can comment)
You have a choice between gdb-based and lldb-based.
gdb based is extremely hard to get working. If you do get it working (and that is a very big IF), then it will (should?) be similar to what you have on windows.
lldb works out of the box. But it will be first released with Lazarus 2.0.
Some beta testers report that it generally works. But once it goes officially released, I am certain there will be a ton of bug reports.
- Debugging with the lldb based debugger is definitely slower than gdb-based on Windows. And that can NOT be fixed.
- lldb based does not (or not fully) support watch-points. And it is unclear yet, if that will improve.
- "step over to cursor" is not implemented. It is a todo. But with low priority
- attach/detach is not implemented. It is a todo. But with low priority
- debugging libraries is not implemented. It is a todo. But with low priority (and unclear how well it will work)
- modifying watches value is not implemented. It is a todo. But with low priority and unclear if possible (though that has severe limits on windows and gtk too)
Probably more. But as I said, many differences will only become clear, when people start using it.