Overly strict interfaces vis-a-vis property accessors

FWIW: I’m new to Haxe, through hacking on someone else’s project.

It doesn’t seem possible to have an interface be agnostic as to a property’s get/set behavior. That is to say, if I want an interface that exposes the ability to read property x, from an outside perspective I don’t care if the class implements x as default or get. Similarly for set. As long as I can get or set the property from outside, that ideally would be enough to satisfy the interface, but that doesn’t seem to be the case. If I want to use get or set in a class, it has to be in the interface, which means I have to use get or set in every class that implements that interface.

I suppose I was hoping it were more similar to Swift in this regard, where the interface just specifies whether you can read or read/write, and the implementing class can expose that as either stored or computed properties.

Anyone have insight into the design choices, here?

This doesn’t make any sense in Haxe because properties are a compile-time feature, whereas interface fields are accessed at run-time via dynamic dispatch.