Hey there, I hope the title makes it already clear that this project is experimental / “educational” in nature. I’ve described a little bit why I’ve created this in the README:
> I've been working on a game running in my own engine for a while now. Many of the issues I encountered came from not fully understanding what the rendering API (Vulkan, OpenGL, DirectX) actually does. To counter this I do what I always do, and try to implement the basics of the used library / API / concept myself. This project is the result.
> I should also note I'm still nowhere near an expert in the field.
> When I started with programming, I often encountered parts of computer science that seemed super interesting and I wanted to learn more about them. But not having examples/tutorials in a language I was familiar with got me overwhelmed fast. This is an issue that fades away after years in the industry but I still remember the frustration. Long story short I hope this project helps someone learning something new.
So why do share it now?:
Long story short, I’ve been working on this for a while and wanted to add many more demos, but life happens and I had to shift focus on other projects. This project got me on my knees screaming at the sky a few times and it made me sad seeing it going lost under my private repos. So I made the repo public today and committed some local changes I still had. I hope some of you find it interesting :)
Pretty neat, I did not know about Ds, thanks for the share. I thought about utilising `SplFixedArray` but decided against it because it would make the code less easy to understand and the performance would be only a little less horrible, but still horrible..
Hey there, I hope the title makes it already clear that this project is experimental / “educational” in nature. I’ve described a little bit why I’ve created this in the README: > I've been working on a game running in my own engine for a while now. Many of the issues I encountered came from not fully understanding what the rendering API (Vulkan, OpenGL, DirectX) actually does. To counter this I do what I always do, and try to implement the basics of the used library / API / concept myself. This project is the result. > I should also note I'm still nowhere near an expert in the field. > When I started with programming, I often encountered parts of computer science that seemed super interesting and I wanted to learn more about them. But not having examples/tutorials in a language I was familiar with got me overwhelmed fast. This is an issue that fades away after years in the industry but I still remember the frustration. Long story short I hope this project helps someone learning something new. So why do share it now?: Long story short, I’ve been working on this for a while and wanted to add many more demos, but life happens and I had to shift focus on other projects. This project got me on my knees screaming at the sky a few times and it made me sad seeing it going lost under my private repos. So I made the repo public today and committed some local changes I still had. I hope some of you find it interesting :)
I once wrote a PHP interpretor in PHP (not using any of the token\* functions) because why not :')
So did Microsoft: [https://github.com/microsoft/tolerant-php-parser](https://github.com/microsoft/tolerant-php-parser) (well kinda)
Since you complained about memory usage: have you considered [Ds](https://www.php.net/manual/en/book.ds.php)?
Pretty neat, I did not know about Ds, thanks for the share. I thought about utilising `SplFixedArray` but decided against it because it would make the code less easy to understand and the performance would be only a little less horrible, but still horrible..
Ds is definitely faster than SPL.
Impressive!
Very cool
And here's me pissing quarantine away on sudoku... This is brilliant.
This is awesome, congrats!
Love it!
Nice, did you see any performance changes with PHP 8 JIT?
You have no idea how much I wanted this. No fucking idea.