美文网首页程序员
《编译器》课程简介

《编译器》课程简介

作者: 秋纫 | 来源:发表于2014-03-01 14:26 被阅读315次

MOOC学院的课程展示页面

Coursera课程介绍页面

关于课程

这门课程将讨论编译器设计的主要思想,包括词法分析器、解析器、直接语法翻译(SDT)、抽象语法树(AST)、类型与类型检查、中间语言、数据流分析、程序优化、代码生成,以及运行时系统。最终,您会学到一门为人类设计的高级编程语言是怎样被系统地翻译成适合机器的底层汇编语言的。在课程中,我们也会接触编程语言的设计,编程语言的语义,以及为什么会有这么多编程语言的问题。

课程讲座将会以短视频的方式提供。为了帮助您掌握知识,课程中会有当堂提问、小测验和两次考试:期中和期末。以练习形式出现的作业,会让你展示一些步骤以利用前面流程的结果,例如,为一段代码做类型检查的步骤,或者解析一段字符串的步骤。检查作业的技术是斯坦福正在进行的为教育而开发的创新工具的产物,我们很高兴能通过这门课程首次让学生使用。

学生可以完成一项可选的课程设计:为COOL(Classroom Object Oriented Language)写一个完整的编译器。COOL包含现实中编程语言的要素,但已足够简单,其编译器只需要几千行代码。选择课程设计的同学可以用C++或Java来实现它。

希望你们在学习这门课中得到乐趣!

为什么要学习编译器?

计算机做的一切事情就是为某些程序得出结果,而全世界上亿种程序是用60年来的上万种编程语言写成的。设计并实现一门编程语言很难,计算机科学天才们想出了不少优美而深刻的办法解决这些问题。学习编译器的内容会学到关于理论和实践的演化,尤其是带有工程洞察力的真知灼见,会带来困难问题的巧妙解法。了解编译器的工作方式也会让您更快地学习编程语言,使您成为更优秀的程序员。

相关文章

  • 《编译器》课程简介

    MOOC学院的课程展示页面 Coursera课程介绍页面 关于课程 这门课程将讨论编译器设计的主要思想,包括词法分...

  • 编译器简介

    —— 在 Siri 出现以前如何与计算机对话 译者:penghuster作者:Nicole Orchard原文:...

  • 理解 Babel 及其插件机制

    简介 Babel 是 JavaScript 编译器,更确切地说是源码到源码的编译器,通常也叫做“转换编译器(tra...

  • clang编译器简介

    本文部分内容引用: 中文维基百科。 结构化编译器前端--clang介绍。 什么是clang编译器? clang是L...

  • 编译器GCC简介

    GCC(GNU Com piler Collection,GNU编译器集合),是一套由 GNU 开发的编程语言编译...

  • 30.iOS底层学习之LLVM初了解

    本篇提纲1、LLVM简介2、编译器的一些基础知识 1.LLVM简介 基本介绍 LLVM是架构编译器的框架系统,以c...

  • JIT(just-in-time) 即时编译

    JIT 简介 JIT 是 just in time 的缩写, 也就是即时编译编译器。使用即时编译器技术,能够加速 ...

  • 深入浅出 JIT 编译器

    JIT 简介 JIT 是 just in time 的缩写, 也就是即时编译编译器。使用即时编译器技术,能够加速 ...

  • 课程简介

    复苏与生长 春天,是万物复苏,生机勃勃的季节。 春季的身体舞动,适宜舒枝展叶,唤醒沉睡一冬的身体,当身体充分舒展,...

  • 课程简介

    每个人都对未来充满期待,但现实是每天都在重复同样的工作,看不清未来的发展在哪里工作换来换去,还是找不到自己到底适合...

网友评论

    本文标题:《编译器》课程简介

    本文链接:https://www.haomeiwen.com/subject/cvohtttx.html