<commit_before>#Vector Basics

##Introduction

These tutorial provides basics on the creation of components and how components create ports for communication between each other,it provides a basic understand to how components are created. In sparkflow there exist two approaches to the creation of component where each is left to the developer to choose.
The first approach using the standard class inheritance approach where you simple inherit from <Component> class while the second approach uses a shell (i.e a new Component Instance) and lets you define the behaviours for that component shell and how it operates.
In these tutorial we will go with the first method as it provides a natural introduction with OOB languages but i would encourage use of the second method which you will see more in the next tutorial

##Details
  These is a basic examples of vector addition and subtraction operation and how to create components
  to encapsulate these behaviours and how they interact with ports.

  Components are blocks that contain a basic principle of how a operation process works,they define
  ports through which data come in and go out and can be made typedsafe through procedures that exist
  on the ports.

  Ports: These are simple streams/channels which data passes through,it is asynchronous and each data passed into a port is wrapped up in a <Parket> Class Instance,which allows designation of the type of packet (i.e data packet,a begingroup packet,end group packet) and provide convenient methods to listen for
  each type of packets.

##Design

  We wil be creating the first vector component which is the addition component:

     The natural starting place is to first extend the Component class, the component class accepts
     a single argument which standards a an id for that component,it can be anything really but 
     i generally called it the class name of the vector as it will be used within the ui to identify
     the component as such. So my advice,name as such.
     These component is simple,it has two list items which will contain the two vector values which we
     will be adding together,generally these will take two value list and not more that that,compoents
     have a metas map object that contains meta data and they can easily be filled with the necessary 
     information concerning that component,the values can be updated and changed using the meta instance
     function
<commit_msg>test harness done<commit_after>#Vector Basics

##Introduction

These tutorial provides basics on the creation of components and how components create ports for communication between each other,it provides a basic understand to how components are created. In sparkflow there exist two approaches to the creation of component where each is left to the developer to choose.
The first approach using the standard class inheritance approach where you simple inherit from <Component> class while the second approach uses a shell (i.e a new Component Instance) and lets you define the behaviours for that component shell and how it operates.
In these tutorial we will go with the first method as it provides a natural introduction with OOB languages but i would encourage use of the second method which you will see more in the next tutorial

##Details
  These is a basic examples of vector addition and subtraction operation and how to create components
  to encapsulate these behaviours and how they interact with ports.

  Components are blocks that contain a basic principle of how a operation process works,they define
  ports through which data come in and go out and can be made typedsafe through procedures that exist
  on the ports.

  Ports: These are simple streams/channels which data passes through,it is asynchronous and each data passed into a port is wrapped up in a <Parket> Class Instance,which allows designation of the type of packet (i.e data packet,a begingroup packet,end group packet) and provide convenient methods to listen for
  each type of packets.


##Running
   Simple 'pub install' to get the dependencies and 'dart vector_basics.dart' to see the result

##Design

  We wil be creating the first vector component which is the addition component:

     The natural starting place is to first extend the Component class, the component class accepts
     a single argument which standards a an id for that component,it can be anything really but 
     i generally called it the class name of the vector as it will be used within the ui to identify
     the component as such. So my advice,name as such.
     These component is simple,it has two list items which will contain the two vector values which we
     will be adding together,generally these will take two value list and not more that that,compoents
     have a metas map object that contains meta data and they can easily be filled with the necessary 
     information concerning that component,the values can be updated and changed using the meta instance
     function

{'fraction_non_alphanumeric': 0.019022827392871446, 'fraction_numerical': 0.0, 'mean_word_length': 4.235849056603773, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3840812', 'n_tokens_mistral': 1078, 'n_tokens_neox': 1041, 'n_words': 783}