CS329M

Download as PDF

Machine Programming

Computer Science ENGR - School of Engineering

Course Description

The field of machine programming (MP) is concerned with the automation of software development. Given the recent advances in software algorithms, hardware efficiency and capacity, and an ever increasing availability of code data, it is now possible to train machines to help develop software. In this course, we teach students how to build real-world MP systems. We begin with a high-level overview of the field, including an abbreviated analysis of state-of-the-art (e.g., Merly Mentor). Next, we discuss the foundations of MP and the key areas for innovation, some of which are unique to MP. We close with a discussion of current limitations and future directions of MP. This course includes a nine-week hands-on project, where students (as individuals or in a small group) will create their own MP system and demonstrate it to the class. This course is primary intended for graduate students (it is not recommended for undergraduate students without first reviewing that the course prerequisites are met).

Grading Basis

ROP - Letter or Credit/No Credit

Min

3

Max

4

Course Repeatable for Degree Credit?

No

Course Component

Lecture

Enrollment Optional?

No

Programs

CS329M is a completion requirement for:
  • (from the following course set: )
  • (from the following course set: )
  • (from the following course set: )