Op Cpp /

opC++ Features

opC++ Compiler

opC++ Language

opGames Company

Roadmap

Roadmap

opC++ Beta

Status

opC++ Beta includes:

  • Windows compiler
  • Windows Visual Studio addin
  • opC++ Standard Dialect
  • Linux compiler

Dialects

Dialect support adds a full additional phase to c++ compiling.

Dialects allow you to extend c++ through modifiers and categories, as well as setting up code generators based on modifiers.

  • add additional categories to c++ besides class and struct.
  • add custom modifiers to c++ through category definitions.
  • add generated mappings based on compiler metadata, categories, and modifiers.
  • setup feature dialects to organize and share your extensions.
  • add generated custom initialization.

Generation Methods

opC++ provides a few simple methods for controlling code generation.

basic methods:

  • notes - generate standalone code snippets upon category use.
  • maps - generate per member code snippets with modifier filtering upon category use.
  • disallows - setup code guidelines using criteria expressions.

advanced:

  • extension points - inject new code into named locations in a dialect.

Possibilities

opC++ Beta will open up the following programming styles:

  • custom meta-object protocol generation
  • custom meta-data provider objects
  • features by category
  • automatic class registrations
  • automatic feature registrations
  • custom enumeration types
  • custom initialization styles

Version 1.0

Version 1.0 will add the following:

  • transform maps
  • custom output locations
  • allows
  • full documentation
  • stability

Transform Maps

Transform maps let you alter types and names of members. It will allow you to do basic transforms based on modifiers.

Transform maps will allow:

  • name changing/mangling
  • type wrapping
  • basic function and data transforms

Transform maps will open the following programming styles:

  • custom garbage collection
  • custom type safety and automatic type wrapping
  • c++ delegates

Custom Output Locations

Custom output locations allow you to write notes to specified files. These files could be xml, c++, or any textual file.

Custom Output Locations will open the following programming styles:

  • generated scripting language bindings and stubs.
  • generated custom documentation, data files.

Allows

Allows let you override disallows for certain cases.

Version 1.X+

Version 1.X and beyond will potentially add the following:

  • nested map notes (generate more notes per member)
  • additional add-in syntax highlighting
  • optional c++ extensions
  • portability features
  • better source support
  • optional game related features
  • conditional generation
  • strong type checking
  • strong name checking

Nested Map Notes

Nested Map Notes allow you to generate multiple notes per member in a map.

Nested Map Notes will open the following possibilities:

  • Ability to decrease reliance on templates.
  • Ability to generate conditional notes within maps.
Recent Changes (All) | Edit SideBar Page last modified on December 21, 2007, at 10:59 PM Edit Page | Page History
Copyright 2010 opGames Inc.