1

This course introduces students to the principles of computation.

FREE
This course includes
Hours of videos

749 years, 11 months

Units & Quizzes

27

Unlimited Lifetime access
Access on mobile app
Certificate of Completion

Upon completion of 6.001, students should be able to explain and apply the basic methods from programming languages to analyze computational systems, and to generate computational solutions to abstract problems. Substantial weekly programming assignments are an integral part of the course. This course is worth 4 Engineering Design Points.

Course Currilcum

  • Introduction to Computation Unlimited
  • Scheme Basics Unlimited
  • A Story about using Lisp in a Startup Company Unlimited
  • Procedures, Processes, and Recursion Unlimited
  • Orders of Growth and Kinds of Procedures Unlimited
  • Data Abstraction Unlimited
  • Higher Order Procedures Unlimited
  • Good Programming Practices Unlimited
  • Using Higher Order Procedures Unlimited
  • Symbols and Quotation Unlimited
  • Tagged Data Unlimited
  • Advanced Data Types Unlimited
  • Data Mutation Unlimited
  • Trees, Graphs and Search Unlimited
  • Environment Model Unlimited
  • Object Oriented Programming I Unlimited
  • Object Oriented Programming II Unlimited
  • Object Oriented Programming III Unlimited
  • Interpretation Unlimited
  • Interpreter Code Unlimited
  • The Meta-circular Evaluator Unlimited
  • Evaluator Code Unlimited
  • Lazy Evaluation Unlimited
  • Lazy Evaluator Code Unlimited
  • Asynchronous Computing Unlimited
  • Universal Machines Unlimited
  • Computability Unlimited