Zoop Introduction
Reasons for Zoop
- zig has no native OOP
- I really need OOP
- I like zig and definitely use it 😉
Design Philosophy
- Performance first
- easy to use
- Keep it simple
Supported OOP features
- Inheritance (multiple inheritance possible)
- Interface (multiple inheritance possible)
- Virtual methods (through interfaces)
- Method Overriding
- Base interface IObject (all objects can be converted to IObject)
- Runtime type information
- Runtime type conversion (objects can be converted arbitrarily between implemented interfaces and inherited classes)
- Destructor deinit()
Features that may be supported in the future
- Reflection
Other
I think of adding 😄