Changes between Version 27 and Version 28 of Things To Do


Ignore:
Timestamp:
06/02/10 09:59:27 (16 years ago)
Author:
zirkel
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Things To Do

    v27 v28  
    9595
    9696add module library, submodule of model.
     97
     98  In the library module, there should be a LibraryLoader class and a LibraryIF.  The LibraryLoader will have a method loadLibrary(String name) that returns a LibraryIF.  The loader should contain information about each of the implemented libraries.  The loadLibrary() method will check for a library with the matching name, return it if available, or throw an exception.
     99
     100  LibraryIF should have methods getConstants() and getFunctions() that return the constants and (regular, not system-level) functions associated with those libraries.  ModelIF should contain a method addLibrary(String name) that calls loadLibrary(), then uses getConstants() and getFunctions() to add the library's constants and functions to the model.
     101
    97102also add system level function definition in semantics, next to Executor.
     103 
     104  LibraryIF should also have a method getSystemFunctions() that returns the IDs of system-level functions in the library.  These IDs would then be used by the executor to execute the system-level function.  Maybe have a lib folder in the semantics package as well, with a library semantic interface for the executor to pass an environment and function ID to the appropriate library?  This would be like having an executor for each library that contains system-level functions, and the current executor would call the appropriate library executor.