Whenever I learn something new I write it down here
Programming
- divide and conquer
- dynamic programming
- greedy algorithms and optimal subproblem property
- fibonacci heaps
- proofs of correctness, often by induction
Types
- dependent types
- hindley milner type inference
- types as values
- higher kinded types
- type ereasure
- monomorphisation
- gradual typing
Functional
- currying
- partial application
- monads
- monoids
- endofunctors
- closures
- effect system to track side effects
Array
Logic
Analysis
- complexity analysis
- asymptotic analysis
- amortized analysís
Algorithms
- sorting algorithms:
- insertion sort
- heap sort
- merge sort
- quick sort
- meme sort
- selection sort
- bubble sort
- depth first sort
- dijkstra's algorithm
- prim's algorithm
- kruskal's algorithm
- bellman-ford's algorithm
- floyd-warshall
- trees
- heaps
- minimum spanning trees
- splay trees
- binary search trees
- red black trees
- tries
Security
- Rohammer
- Virutalization Deduplication Timing Attacks
Math
- Gödels Incompleteness Theorem
- Betrand's Paradox
- Category Theory
- [ ]
- Group Theory
- [ ]
- Graph Theory
- [ ]
- Type Theory
- [ ]
Physics
Music
- harmonic analysis
- negative harmony