On Sat, Dec 20, 2003 at 02:30:04PM +0100, Martin Nilsson (saturator) @ Pike (-) developers forum wrote:
mixed foo = Property(); #define foo foo->bar
Ugly... Involves preprocessor (which is bad)... Requires that every property will be #define's (and header file included)...
Additionally, there is no compiler-time type checks possible when custom class used (only run-time and only on assignment), and properties cannot be inherited (which is huge disadvantage).
Some may argue that this is "syntactic sugar", but anyway - properties (like n C#) are far more convenient (C# doesn't have preprocessor, BTW).
As of me, sometimes I miss this functionality (using `->() isn't always possible - at least when inheritance is involved), OTOH, this is not something that makes _huge_ difference (i.e. I can live without this).
Regards, /Al