---------------
Simulink Parser
---------------

(1) The conversion of Simulink to ClawZ names doesn't yet resolve ambiguities, see class ClawZUtils.

(2) To determine the dynamic signature of blocks with variable number if inputs or outputs, we currently only look at the "Inputs" and "Outputs" attributes. Besides it might be suitable to scan the "Ports" attribute as well; investigate this at some point.

--------------------
BlockTypes Hierarchy
--------------------

(1) Investigate in detail the semantics of enable, trigger and action ports. Subsequently make adjustments to the implementation in SubSystem respective to what needs to be supported i.e. do we require special_outgoing_links at all?.

----------------
ClaSP Data Model
----------------

(1) Generation of BlockWiring information for SubSystem blocks doesn't yet take into account enabling signals properly.

-------------
ClaSP Library
-------------

(1) Processing of portPattern tags is not supported yet in the ClaSP block library encoding.

(3) At the moment the specification of ports for flows is a little rigid, e.g.

  <port>1</port>
  <portList>3 4 5</portList>

is okay but not

  <portList>3 4 5</portList>
  <port>1</port>

or even

  <port>1</port>
  <portList>3 4</port>
  <port>5</port>

Having a more lenient format here, i.e. allowing as many port, portList, portRange and portPattern tags as one likes, and in any kind of order, may be desirable.

(4) Revise the XSD specification of the ClaSP block library to deal with special ports (portIdType might have to be altered).

-----------------
Circus Translator
-----------------

(1) Integrate the circus_pp.tex toolkit extension into the jar and ensure it is automatically loaded i.e. from the resource in the jar by the CZT section manager (could be a little tricky but would be nice).

(2) Make renaming upon instantiation of Circus processes in a parallel translation a configurable option. This is done by a priori flattening out the substitutions, it should simplify the translation.

(4) Do a review of the robustness of the translator with regards to unknown blocks, encoding errors in the mdl file. In generally there should be some useful error reporting mechanism as well (do more tests to acquire evidence of this once it is implemented).

-----------------------
General Code and Design
-----------------------

(1) Do a complete code review towards a first proto-typical release of the tool. This should include ALL code; simplify and refactor where appropriate.

(2) Some immutable class such as Port or Signal should be implemented as fly-weight objects in order to reduce memory utilisation and presumably speed up computation as well (less garbage collection is required).

(3) Do some review / profiling of the code and identify bottle-necks in terms of efficiency.
