【技术实现步骤摘要】
在领域特定语言中集成编程脚本语言的方法及装置
本专利技术涉及自然语言处理领域,具体而言,涉及一种在领域特定语言中集成编程脚本语言的方法及装置。
技术介绍
相关技术中的领域特定语言,一般只能在特定宿主软件系统中,针对特定领域的业务进行描述和处理。而编程脚本语言有其独立的语法体系,不能面向不同的应用领域进行进一步简化和改良。因此,存在以下几方面的问题:(1)一种全功能的领域特定语言需要大量语法描述。定义一种具有流程控制、条件判断、变量/类/函数定义、异常处理和集合操作等能力的语言,工作量相当于描述或编写一种语言编译器(如C++编译器),对于没有编译器知识背景的应用系统开发人员和各应用领域的专业人员来说几乎难以实现。(2)一般的领域特定语言功能有限。由于受自定义语法复杂程度的限制,它们一般不具有流程控制、条件判断、变量/类/函数定义、异常处理和集合操作的能力。各种命令行语言都属于这种情况。(3)难以与宿主业务流程无缝集成和联合执行。某些领域特定语言,如SQL语言,虽然具有强大的数据库查询和操作能力,但与应用系统的业务处理和执行是分离的。通过SQL语句进行数据库操作,需要 ...
【技术保护点】
一种领域特定语言中集成编程脚本语言的方法,其特征在于,包括:确定领域特定语言和目标编程脚本语言的语法特征,其中,所述领域特定语言为依据领域而定的语言;依据所述领域特定语言和所述目标编程脚本语言的语法特征,确定所述目标编程脚本语言中的目标关键字和所述领域特定语言中的预留符号,其中,所述目标关键字用于识别待分析语句中的语言类别属于所述目标编程脚本语言,所述预留符号用于识别所述待分析语句中的语言类别属于所述领域特定语言;在基于所述领域特定语言和所述目标编程脚本语言的语法特征、所述目标关键字和所述预留符号的条件下,按照预设规则将所述领域特定语言与所述目标编程脚本语言建立映射关系;通 ...
【技术特征摘要】
1.一种领域特定语言中集成编程脚本语言的方法,其特征在于,包括:确定领域特定语言和目标编程脚本语言的语法特征,其中,所述领域特定语言为依据领域而定的语言;依据所述领域特定语言和所述目标编程脚本语言的语法特征,确定所述目标编程脚本语言中的目标关键字和所述领域特定语言中的预留符号,其中,所述目标关键字用于识别待分析语句中的语言类别属于所述目标编程脚本语言,所述预留符号用于识别所述待分析语句中的语言类别属于所述领域特定语言;在基于所述领域特定语言和所述目标编程脚本语言的语法特征、所述目标关键字和所述预留符号的条件下,按照预设规则将所述领域特定语言与所述目标编程脚本语言建立映射关系;通过所述映射关系将所述领域特定语言与所述目标编程脚本语言进行集成。2.根据权利要求1所述的方法,其特征在于,在通过所述映射关系将所述领域特定语言与所述目标编程脚本语言进行集成之后,所述方法还包括:对所述待分析语句进行解析,确定所述待分析语句所属的语言类别;若所述待分析语句所属的语言类别为所述领域特定语言,根据所述待分析语句生成语法树,并根据所述语法树对所述待分析语句进行分析;若所述待分析语句所属的语言类别为所述目标编程脚本语言,将所述待分析语句输送至目标引擎进行分析;若所述待分析语句所属的语言类别为混合语言,将所述待分析语句发送至翻译器,其中,所述混合语言中包括所述领域特定语言和所述目标编程脚本语言。3.根据权利要求2所述的方法,其特征在于,根据所述语法树对所述待分析语句进行分析包括:领域特定语言执行器接收所述语法树;以及基于所述语法树访问数据平台以获取数据信息。4.根据权利要求2所述的方法,其特征在于,将所述待分析语句输送至目标引擎进行分析包括:所述目标引擎将所述待分析语句转化为预定类型的参数;传递转化后的参数。5.根据权利要求4所述的方法,其特征在于,在确定所述目标编程脚本语言中的目标关键字和所述领域特定语言中的预留符号之后,所述方法还包括:将所述目标关键字存储至特征符号表中;将所述预留符号存储至翻译表中;所述目标引擎将所述待分析语句转化为预定类型的参数包括:基于所述特征符号表和所述翻译表中的规则将所述待分析语句转化为预定类型的参数。6.一种领域特定语言中集成编程脚本语言的装置,其特征在于,包括:第一确定单...
【专利技术属性】
技术研发人员:邢锦江,李剑,朱华,邹雪梅,陈险峰,朱峰登,史可华,董扬威,李亮,
申请(专利权)人:北京航天飞行控制中心,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。