一种交互式脚本语言解释器的实现方法技术

技术编号:9519234 阅读:99 留言:0更新日期:2014-01-01 16:53
本发明专利技术涉及一种交互式脚本语言解释器的实现方法,包括:nova语言的编译,包括以下步骤:1)由策划人员实现nova语言的源代码;2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入文件中;Nova语言的执行,包括以下步骤1)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件;2)宿主语言检测需要调用的脚本,调用脚本程序;3)执行已经加载好的二进制编码的脚本。本发明专利技术的有益效果:实现程序的灵活性;由于执行时无需重新编译,效率也能有所提升。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及,包括:nova语言的编译,包括以下步骤:1)由策划人员实现nova语言的源代码;2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入文件中;Nova语言的执行,包括以下步骤1)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件;2)宿主语言检测需要调用的脚本,调用脚本程序;3)执行已经加载好的二进制编码的脚本。本专利技术的有益效果:实现程序的灵活性;由于执行时无需重新编译,效率也能有所提升。【专利说明】
本专利技术涉及计算机
,尤其涉及。
技术介绍
一般二进制程序的实现过程为:由程序员编写源代码(例如C语言源代码的.c文件);经过编译程序(例如微软的编译器产品cl.exe)编译、链接,生成二进制模块并合并多个二进制模块;将包含二进制代码的模块和多种不同的资源段按照不同平台的格式(例如windows平台下的.exe程序)生成一个可执行文件;脚本程序的实现过程为:由程序员编写源代码(例如peri语言),使用二进制程序(例如peri, exe程序)解释并执行该源代码,由此可见,脚本程序对于方便实现,缩短项目流程是很有必要的。在一个大型项目中,往往会有程序员、产品策划、美术制作等参与协同工作。但是在整个项目中,可能有一些内容经常需要变动,但是又必须由程序实现(例如在大型游戏中的攻击伤害计算),每一次的变动是由策划人员发起,却必须由程序员实现,因此往往造成程序员编码压力过大的问题。【
技术实现思路
】本专利技术的目的是提供,以克服现有技术存在的上述不足。本专利技术的目的是通过以下技术方案来实现: ,包括以下步骤: 1)nova语言的编译,进一步包括以下步骤: 1.D由策划人员实现nova语言的源代码;1.2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;以及 1.3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入文件中; 2)Nova语言的执行,进一步包括以下步骤: 2.1)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件; 2.2)宿主语言检测需要调用的脚本,调用脚本程序;以及 2.3)执行已经加载好的二进制编码的脚本。进一步的,所述源代码有一个与它绑定的ID。进一步的,所述编译器编译源代码的流程包括词法分析、语法分析和语义分析。进一步的,所述宿主语言提供nova脚本的支持性代码,在程序启动时已加载好所述支持性代码。进一步的,调用脚本时,通过脚本的ID调用脚本程序。进一步的,所述宿主语言提供脚本无法实现的功能的代码。本专利技术的有益效果为:1、解释器框架固定,语法变动时按照格式填写语法规范,解析代码只要局部变动; 2、策划脚本的编写者按照语法编写脚本源代码,而绝大部分的功能不在脚本中直接实现,而是转交给提供脚本支持的程序员。把“编译器的编写者”、“脚本语言的编写者”、“脚本语言支持的编写者”三者分离,以实现程序的灵活性; 3、脚本支持字节码的序列化、反序列化功能,把编译的时刻和执行的时刻分开,和策划相关的逻辑就不再和复杂的程序逻辑混在一起,同时由于执行时无需重新编译,效率也能有所提升。【具体实施方式】本专利技术实施例所述的,包括nova语言的编译和nova语言的执行;其中,nova语言的编译包括以下步骤:1)由策划人员实现nova语言的源代码;2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入到文件中;Nova语言的执行包括以下步骤I)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件;2)宿主语言检测需要调用的脚本,调用脚本程序;3)执行已经加载好的二进制编码的脚本;所述源代码有一个与它绑定的ID0所述编译器编译源代码的流程包括词法分析、语法分析和语义分析;所述宿主语言提供nova脚本的支持性代码,在程序启动时已加载好所述支持性代码;调用脚本时,通过脚本的ID调用脚本程序;所述宿主语言提供脚本无法实现的功能的代码。具体使用时,nova语言是一种轻量级、“交互式”的语言,策划人员使用nova脚本写程序,而真正实现这些逻辑的人可以是C、java甚至Iua语言的程序员。双方只要制定好名字规范,就可以让程序员封装复杂的逻辑,而策划人员则直接使用这些逻辑。支持用的代码只需要针对某一个具体项目实现一次即可。因此程序员编写的代码更多是用来:优化支持用的代码,管理整个程序;策划编写的是和项目内容有关的代码。【权利要求】1.,其特征在于,包括以下步骤: 1)nova语言的编译,进一步包括以下步骤: 1.D由策划人员实现nova语言的源代码;1.2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;以及 1.3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入文件中; 2)Nova语言的执行,进一步包括以下步骤: 2.1)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件; 2.2)宿主语言检测需要调用的脚本,调用脚本程序;以及 2.3)执行已经加载好的二进制编码的脚本。2.根据权利要求1所述的交互式脚本语言解释器的实现方法,其特征在于:所述源代码有一个与其绑定的ID。3.根据权利要求2所述的交互式脚本语言解释器的实现方法,其特征在于:所述编译器编译源代码的流程包括词法分析、语法分析和语义分析。4.根据权利要求3所述的交互式脚本语言解释器的实现方法,其特征在于:所述宿主语言提供nova脚本的支持性代码,在程序启动时已加载好所述支持性代码。5.根据权利要求4所述的交互式脚本语言解释器的实现方法,其特征在于:调用脚本时,通过脚本的ID调用脚本程序。6.根据权利要求5所述的交互式脚本语言解释器的实现方法,其特征在于:所述宿主语言提供脚本无法实现的功能的代码。【文档编号】G06F9/45GK103488519SQ201310447472【公开日】2014年1月1日 申请日期:2013年9月27日 优先权日:2013年9月27日 【专利技术者】毛恩沛 申请人:上海野火网络科技有限公司本文档来自技高网
...
一种交互式脚本语言解释器的实现方法

【技术保护点】
一种交互式脚本语言解释器的实现方法,其特征在于,包括以下步骤:1)nova语言的编译,进一步包括以下步骤:1.1)由策划人员实现nova语言的源代码;1.2)使用工具程序,调用编译器依次编译所有源代码,生成二进制编码的脚本;以及1.3)工具程序调用打包接口,将所有的二进制编码的脚本序列化,生成一段完整的二进制编码的脚本,将完整的二进制编码的脚本写入文件中;2)Nova语言的执行,进一步包括以下步骤:2.1)由宿主语言调用加载接口,加载包含二进制编码的脚本的文件;2.2)宿主语言检测需要调用的脚本,调用脚本程序;以及2.3)执行已经加载好的二进制编码的脚本。

【技术特征摘要】

【专利技术属性】
技术研发人员:毛恩沛
申请(专利权)人:上海野火网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1