Programming Languages and Software Engineering

    We develop new approaches to programming, whether that takes the form of programming languages, tools (like compilers), or methodologies (like ways to collect requirements or formulate designs). Advances in these ingredients can improve many aspects of applications and systems infrastructure.

    New programming languages can improve developer productivity and allow new categories of users to tackle complex programming challenges. Improved compilers can boost program performance through automatic program analysis and transformation. Formal methods can build confidence in system correctness through logical arguments about complex code bases (whether through automated reductions to harness SMT solvers or through more manual construction of proofs of deeper properties using computer proof assistants like Coq).

    Programming tools are relevant to most parts of computer science, and this area is therefore rich in collaborations with others, including the two-way interplay between machine learning and programming. Another popular thread is applying formal methods to classes of hardware and software systems whose correctness and security matter most: computer processors, operating systems, databases, and cryptographic libraries.

    Latest news in programming languages and software engineering

    Professor Hal Abelson has dedicated his career to making information technology more accessible to all and empowering people — kids, in particular — through computer science. But his

    The Department of Electrical Engineering and Computer Science (EECS) is proud to announce the following promotions: Adam Belay is being promoted to Associate Professor Without Tenure, effective July

    It’s nearing the end of 2021, and we want to celebrate the accomplishments and contributions of our incredible EECS community by sharing some of the awards given by

    Realtime Robotics has developed a combination of proprietary software and hardware that reduces system deployment time by 70 percent or more, reduces deployment costs by 30 percent or

    Associate professor Vivienne Sze is bringing artificial intelligence applications to smartphones and tiny robots by co-designing energy-efficient hardware and software. Image: Lillie Paquette/MIT School of Engineering Not so long

    Upcoming events