COP 3223H meeting -*- Outline -*- * Couse Summary ** review of the syllabus ------------------------------------------ WHAT WE STUDIED Programming Concepts: - Data - Variables - I/O - Booleans - Control flow and conditionals - Specifications - Grammars - Recursion - Lists - Expressions vs Statements - Assignment statements - Loops - Declarations - Pointers - Modules - Stepwise refinement - Structs (records, objects) - Linked lists ------------------------------------------ ** Comparisons ------------------------------------------ DIFFERENCES BETWEEN PYTHON AND C? What are the most important differences? ------------------------------------------ - syntactic differences (indentation vs. {...} scope) - C is statically type checked, needs declarations - static scoping for names in modules and blocks in C, vs dynamic in Python - pointer arithmetic in C - stack allocation and lifetimes important in C (in Python every object has an indefinite lifetime) - interpretation in Python vs. compilation/linking in C ------------------------------------------ SIMILARITIES BETWEEN PYTHON AND C ------------------------------------------ - Both have variables that can be changed by assignments - Both have arrays that are indexed starting at 0 - Both have loops and recursion - Both have functions that can be used to modularize code