先修课程
课程6.170
及熟练掌握Java®
上课形式
课程6.035中的讲座、习题集和考试都是围绕编译器项目展开的,该项目分为五部分。每部分分别阐述了该编译器结构的一个独立侧面。每部分(除第一部分外)包括一系列的讲座,一个编程作业以及习题集或课堂测试。
在每部分开始时给出程序作业。然后,使用一系列讲义介绍相关材料。该部分剩余时间全部用于完成该项目,这个过程不采用课堂形式。每小组应该安排每周一次的“项目评估”会议,与助教讨论设计决策、项目进度和小组状态。每部分在项目作业完成之时结束。 教学日程 列出了时间安排表,分发资料4“项目总览”详细描述了项目细节。除项目作业之外,还会有三次课堂测试和四篇论文作业,每篇论文作业应包括与一小组成员进行一对一的论文讨论。
项目
课程6.035的主体内容是编译器的设计和执行。在课程的每部分中,逐步完成编译器建构。课程的五部分为:扫描器和剖析器、语义检查器、代码生成器、数据流优化器和指令优化器。这五部分作业都以小组形式完成。
如同之前,我们也提供两种版本的编译器项目:18位和12位。一个项目组的所有成员必须注册同一版本。课程6.035的所有学生应该注册12位的版本。想挑战更高难度项目的学生可以通过增加数据同时注册课程6.907(6位)。申请6.907课程的增加表不需要教授签名。这6位的的分数仅仅计算在项目成绩以内。
12位版本的项目是为你的健康着想:来一杯Decaf咖啡就可以让你获得建构一个简单而完整的编译器带来的键盘操作经历。而要完成18位版本的项目,你需要来一杯热气腾腾的Espresso浓咖啡,这样你还能体验在建构具有工业实用价值的编译器过程中所产生的一些实际问题。
我们提供更高难度的项目和增加的6位是为了给予有兴趣的学生一个机会,使他们能够对建构编译器过程中所涉及到的问题有更深的理解。这才是你们选择18位版本课程的原因,而不只是为了获得增加的6位。
两个版本的项目完成日期相同。
项目评估
每小组应该安排一个与助教讨论项目状况的周会。这个会议非常关键,学生可以详细阐述项目的执行细节。助教通过学生的参与情况来评估每个学生的能力和对项目的贡献。
助教咨询时间
助教自行设定每周提供咨询的时间,在此时间段内助教在办公室等候。这样增加了学生与助教的“面谈时间”。时间将稍后公布。如果想在咨询时间外与助教面谈,请打电话或发电子邮件预约。
评分规则
-
无补考。如果有合理理由无法参加测试,请在测试 前
告知任一教师。
-
在规定日期当晚之前提交项目(无论是否已经完成),但必须在下一个项目前完成此项目。逾期提交则扣除分数的10%。
-
每一次项目作业,小组的每一个成员将会得到相同分数。但是,如果我们觉得小组某个成员做出了超越自己份额的贡献或者未完成所分配任务,我们将会相应调整其分数。所以,与助教保持沟通很重要,及时更新你所在小组的项目进度和你本人对项目的贡献。
总分根据以下权重给出:
评分标准.
| 评分内容 |
百分比 |
| 编译器项目 |
58% |
| 论文讨论(每篇3%) |
12% |
| 课堂测试(每次10%) |
30% |
请明确你的最终分数是如何计算出的。有关项目成绩的计算方法详见 项目
部分。
论文阅读和讨论
课程6.035今年的新特点之一是我们希望学生能阅读分发的论文,然后与教授或助教进行一对一的讨论。这里描述的是,我们期望学生通过这个新特点完成什么内容,以及在学生阅读论文并参与讨论的过程中,我们能从学生身上得到什么新的启示。
F最后,写一篇150到200字的论文摘要,用以准备一对一的讨论。
不完善
只有在非常情况下,才会出现不完善,并且这种情况需要工作达到不完善所要求的程度。引用MIT课程目录上话:“I分数只有在工作要求的一小部分没有完成并且在完成时达到了合格分数的情况下给出。”
团队合作方针
“院系关于学术诚信的指导方针”要求我们告知学生关于学术行为的期望。对于家庭作业和第一个项目作业,允许学生就问题要求和背景材料与任何人进行讨论。但是,学生所提交的解决方案必须是个人独立完成的作业。其余项目作业,学生可以与任何人就背景材料、问题要求、问题解决方法以及设计等方面进行讨论,但学生不能浏览由任何人包括往届学生为课程6.035编写的代码。实际代码必须是小组编写的结果。个人必须独立参加所有考试。在过去,许多学术不正当行为案例产生的原因在于学生的错误判断,这些学生要么发现着手完成作业的时间过晚,要么觉得自己没有能力完成作业。请记住:在课程6.035中可能得到的最差成绩也远比不上学术不正当行为对你的事业所产生的长期后果严重。请现在就认真思考这些问题,这样在该学期中如果你暂时感到疲倦、压力过大、绝望而试图违反团队合作方针时,才不会动摇。处理这些学术不正当行为事件需要我们的课程教职员工付出大量毫无意义的努力。如果在这学期必须处理类似事件,我们也不会高兴,但我们将在我校相关规定最大范围内对你进行最严厉的起诉。