DynaMix (Dynamic Mixins) is an alternative take on object-oriented programming and dynamic polymorphism. It lets users compose and modify polymorphic objects at run time. The main target language is C++, but C is also supported. The library is a means to create a project's architecture rather than achieve its purpose. It helps with extensibility, readability, scalability, and interoperability. It focuses on maximal performance and minimal memory overhead. The library uses the type dynamix::object as a placeholder, whose instances can be extended with existing classes (mixins), thus providing a particular instance with the mixin features of all those types. Likely the most important types of mixin features are messages: functional objects that in C++-OOP terms can be thought of as methods. Mixin features are overridable and use late binding and singular dispatch. Unicasts and multicasts are possible.

Features

  • DynaMix is applicable for the software architecture of systems with complex objects
  • Compose objects from mixins at run time
  • Physically separate interface and implementation
  • Non-intrusive – mixins don't need to have a common parent or any special code inside
  • Mutate "live" objects by changing their composition at run time
  • Create shared libraries and plugins which can enrich or modify objects, without modifying (or even rebuilding) the executable
  • Have complete runtime reflection by symbols or strings

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

MIT License

Follow DynaMix

DynaMix Web Site

Other Useful Business Software
Rezku Point of Sale Icon
Rezku Point of Sale

Designed for Real-World Restaurant Operations

Rezku is an all-inclusive ordering platform and management solution for all types of restaurant and bar concepts. You can now get a fully custom branded downloadable smartphone ordering app for your restaurant exclusively from Rezku.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of DynaMix!

Additional Project Details

Programming Language

C++

Related Categories

C++ Libraries

Registered

2024-05-31