CN112783479A - 计算机编程语言访问方法 - Google Patents

计算机编程语言访问方法 Download PDF

Info

Publication number
CN112783479A
CN112783479A CN201911063570.4A CN201911063570A CN112783479A CN 112783479 A CN112783479 A CN 112783479A CN 201911063570 A CN201911063570 A CN 201911063570A CN 112783479 A CN112783479 A CN 112783479A
Authority
CN
China
Prior art keywords
access
type
access method
name
enum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911063570.4A
Other languages
English (en)
Inventor
张继辉
胡德启
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baiyete (shanghai) Ruanjian Jishu Youxian Gongsi
Original Assignee
Baiyete (shanghai) Ruanjian Jishu Youxian Gongsi
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baiyete (shanghai) Ruanjian Jishu Youxian Gongsi filed Critical Baiyete (shanghai) Ruanjian Jishu Youxian Gongsi
Priority to CN201911063570.4A priority Critical patent/CN112783479A/zh
Priority to PCT/CN2020/123819 priority patent/WO2021088676A1/zh
Publication of CN112783479A publication Critical patent/CN112783479A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种计算机编程语言的新型语法访问方法。目前市面上的主流编程语言中,传统的语法访问方法都是使用“.”作为连接符,但在新型数据处理语言中,却无法满足多种类型相同实体名的访问需求,因此需要设计一种全新的语法访问方法。

Description

计算机编程语言访问方法
技术领域:
本发明是一种新型计算机编程语言新型的语法访问方法。
背景技术:
在目前市面上主流的计算机编程语言中,因为以面向对象编程语言为主,对象属性或方法的访问方法一般也是以“.”作为访问连接符,但是面对多类型且多成员的新型编程语言,就不能明显地满足需求了。
发明内容:
本发明为一种新型的编程语言访问方法,包括对类型、对类型成员以及局部变量的访问等。以“:”作为访问方法的开头和结尾,并以关键字的形式声明每一项的实际类型,指派访问的具体目标,有利于避免同名类型和同名成员之间访问的不确定性,访问的具体形式为“:类型关键字名称::成员类型关键字成员名称:”,如果是匿名成员名则可通过仅指定类型来访问,如:“:类型关键字::成员类型关键字:”,且可以无限扩展对下级成员的访问,或仅有一个类型参的则可省略掉双“:”,直接用“.”进行访问。
具体实现方法:
Figure BDA0002258552060000011
Figure BDA0002258552060000021
Figure BDA0002258552060000031
Figure BDA0002258552060000041
Figure BDA0002258552060000051
1.对类型库的访问
完整的问为:ku by:
省略访问为by
其中ku为关键字,同时也是一种数据类型,而非传统数据库
2.对类型的访问
名为by的类型库下同时存在名为A但类型不同的实体,我们可以通过如下方法对A分别进行访问:
:ku by::identity A:
:ku by::object A:
:ku by::enum A:
如果类型为匿名且仅有一项,则可通过类型直接访问如:
:ku:
:enum:
如果仅有一项且匿名,则双“:”也可省略,如:
ku.enum
其中ku、object、enum都是类型的关键字;
其中简写形式为:ku by:.A,但前提条件是指定库下面的所有类型中,有且仅有一个名称为A的已声明实体;可简写为by.A,前提条件是by.A不会产生组合歧义,如同时有一个名为by的实体类型,刚好也拥有一个名为A的成员,则会提示二义性;同样可以简写为A,前提条件是当前库及其引用库和系统库中所有类型的已声明实体名称有且仅有一个为A。
也可以单参对匿名声明配置项进行成员访问,但前提是成员必须唯一,示例如下:
完整写法:ku by::identity:
简略写法:ku by:.identity(仅支持该指定的类型只有一个成员,且这个成员为匿名的情况下,可直接通过类型,或省略掉双“:”号直接访问)
因为by类型配置的身份项没有起名,即是一个匿名的身份配置项,则可以不用加入名称参数,仅加入类型参,一个就可以实现访问。
3.对类型内部静态成员的访问
:ku by::object A:.a:
其中ku、object为类型的关键字,在满足对类型正确访问的前提下,也即名称唯一的情况下,可简写为by.A.a
4.对类型内部方法局部变量的访问
名为A的object下的getAge方法同时存在名为i的多个局部变量,我们可以通过如下方法对i分别访问:
“:int i:
:string i:”
如下示例代码:
Figure BDA0002258552060000071
其中在以上代码中,已经命名了一个名称为i的int对象,但是在之后的代码中又命名了一个名称为i的string的对象,这在本语言中是合法的,但在访问中要标明数据的类型,但是也可以省略,但省略的前提一定是这个名称是唯一的。
5.对表类型结构、关系、缓存表的访问
在一个表中,有field,row关键词,分别标明要访问的是行或列。
完整的表列访问方法为:表名称:field字段名称:.具体字段成员。
完整的表行访问方法为:表名称:row实现identity.name身份的表名称:.具体字段成员。
简略表列访问方法为:表名称.具体字段成员。
简略表行访问方法为:表名称.具体某一个行名称(注:本项的前提为当前的列实现了identity.name的身份项)。
表行中的记录访问方法:rowName.fieldName即:行名称.列的名称,其中返回项为该指定单元格的值。
表行关系的完整访问方法:rowName.relation即:行名称.关系表名称:,本项的访问结果并不是整张表,而是关系表中与当前行所相关的数据行或列。
表行关系的简略访问方法:rowName.relationName即:行名称.关系名称,本项的访问结果并不是整张表,而是关系表中与当前行所相关的数据行或列。
缓存的访问方法:cache session:.要缓存的表名,或缓存名.要缓存的表名或要缓存的表名.缓存名。
以本文中的关系示例表relation与字典示例表dic、dic.detail与缓存示例表session为例,代码示例如下:
通过dic.gender或者dic:row gender:来访问,则返回一致的结果,前者是简略写法,仅在行中没有名称为gender的成员行时则可以提供该写法,后者则是完整写法,返回结果如下:
{gender,"性别"}。
通过dic.name或者dic:field name:来访问,则返回一个列,前者是简略写法,后者是完整写法,返回结果如下:
string name[identity.name]。
通过dic.gender.summary或者dic:row gender:.summary则返回一个一致的单元格,返回结果如果下:
"性别"。
通过dic.gender.slave或者dic:row gender::relation.slave dic.detail:或者
dic:row gender::slave detail:则返回一个一致的多行,返回结果如下:
{gender,men,enum.language.cn:"男"}
{gender,women,enum.language.cn:"女"}。
dic.session或者dic:cache session:或者session.dic则返回缓存表session中dic的缓存记录。
6.通过特定的关键词对身份配置项的访问
本处为“to”关键词,如下:
by.identity.to
其中to为访问关键字,通过to可以访问到身份类型的实际配置项,实际配置项是指身份或角色或关系类型在最终经过用户的配置而产生的新实例的载体。
如以下示例代码,示例了对象与身份项的新实例,其中在身份match的square技能中的to访问的成员就是,demo对象中的test方法中的lengthNum类型为int的临时变量。
示例代码如下:
Figure BDA0002258552060000081
Figure BDA0002258552060000091
以下为demo对象的test示例方法
Figure BDA0002258552060000092
Figure BDA0002258552060000101
7.enum为表名类型的访问
以enum为表名的表则可以直接访问,列中以enum为类型的列。
以本文中的“枚举列示例enum”为例。
完整的访问:table enum::enum A:.value1
简略访问:enum.A.value1
以上访问则一致返回enum表中value列中的一项。

Claims (7)

1.一种计算机编程语言新型的语法访问方法,包括:对类型库的访问、对类型的访问、对类型内部静态成员的访问、对类型内部方法局部变量的访问、对表类型结构、关系、缓存表的访问、通过特定的关键词对身份配置项的访问、enum为表名类型的访问。
2.如权利要求1所述访问方法,其特征是以特定的成对字符“:前段参数后段参数:”,“:前段参数后段参数:”的内部分为两部分,并用空格分开,其中前面的部分用于输入类型,以用于查找的限定范围,后面的部分用于输入名称,说明在前者指定的范围中找出后者的唯一名称来,如果配置项没有命名,则支持一个类型参直接访问或可省略双“:”直接访问。
3.如权利要求1所述访问方法,其特征是以特定的关键词“to”去访问由用户配置而指定的类型。
4.如权利要求1所述访问方法,其特征是由某一要访问的成员依据预定义的关系表中的成员项、用户配置项进行访问。
5.如权利要求1所述访问方法,其特征是根据对表中一列中配置的身份项“identity.name”进行行(row)的直接访问。
6.如权利要求1所述访问方法,其特征是以enum为表名的项,则直接可访问字段以enum为类型的列成员。
7.如权利要求1所述访问方法,其特征是以特定的关键词“cache”实现对缓存表的访问。
CN201911063570.4A 2019-11-04 2019-11-04 计算机编程语言访问方法 Pending CN112783479A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911063570.4A CN112783479A (zh) 2019-11-04 2019-11-04 计算机编程语言访问方法
PCT/CN2020/123819 WO2021088676A1 (zh) 2019-11-04 2020-10-27 计算机编程语言访问方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911063570.4A CN112783479A (zh) 2019-11-04 2019-11-04 计算机编程语言访问方法

Publications (1)

Publication Number Publication Date
CN112783479A true CN112783479A (zh) 2021-05-11

Family

ID=75748628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911063570.4A Pending CN112783479A (zh) 2019-11-04 2019-11-04 计算机编程语言访问方法

Country Status (2)

Country Link
CN (1) CN112783479A (zh)
WO (1) WO2021088676A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645074A (zh) * 2009-09-07 2010-02-10 浪潮集团山东通用软件有限公司 一种访问不同类型关系型数据库的方法
CN106873992A (zh) * 2017-01-25 2017-06-20 南京理工大学 一种多要素访问控制机制描述及解析方法
CN110083339A (zh) * 2018-01-26 2019-08-02 拜椰特(上海)软件技术有限公司 一种新型计算机编程语言

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563561B (zh) * 2018-03-15 2020-06-23 北京邮电大学 一种程序隐性约束提取方法及系统
CN109739512B (zh) * 2018-12-28 2022-04-12 江苏极光网络技术有限公司 一种解析型语言文本式分析转换方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645074A (zh) * 2009-09-07 2010-02-10 浪潮集团山东通用软件有限公司 一种访问不同类型关系型数据库的方法
CN106873992A (zh) * 2017-01-25 2017-06-20 南京理工大学 一种多要素访问控制机制描述及解析方法
CN110083339A (zh) * 2018-01-26 2019-08-02 拜椰特(上海)软件技术有限公司 一种新型计算机编程语言

Also Published As

Publication number Publication date
WO2021088676A1 (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
US10810170B2 (en) Equi-joins between split tables
CN102737033B (zh) 数据处理设备及其数据处理方法
US5895465A (en) Heuristic co-identification of objects across heterogeneous information sources
US10394803B2 (en) Method and system for semantic-based queries using word vector representation
US6125360A (en) Incremental maintenance of materialized views containing one-to-N lossless joins
US20160171039A1 (en) Generating hash values
WO2021068549A1 (zh) 一种数据处理方法、平台及系统
US20050038782A1 (en) System and method of summary filter transformation
US20060149716A1 (en) Computer readable medium, method and apparatus for preserving filtering conditions to query multilingual data sources at various locales when regenerating a report
CN107203640B (zh) 通过数据库运行记录建立物理模型的方法及系统
Bach et al. Standardization of NoSQL database languages
WO2008094852A2 (en) Apparatus and method for analyzing impact and lineage of multiple source data objects
WO2023202394A1 (zh) 分区表建立、针对分区表的数据写入、读取方法及装置
WO2019165763A1 (zh) 一种用于查询数据的方法
US20180150484A1 (en) Data masking name data
CN115470323B (zh) 一种基于分词技术提高建筑行业搜索精度的方法
CN113918605A (zh) 数据查询方法、装置、设备以及计算机存储介质
CN112732752A (zh) 一种查询语句优化方法、装置、设备和存储介质
CN111797277A (zh) 映射对象系统与关系系统的方法、装置、计算机读存储介质及终端设备
Ni et al. Adaptive database schema design for multi-tenant data management
CN112783479A (zh) 计算机编程语言访问方法
CN110147396B (zh) 一种映射关系生成方法及装置
WO2008094851A2 (en) Apparatus and method for analyzing relationships between multiple source data objects
Mpinda et al. From relational database to column-oriented NoSQL database: Migration process
CN108416442B (zh) 基于项频度和权值的中文词间矩阵加权关联规则挖掘方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination