Thanks for the reply.
I like that you’ve chosen a scripting language, it makes the book much more accessible. If it were in c / c++ / rust etc, I would never read it.
Thanks for sending the writeup of why you chose Python.
As for javascript readability issues, IMO those are non-issues and actually in some ways beneficial to have one language, no need to context switch.
The web workers issue is perhaps a problem, but maybe it makes the implementation easier, even if it doesn’t look much like real browsers?
I don’t understand the networking issue you highlight, you can build any networking functionality using NodeJS, it’s actually very good in networked application settings.
With so many people that write code online in javascript, the book would be so much more accessible. It would be a great compliment to the Python version or any C / C++ version.
I’m interested to hear your update, what’s the best way to get that automatically?
One other thing...this passed by in my feeds last week, I’m not an expert in web workers or browser threads etc, but it seems like it might be relevant, so sharing it just in case:
“A fast, efficient Node.js Worker Thread Pool implementation”
The style parts are in Rust, but layout is C++, I believe.
servo does have an experimental layout engine (or two? layout 2020?) in Rust, but I don't think that ever reached a point where Mozilla were seriously considering replacing Gecko's with it.
Yes, that's what I meant by "back pointers". In the article, every node has a parent pointer and a child pointer (or several). You can't have both of these pointers without introducing cycles.
I quite like Python but really I want a version all written in NodeJS, so it’s javascript all the way down :)