【小编说】作为首次举办的大赛,2020年全国大学生计算机系统能力大赛编译系统设计赛带给我们很多惊喜。在大赛颁奖典礼上,北京航空航天大学胡春明教授对大赛从报名、初赛、线上决赛的情况做了全面回顾。在令人惊讶的数据背后,可以看到同学们的努力、拼搏和指导教师们的辛勤付出。更可喜的是,有一部分参赛学生并未学习过编译原理课程,完全通过竞赛边学边练,激发了同学们的学习热情,达到了大赛“以赛促学、以赛促教”的目标。本文由胡春明教授授权发布。
好消息:作品陆续开源中
目前,大赛的用例测试通道持续开放中,各参赛队的作品已经陆续开源,有兴趣的老师和同学登录大赛官网 https://compiler.educg.net/ 了解详情。
本文作者介绍:
胡春明,北京航空航天大学计算机学院教授,主要研究方向为分布式系统、计算系统虚拟化、大规模分布式数据处理、分布式图计算系统、移动计算与云端融合等。作为负责人或技术骨干参与多个863计划、973计划、国家自然科学基金及北京市科委重点项目的研究工作。参与研制的服务网格系统CROWN获2008年国家技术发明二等奖。2008年入选教育部新世纪优秀人才支持计划,2010年获霍英东青年教师奖(三等奖)。
编译领域无可替代的经典著作,被广大计算机专业人士誉为“龙书”。本书上一版自1986年出版以来,被世界各地的著名高等院校和研究机构(包括美国哥伦比亚大学、斯坦福大学、哈佛大学、普林斯顿大学、贝尔实验室)作为本科生和研究生的编译原理课程的教材。该书对我国高等计算机教育领域也产生了重大影响。
紧密结合LLVM的源码,系统介绍LLVM的模块化设计理念并详解技术细节
LLVM是一个世界领先水平的编译器框架。它包含有丰富软件库,可以为编译器的初学者提供良好的学习体验,并大大降低编译器开发的学习门槛。
本书的前半部分将向您介绍怎么样去配置、构建、和安装LLVM的不同软件库、工具和外部项目。接下来,本书的后半部分将向您介绍LLVM的各种设计细节,并逐步地讲解LLVM的各个编译步骤:前段、中间表示(IR)、后端、即时编译(JIT)引擎、跨平台编译和插件接口。本书包含有大量翔实的示例和代码片段,以帮助读者平稳顺利的掌握LLVM的编译器开发环境。