Interface for qBeta module object

Origin: demo

Units: obj
   %include MetaSystem
   -- A so far incompelte example of modeling units
   
   Dimension:
      Unit: Value
         magnitude: var integer
         thisUnit:< Unit
         +:
            in V: var thisUnit
            out R: var thisUnit
         =+:
            in V: var integer
         toBase:<
            out base: var integer
         fromBase:<
            in base: var integer
         print:<
      shortName:<
         out T: var String.String
   Velocity: obj Dimension -- 2:
      KMperHour: Unit
         thisUnit:: KMperHour
         print::
         mult:
            in L: var Length.Meter
            in T: var Time.Minutes
      shortName::
   Area: obj Dimension
      squareMeter: Unit
         thisUnit:: squareMeter
         print::
         mult:
            in A: var Length.Meter
            in B: var Length.Meter
      *:
         in A: var Length.Meter
         in B: var Length.Meter
         out R: var squareMeter
   Volume: obj Dimension
      cubicMeter: Unit
         print::
   MeterPowerN: obj Dimension -- 3:
      xxx: Unit
         print::
      yyy: Unit
         in n: val integer
         print::
   Length: obj Dimension -- 4:
      Foot: Unit
         toBase::
         fromBase::
         print::
      Mile: Unit
      Meter: Unit
         thisUnit:: Meter
         toBase::
         fromBase::
         print::
         *:
            in V: var integer
            out Rx: var thisUnit
         **:
            in T: var Time.minutes
            out LTx: var Velocity.KMperHour
         power:
            in n: var integer
            out P: var MeterPowerN.xxx
         power2:
            in n: var integer
            out P: var MeterPowerN.yyy(n) -- OBS! Note the use of n
      IasMeter:
         in V: var integer
         out R: var Meter
      shortName::
      Meter2Foot:
         in m: var Meter
         out f: var Foot
   Time: obj Dimension -- 5:
      Minutes: Unit
         thisUnit:: Minutes
   Temperature: obj Dimension
      Celsius: Unit
         toBase::
         fromBase::
         print::
      Fahrenheit: Unit
         toBase::
         fromBase::
         print::
   Figure:
      AR: var Area.SquareMeter
      theArea:<
         out A: var Area.SquareMeter
      print:<
   Rectangle: Figure
      width: var Length.Meter
      heigth: var Length.Meter
      set:
         in w: var Length.Meter
         in h: var Length.Meter
      theArea::
         --A := width * heigth
         
      perimeter:
         out V: var Length.Meter
      print::
   L1: var Length.Meter -- 6:
   L2: var Length.Foot -- 7:
   T1: var Time.Minutes -- 8:
   LT: var Velocity.KMperHour -- 9:
   Pn: var MeterPowerN.xxx -- 10:
   Pm: var MeterPowerN.yyy() -- 11:
   R: obj Rectangle
   L3: var Length.Meter
   SN: ref ObjSnap -- 12: