EECS 662. Programming Languages. 3 Hours.
Formal definition of programming languages including specification of syntax and semantics. Simple statements including precedence, infix, prefix, and postfix notation. Global properties of algorithmic languages including scope of declaration, storage allocation, grouping of statements, binding time of constituents, subroutines, coroutines, and tasks. Run-time representation of program and data structures. Prerequisite: EECS 368 and EECS 560. LEC.
B.S. in Computer Science Program Educational Objectives Graduates who have earned the bachelor’s degree in computer science, within a few years following graduation, will have demonstrated technical proficiency, collaborative activities, and professional development. Technical Proficiency Graduates will have achieved success and visibility in their chosen careers as shown by technical accomplishments in industry, government, entrepreneurial activities, or academia. Collaborative Activities Graduates will have exercised shared responsibilities through activities such as contributions to multiperson or multidisciplinary technical projects, participation in professional society/organization functions, or performing collaborative research. In all such cases, graduates will have contributed to documentation of the collaborative activities. Professional Development Graduates will have demonstrated continual updating to extend their expertise and adapt to a changing environment through graduate studies; short courses, conferences, and seminars; or professional self-study. In addition, graduates will have demonstrated evidence of increasing technical and/or managerial impact. Careers Professional Opportunities Computer scientists may pursue the design, analysis, and implementation of computer algorithms; study the theory of programming methods and languages; or design and develop software systems. They also may work in artificial intelligence, database systems, parallel and distributed computation, human-computer interaction, computer graphics, operating systems, or computer systems analysis and administration. Computer scientists may work for software companies, government and defense, telecommunications, or consulting firms.
...3 EECS 660 Fundamentals of Computer Algorithms 3 EECS 662 Programming Languages 3 EECS 672...