language

some fools attempt at an interpreted language
Log | Files | Refs | README

COMPONENTS (1981B)


      1                     What Comprises of 'Language'
      2           Detailed List of What is Contained Within thereof.
      3 
      4 OVERVIEW
      5 
      6     This document covers individual, trackable, and testable components within
      7 the project. The list is as follows:
      8 
      9 Virtual Machine:
     10 
     11  - Instruction interpreter
     12    * Reading bytecode
     13    * Handling instructions in memory
     14    * Interpreting bytecode arguements
     15 
     16  - Instruction opcode definitions/Instruction metadata
     17    * Translate meaningless bytes into action
     18    * Provide O(1) instruction metadata retrieval
     19 
     20  - Provide interface for runtime variables
     21    * Implement primitive data types
     22    * Allocate resources for runtime variables
     23 
     24  - Implementing a F.I.L.O. data structure (stack) that extends runtime variables
     25    * Push & pop variables on the data structure
     26    * Push & pop 'level's of the stack
     27    * Communicate & manage instances of semaphores to thread manager
     28 
     29  - Namespace implemenataion
     30    * Global, local (traced) namespaces
     31    * Handles memory deallocation
     32    * Communicate instances of semaphores to thread manager
     33 
     34  - Threading wrapper/Threading manager
     35    * Set up thread pool
     36    * Handle calls to initialize new threads
     37    * Handle thread safe variables
     38 
     39  - Runtime manager
     40    * Provide program counter
     41    * Iterate over bytecode, interpret arguements
     42    * Handle initailzation of various runtime dependencies
     43    * Provide interface to built-in functions
     44 
     45 Compiler:
     46 
     47     Currently how the compiler will operate will change as the runtime develops.
     48 
     49 Once the Virtual Machine meets the minimum requirements of implemented features,
     50 the compiler will be drafted, prototyped, and implemented in bytecode. Once this
     51 step is complete, further development will happen in the next step.
     52 
     53 Standard Library/Libraries in general:
     54 
     55     The standard library will be a reflection of the langauges capabilitiy, and
     56 the functionality of existing standard libraries.
     57 
     58 
     59 IN SUMNATION
     60 
     61     A sumnation of a sumnation of what is contained within the 'Language'.