session 2
This commit is contained in:
parent
0dd25768c8
commit
923a17f7ff
@ -38,3 +38,9 @@ Because it is the simplest recursive data structure. It is a recursive data stru
|
||||
|
||||
The tree is simply too complex. Linked lists are easy.
|
||||
|
||||
## [16th of March - Deriving types]
|
||||
|
||||
> How does one do this systematically?
|
||||
|
||||
> Lazy and singly-linked lists, what's the relation?
|
||||
|
||||
|
@ -10,6 +10,10 @@
|
||||
| Proof on lists | Proving properties of functions that operate on lists | 😕 |
|
||||
| Proof on trees/ADTs | Proving properties of functions that operate on trees or ADTs | 😕 |
|
||||
|
||||
|
||||
## Deducing types systematically
|
||||
|
||||
### (:).(:)
|
||||
```hs
|
||||
expr = (:) . (:)
|
||||
|
||||
@ -41,24 +45,24 @@ expr :: a -> [[a] -> [a]] -> [[a] -> [a]]
|
||||
```
|
||||
|
||||
|
||||
### `f = \x y -> x (x (x y))` [^1]
|
||||
|
||||
```hs
|
||||
f = \x y -> x (x (x y))
|
||||
```
|
||||
|
||||
Rigorous solution of the above.
|
||||
|
||||
|
||||
## Look into
|
||||
## Questions
|
||||
> How does one do the equations?
|
||||
|
||||
> CLI is functional lol
|
||||
> CLI is functional?
|
||||
|
||||
> Lazy and singly-linked lists
|
||||
> Lazy and singly-linked lists, what's the relation?
|
||||
|
||||
> Y combinator - ?
|
||||
> Y combinator?
|
||||
|
||||
|
||||
## Resources
|
||||
- [course](https://www.cis.upenn.edu/~cis1940/spring15/lectures.html)
|
||||
- [standard list](https://hackage.haskell.org/package/base-4.21.0.0/docs/Data-List.html)
|
||||
- [standard list](https://hackage.haskell.org/package/base-4.21.0.0/docs/Data-List.html)
|
||||
|
||||
[^1]: need to find the actual rigorous way of doing this
|
Loading…
x
Reference in New Issue
Block a user