Computer Languages Flashcards

1
Q

Memoization

A

An optimization where function calls avoid repeating the calculation of results for previously-processed inputs. It can be used for speed gains.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Currying

A

Currying is breaking down a function that takes multiple arguments into a series of functions where each takes part of the arguments.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

cons

A

Constructs lists

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

car

A

Gets the first element of the list. Used to stand for Contents of Address Register on an IBM 704.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

cdr

A

Nips the first element off of a list and gets the rest. Used to stand for Contents of Decrement Register on an IBM 704.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

tail recursion optimization

A

turns a function call into a goto

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

pure vs impure

A

pure means functional, impure means imperative

How well did you know this?
1
Not at all
2
3
4
5
Perfectly