CSE240 Lecture 01

CSE240 Lecture 01

Introduction to Programming Languages
Course Presentation
(202008)

B546a9b97d993392e4b22b74b99b91fe?s=128

Javier Gonzalez

January 01, 2017
Tweet

Transcript

  1. jgs CSE 240 Introduction to Programming Languages Lecture 01: Course

    Presentation Dr. Javier Gonzalez-Sanchez javiergs@asu.edu javiergs.engineering.asu.edu | javiergs.com PERALTA 230U Office Hours: By appointment
  2. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 2 jgs

    Rule 1 Always use your ASU email @asu.edu To communicate with the TA and the Instructor
  3. jgs About Us

  4. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 4 jgs

    Teaching javiergs@asu.edu • Programming & Languages • Software Engineering • Computer Graphics • Human-Computer Interaction
  5. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 5 jgs

    Teaching Undergrad Level Graduate Level javiergs@asu.edu CSE 110 CSE 240 CSE 340 CSE 360 CSE 460 SER 200 SER 232 SER 332 SER 431 CSE 564 SER 516 SER 517 SER 518
  6. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 6 jgs

    Research Intelligent Systems Engineering Human-Computer Interaction javiergs@asu.edu
  7. jgs Fall 2020

  8. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 9 jgs

    Synchronous Learning § This is a synchronous remote learning, i.e., live lectures via Zoom Simultaneously with in-person instruction The lecture is Tue/Thu 10:30 AM AZ time Exams are proctored during one lecture session (10:30 AM AZ time) § If you cannot be on campus this Fall due to travel restrictions or health concerns, you may attend the class via ASU Sync. Be aware of the time restrictions (AZ time) There is a 100% online course that is asynchronous; But is NOT this one.
  9. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 10 jgs

    Classroom § Poly AGBC 140 (57 / 72) § On Tuesdays, half of the class will meet in-person while the other half of the class participates in the live class on Zoom via ASU Sync. Group 1. Last Name A (Ahpo) to M (Murphy) § On Thursday, those who attended in-person on Tuesday will attend via Sync. The Tuesday group that attended via Sync will attend in-person. Group 2. Last Name N (Nabweza) to Z
  10. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 11 jgs

    Zoom
  11. jgs About CSE 240

  12. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 13 jgs

    CSE240 – Introduction to Programming Languages Definition
  13. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 14 jgs

    CSE240 – Introduction to Programming Languages Definition A set of symbols structured by a set of rules Goal: Tell a computer what to do C C++ LISP Prolog
  14. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 15 jgs

    symbols numbers letters operators rules lexical syntactic semantic Java
  15. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 16 jgs

    Language Levels Hardware Machine Language Assembly Language High-Level Language C C++ Java Lisp Prolog
  16. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 17 jgs

    Machine Language Hardware Machine Language
  17. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 18 jgs

    Assembly Language Hardware Machine Language Assembly Language
  18. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 19 jgs

    Language Levels Hardware Machine Language Assembly Language High-Level Language C C++ Java Lisp Prolog
  19. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 20 jgs

    Virtual Machine (interpreter) High-Level Programming 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 5 01001010101000010 01010100101010010 10100100000011011 11010010110101111 00010010101010010 10101001010101011 compilation execution High-Level Language C C++ Java Assembly Language Hardware Machine Language
  20. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 21 jgs

    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
  21. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 22 jgs

    Agenda 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
  22. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 23 jgs

    Textbook § Chapter 1. Principles § Chapter 2. Structural programing § Chapter 3. Object-Oriented programming § Chapter 4. Functional programming § Chapter 5. Logic programming
  23. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 24 jgs

    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% Quizzes (and attendance) 25% Assignments
  24. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 25 jgs

    Rule 2 § Assignments and projects can never be made up and can never be turned in late. § Quizzes and Exams. There are no make-ups for missed quizzes and exams. § The only Exceptions: These listed in ASU policies, including Accommodation for Religious Practices, Missed Classes Due to University- Sanctioned Activities, etc.
  25. jgs Important

  26. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 27 jgs

    Ask For Help § ASU provides tutoring, career, health and wellness and financial resources. § Check this link http://engineering.asu.edu/resources/ § Ask for help when and if you need it.
  27. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 28 jgs

    Do NOT be a Grade Grubber § Grading is done applying the same policies to all students as described in the syllabus. § It is unethical to bring to your instructor's attention the possible impact of your course grade on your future plans, including graduation, scholarships, jobs, etc. Do not send requests to your instructor asking for a grade that you did not earn with your work. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 20 jgs Do NOT be a Grade Grubber § Grading is done applying the same policies to all students as described in the syllabus. § It is unethical to bring to your instructor's attention the possible impact of your course grade on your future plans, including graduation, scholarships, jobs, etc. Do not send requests to your instructor asking for a grade that you did not earn with your work.
  28. jgs Questions

  29. Javier Gonzalez-Sanchez | CSE240 | Fall 2020 | 30 jgs

    Homework Read the Syllabus
  30. jgs CSE 240 Introduction to Programming Languages Javier Gonzalez-Sanchez javiergs@asu.edu

    Fall 2020 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.