Apla→C#自动程序转换系统的设计与实现

来源 :江西师范大学 | 被引量 : 0次 | 上传用户:zcznq
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
用形式化方法开发软件,被当今计算机界誉为克服“软件危机”、提高软件可靠性和生产效率的革命性途径,是实现软件自动化的关键。薛锦云教授在国家863和多项国家自然科学基金的资助下,根据多年从事算法程序设计理论研究的成果,提出了一种实用的开发和证明算法程序的方法——PAR方法。本项研究是PAR方法开发算法程序的一个重要步骤,也是两项国家自然科学基金课题《基于PAR方法的算法设计形式化和自动化研究》和《PAR方法应用于Java程序开发方法研究》的子课题。 本研究主要完成了以下工作: 1、比较Apla语言和C#语言的文法,研究两种语言之间的关系,并得出Apla->C#的转换规则。 2、利用PAR方法,研制了核心转换器,以自扩展的方式将Apla语言定义的组合数据类型转换为C#类,从而将其进一步生成动态链接库(DLL)。 3、研究Apla语言中的泛型程序设计机制,得出C#实现Apla中类型参数化机制的方法,并在C#预定义组合数据类型库中实现了泛型思想。 4、研制Apla到C#自动程序转换系统。在部件库的支持下,转换系统能实现带有类型参数化的Apla程序的转换。 5、用PAR方法推导了大量典型的Apla程序,用其对自动程序转换系统进行了测试。 在本系统的研制过程中,进行了多方面的创新:集成化的软件开发环境、组合数据类型的方便使用性、精巧和复杂算法的语言描述及实现、.NET Generic机制实现的C#可重用部件库等。 本系统中的Apla语言预定义组合数据类型均由PAR方法推导得到,由核心转换器转换生成C#可重用部件库,充分保证了可重用部件库的正确性;系统集词法分析、语法分析、语义一致性分析、转换、编译、运行为一体,便于经形式化推导和证明得到的算法程序的直接运行,有利于高可靠性软件的开发。本项研究是语言从抽象到具体的自动求精过程,使非创造性的劳动机械化,可节约大量劳动力;系统的研制成功将大幅度地提高C#程序设计的效率和可靠性,能为有效克服“软件危机”做出一定的贡献。
其他文献
作为一门先进的人机交互的技术,手势合成的研究具有广阔的实际应用前景和学术研究价值。如:聋哑人与正常人之间的交流、虚拟现实中的多模式接口、手语新闻、智能人机接口等。研
随着移动通信技术的发展,互联网上已经出现了越来越多的移动终端,来自EMC 的统计数据显示,截止2003 年底,全球移动用户已达到13.54 亿。传统采用电路交换的无线网络将逐步被
目前计算机网络正处于一个高速发展的时期,因此对网络的管理提出了更高的要求。原有的网络管理系统功能单一、操作复杂、效率低下,已不能满足运营商的发展需要。如何有效地、安
学位
近年来,无人飞行器已经在农业植保、灾难搜救、电影制作、低空监测等多个领域广泛应用。在这些应用中,无人飞行器的自主导航是关键技术,实现无人飞行器自主导航的传统方法是结合
随着人们对移动通信日益增长的需求,移动通信技术得到了快速发展和普及。移动自组织网络以其灵活机动、组网快速等优势,广泛应用于军事领域、灾后营救等重要领域。由于MANET无
基于构件的软件开发是解决软件危机的有效途径。在基于构件复用的软件开发过程中,构件库系统扮演了重要角色。在Internet技术下如何实现构件库对构件的有效的管理和检索,成为本
汉语的词法分析是汉语理解的基础,是汉语信息处理领域的一个重要课题。本课题提出一种新的并发检索-综合排歧的分词方法,目的是利用并行的特点,使分词与分词之间、分词与排歧
学位
多机器人任务规划以多机器人系统为对象,将多个任务合理分配给系统中的机器人,使之完成任务不发生冲突。如今单个机器人已经不能满足复杂任务的要求,因此,多机器人的研究已越来越