Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSE240 (online) Lecture 01

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.

CSE240 (online) Lecture 01

Introduction to Programming Languages
Course Presentation
(201805)

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. CSE240 – Introduction to Programming Languages (online) Lecture 01: Course

    Presentation Javier Gonzalez-Sanchez [email protected] javiergs.engineering.asu.edu Office Hours: By appointment
  2. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    2 CSE240 – Introduction to Programming Languages A set of symbols structured by a set of rules Goal: Tell a computer what to do Definition C C++ LISP Prolog
  3. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    3 symbols numbers letters operators rules lexical syntactic semantic Java
  4. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    4 Language Levels Hardware Machine Language Assembly Language High-Level Language C Fortran C++ Java
  5. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    5 Machine Language Hardware Machine Language
  6. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    6 Assembly Language Hardware Machine Language Assembly Language
  7. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    7 Language Levels Hardware Machine Language Assembly Language High-Level Language C Fortran C++ Java
  8. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    8 High-Level Languages X,E,G,O,O #e1,I,I,0,7 @ OPR 19, AX STO x, AX LIT 5, AX OPR 21, AX LOD #e1,AX CAL 1, AX OPR 0, AX // sorce code int x; int foo () { read (x); print (5); } main () { foo (); } Lexical Analysis Syntactic Analysis Semantic Analysis Code Generation Virtual Machine (interpreter) 5 0100101010100 0010010101001 0101001010100 1000000110111 1010010110101 1110001001010 1010010101010 01010101011 compilation execution High-Level Language C Fortran C++ Java Assembly Language Hardware Machine Language
  9. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    9 Language Paradigms High-Level Language Procedural program = algorithms + data Object-Oriented program = objects + messages Functional Logic Programming program = facts + rules program = functions ° functions C Java, C++ LISP Prolog
  10. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    10 Calendar Main Topics 1 Introduction 2 Principles of Programming Languages 3 Language C 4 Language C++ 5 Working with C/C++ 6 Language Lisp 7 Language Prolog 8 Final review
  11. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    11 Text book Chapter 1. Principles Chapter 2. Structural programing Chapter 3. Object-Oriented programming Chapter 4. Functional programming Chapter 5. Logic programming
  12. Javier Gonzalez-Sanchez | CSE 240 (online) | Fall 2017 |

    12 Grading 100% A+ 97 A 93 A- 89 B+ 85 B 81 B- 77 C+ 73 C 69 D 65 Midterm Exam 25% 25% Final Exam (Comprehensive) 25% Quizes 25% Programming Projects
  13. CSE240 – Introduction to Programming Languages (online) Javier Gonzalez-Sanchez [email protected]

    Fall 2017 Disclaimer. These slides can only be used as study material for the class CSE240 at ASU. They cannot be distributed or used for another purpose.