Working on my Compiler | Live Rust Programming
ฝัง
- เผยแพร่เมื่อ 5 ก.ย. 2024
- Working on a compiler targeting my own 16bit VM. We're deep in the weeds of stack frames and calling conventions. Will I find my way through this maze?
Stream date: 2024-06-16
Support the stream: ko-fi.com/tomm...
Source: github.com/phy...
Streamed live @ / tommarkstalkscode
Follow me at coding.tommark...
Email: tom@tommarks.xyz
In what episode did you start implementing the parser combinators?
I started the parser combinators off stream :( I have all the footage, I want to make a big TH-cam video about my experiences writing a programming language.
@TomMarksTalksCodeLIVE Thank You!
The `Extend` trait is a generalization of vec.append(other) that takes any IntoIterator as the other. You can *totally* pass a statically sized array!
out.extend( [ Instruction::Pop(SP, BP), Instruction::Pop(SP, PC) ] );
Also, the Rust `core` library isn't allowed to allocate on the heap. Allocation happens in the `alloc` library, which has `core` as a dependency. `std` exports both `core` and `alloc`.
I still have a pending TODO to fix up my Vec abuse in this code :D
@@TomMarksTalksCodeLIVE That's what prototypes are for! You can't make an omelette without thrashing a few heaps.
sweet video :) really impressive ur not using rust-analyzer! lsp makes writing rust sooo much easier
Thank you! I think it keeps the streams clean and it lets me think everything through without interruption and red squiggly lines.
Great video🙌 could you share your nvim config sir?
I need to update this, but not much has changed :D
github.com/phy1um/unix-ricing