blakemcbride / Dynace

Dynace object-oriented extension to C

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dynace Object-Oriented Extension to C

Dynace is a portable, open-source extension to the C language that adds the following capabilities to standard C:

  • full object-oriented capabilities including
    • classes, instances, methods, & generic functions
    • encapsulation
    • polymorphism
    • (multiple) inheritance
  • fully meta-class based (like Smalltalk or CLOS)
  • dynamic binding and dispatching through generic functions (like CLOS)
  • garbage collection
  • cooperative threads (also supports native threads)
  • full class library
  • optional Win32 GUI development system (portable through WINE)
  • interfaces with Java, ODBC, OLE
  • SQL interface / class library


  • written in standard C
  • includes over 600 pages of documentation in two user manuals
  • step-by-step tutorials
  • using classes involves no new syntax elements to standard C
  • easily added to existing C code

Dynace is portable across:

  • 16, 32 & 64 bit environments
  • Linux
  • Mac OS X
  • Windows (all versions)
  • BSD
  • Solaris / OpenIndiana
  • Plan 9
  • Minix
  • ARM (cross-build)

The main home for this system is:

Dynace is production quality and has been used in commercial environments for more than ten years.

Dynace was written to solve perceived problems with C++ as outlined in the user manual.

Dynace is released under the BSD 2-Clause license.

System overview is at: docs/ORIENT.txt

Build instructions are at: docs/BUILD.txt


Dynace object-oriented extension to C

License:BSD 2-Clause "Simplified" License


Language:C 54.9%Language:D 34.2%Language:TeX 5.1%Language:Makefile 1.8%Language:DM 1.5%Language:Scheme 0.9%Language:Yacc 0.5%Language:Java 0.4%Language:C++ 0.1%Language:Batchfile 0.1%Language:Lex 0.1%Language:DTrace 0.1%Language:sed 0.1%Language:Tcl 0.0%Language:Pascal 0.0%Language:Rich Text Format 0.0%Language:CWeb 0.0%Language:Awk 0.0%Language:Assembly 0.0%Language:Perl 0.0%