| | 47 | |
| | 48 | When a library is included into a model, it may add shared variables to the model. When it is attached to a process it may add process-global variables. |
| | 49 | |
| | 50 | Define class Library, LibraryFunction. |
| | 51 | |
| | 52 | attachToModel(ModelIF); |
| | 53 | attachToProcess(ProcessIF); |
| | 54 | |
| | 55 | in ModelIF, ProcessIF, etc.: getFunctionWithName("fprintf") will return the function if it has been added. |
| | 56 | |
| | 57 | FunctionIF: boolean field: isSystemFunction. If true, function does not have body (locations). Instead, a special class will be loaded to execute this function's transformation of the state when it is invoked. |
| | 58 | |
| | 59 | add module library, submodule of model. |
| | 60 | also add system level function definition in semantics, next to Executor. |