2022-07-12 22:00:54 +08:00
# tsoding vm for lisp
## [Day 1](https://youtu.be/0irYsCYuZws)
- 0:15 LLVM?
- 0:18 вm -- blyat machine
- 1:?? job
- 2:10 random access to stack (where my `copy n` came from)
<!-- 2:18 M - x align - regxp -->
- 2:20-2:35 fibonacci (where my fib.asm came from)
- 2:40-2:55 dump in-memory program into/from file (how to implement this in rust?)
- 4:11 succeed!
[](https://github.com/tsoding/bm/tree/238612b4f1d300baa922e57a543ed75c153f3e40)
## [Day 2](https://youtu.be/9td67NTtNCg)
- 2:00 jump lable
- 2:11 "or I'll come to your house, steal all your source code, and make all your variables constant, ok. And I'm a haskeller, I know how to make all the variables constant, ok, trust me."
- about NaN-boxing
- https://www.cnblogs.com/qicosmos/p/4285409.html
- https://zhuanlan.zhihu.com/p/166406678
## [Day 3](https://youtu.be/LN9vrbBNG64)
- 0:45 "s64 vs i64, fight"
- 0:50 [boost integer ](https://theboostcpplibraries.com/boost.integer )
- 0:55 `#include <stdurmom.h>`
2022-07-13 13:55:27 +08:00
- 3:35 calculating pi
- 3:43 refer to forth
- 4:00 step debug
- 4:14 swap relative address like dup