public ModuleTypeDeclaration()
        {
            typeMaps = new Dictionary <string, IChelaType> ();
            typeMaps.Add("Chela.Lang.Object", ChelaType.GetObjectType());
            typeMaps.Add("Chela.Lang.String", ChelaType.GetStringType());

            assocClasses = new Dictionary <string, IChelaType> ();
            assocClasses.Add("Chela.Lang.Boolean", ChelaType.GetBoolType());
            assocClasses.Add("Chela.Lang.Char", ChelaType.GetCharType());
            assocClasses.Add("Chela.Lang.SByte", ChelaType.GetSByteType());
            assocClasses.Add("Chela.Lang.Byte", ChelaType.GetByteType());
            assocClasses.Add("Chela.Lang.Int16", ChelaType.GetShortType());
            assocClasses.Add("Chela.Lang.UInt16", ChelaType.GetUShortType());
            assocClasses.Add("Chela.Lang.Int32", ChelaType.GetIntType());
            assocClasses.Add("Chela.Lang.UInt32", ChelaType.GetUIntType());
            assocClasses.Add("Chela.Lang.Int64", ChelaType.GetLongType());
            assocClasses.Add("Chela.Lang.UInt64", ChelaType.GetULongType());
            assocClasses.Add("Chela.Lang.IntPtr", ChelaType.GetPtrDiffType());
            assocClasses.Add("Chela.Lang.UIntPtr", ChelaType.GetSizeType());
            assocClasses.Add("Chela.Lang.Single", ChelaType.GetFloatType());
            assocClasses.Add("Chela.Lang.Double", ChelaType.GetDoubleType());

            // Vector associated classes
            assocClasses.Add("Chela.Lang.Single2", VectorType.Create(ChelaType.GetFloatType(), 2));
            assocClasses.Add("Chela.Lang.Single3", VectorType.Create(ChelaType.GetFloatType(), 3));
            assocClasses.Add("Chela.Lang.Single4", VectorType.Create(ChelaType.GetFloatType(), 4));
            assocClasses.Add("Chela.Lang.Double2", VectorType.Create(ChelaType.GetDoubleType(), 2));
            assocClasses.Add("Chela.Lang.Double3", VectorType.Create(ChelaType.GetDoubleType(), 3));
            assocClasses.Add("Chela.Lang.Double4", VectorType.Create(ChelaType.GetDoubleType(), 4));
            assocClasses.Add("Chela.Lang.Int32x2", VectorType.Create(ChelaType.GetIntType(), 2));
            assocClasses.Add("Chela.Lang.Int32x3", VectorType.Create(ChelaType.GetIntType(), 3));
            assocClasses.Add("Chela.Lang.Int32x4", VectorType.Create(ChelaType.GetIntType(), 4));
            assocClasses.Add("Chela.Lang.Boolean2", VectorType.Create(ChelaType.GetBoolType(), 2));
            assocClasses.Add("Chela.Lang.Boolean3", VectorType.Create(ChelaType.GetBoolType(), 3));
            assocClasses.Add("Chela.Lang.Boolean4", VectorType.Create(ChelaType.GetBoolType(), 4));
        }