zoznamy, λ-kalkul, funkcie Flashcards

1
Q

Co robi concat?

A

[[a]] -> [a] – zlúči zoznam zoznamov

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

Ake funkcie mame na sumu/product numerickych zoznamov?

A

sum,product

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

Co robi take a drop?

A

Take vezme n zo zoznamu a drop necha n

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

Co robi takewhile/dropwhile?

A

Take alebo drop ale s nie fixnym cislom ale s funkciou

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

ako zistim ci je prvok v zozname?

A

elem

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

Co robi lookup?

A

Eq a => a -> [(a, b)] -> Maybe b

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

Opis λ-term

A

slide 3

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

Opis vazbu premennych

A

slide 3

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

Co je to kombinator?

A

λ-term bez voľných premenných

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

Ake pozname kombinatory

A

ISK
slide 3

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

Opis beta-redukciu

A

slide 4

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

Co je to redukovatelny vyraz?

A

(skrátene redex) je ľubovoľný výraz na ktorý sa dá priamo aplikovať β-redukcia.

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

Kedy je vyraz v normalnej forme?

A

neobsahuje žiadny redex.

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

Ake pozname poradie redukovania v lambda kalkule?

A

slide 5
volanie hodnotou (call-by-value, leftmost innermost)
volanie menom (call-by-name, leftmost outermost, delayed)
volanie nutnosťou (call-by-need, left. outer. + memo., lazy)

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

Zalezi na poradi redukovania v lambda kalkule?

A

nie, ak skončia, tak vedú vždy k tej istej normálnej forme

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

Co je to alfa konverzia?

A

λx.M→ λy.M[x→ y], ak y nie je voľné v M
premenovanie viazanej premennej

17
Q

Co je to η-redukcia?

A

λx.Mx→ M, ak x nie je voľné v M
odstraňuje zbytočnú λ-abstrakciu

18
Q

Co je to currying?

A

technika transformovania n-árnej funkcie na postupnosť unárnych
lebo všetky funkcie sú unárne

19
Q

Ake pozname 2 typy funkcii?

A

Anonymná funkcia (λ je nahradená symbolom )
Pomenovaná funkcia

20
Q

Aka je v haskelli asociativity aplikacie funkcie?

A

zľava asociatívna
* f x y z≡((f x) y) z

21
Q

Co robi $?

A

menej zatvoriek treba

22
Q

Cim skladame funkcie?

A

bodkou

23
Q

ake su take identicke funkcie?

A

id - identita
const - konstantna

24
Q

Ako to funguje ked ma haskell len unarne funkcie?

A

N-arna funkcia vracia vzdy n-1-arnu funkciu

25
Q

Co robi curry?

A

curry f – funkcia f na dvojiciach „curried“ funkcia
uncurry f – „curried“ funkcia f funkcia na dvojiciach

26
Q

Co robi flip?

A

prehodenia poradia prvých dvoch argumentov f

27
Q

Co robi curry id?

A

Vytvori dvojicu