CPS 530 Lecture Notes - Lecture 1: Imperative Programming, Functional Programming, Assembly Language

194 views31 pages

Document Summary

Imperative programming: programming with a state and commands that modify the state. (c. & assembler are classic imperative everything done by changing values of variables) Functional programming: programming with treating computation as the evaluation of mathematical functions and avoids changing-state and mutable data. How to perform tasks (algorithms) and how to track changes in state. What information is desired and what transformations are required. Function as first-class objects and data collections (https://msdn. microsoft. com/en-us/library/mt693186. aspx) Imperative is fine for small programs but difficult to scale up due to code size and parallelism. Programmer must model the state in their head. Object-oriented and functional paradigms used to address these problems. Evolution of programming languages: machine language -> assembly language -> low-level language. Many paradigms overtime: imperative, functional, object-oriented, concurrent, parallel and. Efficiency: assembler, native code compilers (ahead-of-time), source interpreters, byte-code interpreters, just-in-time compilers. Syntax: externally visible representation of a program. Pragmatics: non-functional characteristics of a program (environment)

Get access

Grade+20% off
$8 USD/m$10 USD/m
Billed $96 USD annually
Grade+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
40 Verified Answers
Class+
$8 USD/m
Billed $96 USD annually
Class+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
30 Verified Answers