Advanced Programming Languages Test 1

0.0(0)
studied byStudied by 0 people
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/39

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

40 Terms

1
New cards

john von neumann

proposed computers be permanently hardwired with a small set of general operations

  • 1940

2
New cards

programming language

concept for communicating WHAT we want a computer to do

3
New cards

assembly language

set of mnemonic symbols for instruction codes and memory locations

  • ex: LD R1, FIRST

4
New cards

assembler

program that translates assembly language code to binary machine code

5
New cards

loader

program that loads machine code into computer memory

6
New cards

fortran, formula translation language

__ __ __ popular with scientists/engineers due to its support for algebraic notation and floating numbers

7
New cards

algol


language that provided standard notation for computer scientists to publish algorithms in journals

  • 1960

  • first language to receive a formal definition, including a grammar

  • achieve machine independence by requiring an ___ compiler with each type of hardware

8
New cards

compiler

translates programming language statements into machine code

9
New cards

data abstraction

simplifies the behavior and attributes of data for humans

10
New cards

control abstraction

simplifies the properties of the transfer of control

11
New cards

interpreter

directly executes instructions without converting them into machine code

12
New cards

semantics

meaning of a language

  • describes the effects of executing the code

13
New cards

syntax

similar to the grammar of a natural language; structure

14
New cards

basic data abstraction

hides internal representation of data values

15
New cards

structured data abstraction

groups components from basic data abstractions into a unit

16
New cards

unit data abstraction

data values and the operations that act on those values

  • provide reusability

  • usage of classes

17
New cards

basic control abstraction

statements that combine machine instructions into an abstract statement easier to understand

  • a = b + c, x += 10

18
New cards

structured control abstraction

grouping instructions into blocks of codes

19
New cards

unit control abstraction

standalone collection of procedures

  • threads, processes, tasks

20
New cards

efficiency

effectiveness in which resources (time, space, memory) are utilized in algorithms and programming

21
New cards

regularity

how well the features of a language are integrated

greater when:

  • fewer restrictions on use of particular constructs

  • fewer strange interactions between constructs

  • fewer surprises in general in the language

  • helps make programs more readable and maintainable

22
New cards

generality

achieved by avoiding special cases in the availability or use of constructs, and by combining closely related constructs into a single more general one

  • in c++, you cannot directly compare 2 structures with ==

23
New cards

orthogonality

constructs can be combined in any way, with no unexpected restriction or behaviors

example: function return types

  • pascal only allows scalar or pointer types as return values

  • c and c++ allow values of all data types except array types

  • ada and python allow all data types

24
New cards

uniformity

the consistency of appearance or behavior of language constructs

25
New cards

programmer efficiency

how quickly and easily a person can read and write in a programming language

26
New cards

execution efficiency

primary design criterion; amount of computational resources used by the algorithm

27
New cards

language success

  • achieves the goals of the designer

  • attains widespread use in an application area

  • serves as model for other languages that are successful

28
New cards

principle of least astonishment

languages that satisfy the criterion of regularity are said to adhere to this

29
New cards

prime concerns of early language design

program speed and memory usage

30
New cards

function

a rule that associates to each x from set of X of values a unique y from a set Y of values

31
New cards

domain

the set of X

32
New cards

range

the set of Y

33
New cards

independent variable

the x in f(x), representing any value from the set X

34
New cards

dependent variable

the y from the set Y, defined by y=f(x)

35
New cards

functional programming

provide a uniform view of programs as function, and treat them as data

  • simpler semantics and model of computation

36
New cards

referential transparency

a function given the same input will always produce the same output without causing any side effects

example:

def add(a, b):

return a + b

37
New cards

first-class data value

functions can be computed by other functions or parameters to other functions

38
New cards

tail recursion

when the recursive steps are the last steps in any function

39
New cards

delayed evaluation

in languages with an applicative order evaluation rule, all parameters to user-defined functions are evaluated at the time of a call

40
New cards

value semantics

names are only associated to values, not memory locations

  • when you pass a variable to a function, it passes a copy of the value, not the reference to the value