JoshDreamland icon

Sample Documentation

JoshDreamland | PRO | 03/10/14 06:57:46 PM UTC | 0 ⭐ | 257 👁️ | Never ⏰ | []
text |

3.22 KB

|

None

|

0 👍

/

0 👎

ENIGMA:
  Description: |
    The Extensible Non-Interpreted Game Maker Augmentation
  Comprises:
  - Compiler
  - Engine
 Engine:
  Description: |
    The game engine upon which output games are built. The engine is
    written in the native output language and is meant to be used with
    translated EDL only (with rare exception).
  Comprises:
  - Universal Systems
  - Systems Interfaces
  - Environment Editables
 Universal Systems:
  Description: |
    Contains platform-independent, system-agnostic code to run the game.
 Systems Interfaces:
  Description: |
    Contains code for specialized systems which may be platform-dependent
    or specific to certain types of games.
 Environment Editables:
  Description: |
    The folder into which translated user code is written, along with
    other game-specific code which needs to be generated by the [[compiler]]
    to properly interface games with the engine.
 Compiler:
  Description: |
    Builds your game, written in [[EDL]], to a native language.
  Comprises:
  - Definitions Parser
  - Parser
  - Language Adapter
 Definitions Parser:
  Description: |
    Any mechanism which operates on the [[Engine]] source code to generate
    [[native definitions]] objects for use by the [[Parser]].
  Comprises:
  - JustDefineIt
  Produces:
  - Native definitions
 JDI:
  Synonym: JustDefineIt
 JustDefineIt:
  Description: |
    The framework on which the ENIGMA compiler is built. Used to represent
    definitions harvested from the engine code, in order to interpret
    users' [[EDL]] code.
  Comprises:
  - JDI::Context
  - C++ Parser
 C++ Parser:
  Instance of: Definitions parser
  Description: |
    The JustDefineIt storage hierarchy was designed around parsing C++
    code. JDI provides a full C++ parser which is used by the C++
    [[Language Adapter]] to enumerate functions and data types declared
    in ENIGMA's [[engine]]. Only those types and functions declared in
    namespace `enigma_user` are considered.
  Produces:
  - C++ Definitions
 C++ Definitions:
  Instance of: Native definitions
  Description: |
    Native definitions pulled from the [[C++ engine]], as read in by the
    [[C++ parser]]. These are likely to include many data types
    representing actual C++ structures and classes, and functions
    corresponding to actual C++ function overloads.
 Parser:
  Description: |
    ENIGMA's parser is a native-language-insensitive mechanism which
    interprets [[EDL]] code and builds abstract information about it.
  Comprises:
  - EDL Lexer
  Requires:
  - Native Definitions
  Produces:
  - EDL AST
  - Object usage graph
 Native Definitions:
  Description: |
    Classes (defined in [[JDI]]) denoting functions and data types
    available in user code, as supported by the [[engine]] of the current
    language.
 Language Adapter:
  Description: |
    Enables the compiler to interface with and export to a particular
    language.
  Comprises:
  - Code Generator
  - Definitions Parser
 Code Generator:
  Description: |
    Outputs used code from the parser into the native language meant to be
    compiled further or run on the system.
  Requires:
  - EDL AST
  - Object usage graph

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎