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+
$40 USD/m
Billed monthly
Grade+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
10 Verified Answers
Class+
$30 USD/m
Billed monthly
Class+
Homework Help
Study Guides
Textbook Solutions
Class Notes
Textbook Notes
Booster Class
7 Verified Answers