diff --git a/internet_collections.md b/internet_collections.md index 68c9331..055c601 100644 --- a/internet_collections.md +++ b/internet_collections.md @@ -68,7 +68,8 @@ [stack-based virtual machine(6 episode)](https://www.youtube.com/watch?list=PLSiFUSQSRYAOFwfP-aMzXJlWKVyIuWfPU) and [register-based(13 episode)](https://youtu.be/cfPDeso3XwI)
[register virtual machine in rust, with memory visualization](https://youtu.be/_uAMo-bXI5g)
-[tsoding virtual machine for Lisp, in C](https://www.youtube.com/watch?list=PLpM-Dvs8t0VY73ytTCQqgvgCWttV3m8LM)
+[tsoding virtual machine for Lisp, in C](https://www.youtube.com/watch?list=PLpM-Dvs8t0VY73ytTCQqgvgCWttV3m8LM) + [some notes](tsoding_bm)
### Minecraft Redstone Survival [Mojang & Minecraft 开始衰落了吗?](https://youtu.be/VKydXD6Lr20)
diff --git a/tsoding_bm.md b/tsoding_bm.md new file mode 100644 index 0000000..9588c09 --- /dev/null +++ b/tsoding_bm.md @@ -0,0 +1,23 @@ +# 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: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 `