Day 2 of "From Opcodes to Algorithms" in Rust
หลังจากลุยไปได้ 20 commits วันนี้ได้ stack machine ที่มี fetch-decode-execute cycle แล้ว ตอนนี้มี instruction sets ไว้ทำ stack manipulation, math operations, comparison, jumps คิดว่าเป็นการเริ่มวันที่สองที่ดีเลย
ชอบที่ตอนนี้ใช้ memory space แค่อันเดียว กับ 2 register (program counter กับ stack pointer) รู้สึกว่า comfortable กับการเขียน Rust แบบไม่ต้อง .clone() แล้ว
อีกอันที่ชอบวันนี้คือรู้สึกว่าเริ่ม design abstraction บน Rust ให้อ่านง่ายและดูสวยใน Rust ได้ดีขึ้นนิดนึงแล้ว พอสร้าง stack manager ขึ้นมาใช้ ทำให้พวก instruction ง่ายๆ เป็น one-liner หมดเลย!
ไม่ได้เขียน Rust มา 4 ปีแล้ว ดีใจที่ยังเขียนได้อยู่แบบแทบไม่ต้องเปิด docs เลย
มันส์มากวันนี้ พรุ่งนี้อยากทำ functions, call stack, recursion, types (char, string) กับ loops ต่อ ถ้าทำได้คิดว่าก็เริ่มเขียนโปรแกรมง่ายๆ ได้แล้ว ต่อจากนั้นอยากลองสร้าง Lisp Compiler ขึ้นมาเล่น ไม่ก็สร้าง data structure พวก Array List, Linked List, Ring Buffer, Tree, Graph มาลองใช้ดู
Research Notes
September 24. Post on Facebook.