- Blake McBride -
Software Projects
: Dynace
: Extension to C

Reasons to Use Dynce

1. Drastically reduce application complexity and increase its maintainability by enforcing strong encapsulation -- no more need to wonder which other modules are modifying your instance variables or what effect changes in one module will have on other modules.

2. Drastically reduce the need for recompilation since all class information is defined in the source file (*.c) instead of header files (*.h). Most changes to a class, including its place in the class hierarchy, instance or class variable declarations, new or changed methods (member functions), have no compile time effect on modules which use, subclass or inherit from the changed class.

3. Easily build generic functionality (like generic container classes) which translates into increased use of existing code since Dynace treats all objects, including classes, in a uniform manner and supports weak and runtime object typing.

4. Dynace is the easiest OO language to learn since it's almost entirely normal C syntax, yet offers features far surpassing all the alternatives such as true dynamic binding using generic functions, multiple inheritance, fully metaclass based (runtime class representation) from the ground up (like CLOS or Smalltalk), garbage collector (system automatically frees unused objects), threader, and a powerful class library. Defining classes in Dynace is simple, all of the complexity and house cleaning chores are handled by the Dynace pre-processor (dpp).

5. Dynace applications run fast because they are compiled by your normal C compiler into fast machine code (no interpreter or p-code). Dynace includes a pre-processor which converts Dynace class definition files (which contain mostly straight C code) into plain C source files.

6. It's easy to incrementally add OO facilities into pre-existing C code because Dynace is just more C code.

7. No longer be the victim of a vendor since Dynace comes with full, portable C source code.

8. You no longer have to distribute header files containing your proprietary class structure in order for third parties to be able to use and subclass your class. Dynace doesn't need any of this information.

9. Dynace OO model is much more flexible due to its metaobject base. Now you can actually have greater control over classes as well as instances.

10. Dynace applications are royalty free.

[ Back to Top ]

Site Content © 2006-2018 Blake McBride.
All Rights Reserved.