3 ms·
Hey Matt, appreciate that you open sourced this. I always learn something by reading such code that other people have written. This one is an interesting proble
by srean 11y ago
Hey Matt, appreciate that you open sourced this. I always learn something by reading such code that other people have written. This one is an interesting problem to tackle in C++ for the reasons you mentioned.
For the same reasons I feel D seems a very nice fit here. You may enjoy digging into that. Coming from C++ context switch would be a minimum. You will enjoy nicer way to metaprogram and enforce compile time properties, you can lean on a garbage collector should you need one, and whole lotta shorter compile times. DMD is the fastest among GDC and LDC but the generated code is not that fast. So in theory the best path is to develop using DMD and once the code settles out you can switch to better codegens. It doesn't quite work as well as it should because DMD and [G|L]DC are sometimes a few versions apart, but its still quite reasonable for medium sized repositories.
But again thanks for open sourcing your code, I look forward to digging into it.
- matt42 11y agoThanks Srean, lower compile time is definitely something Silicon would benefit a lot. I am wondering how much the c++17 module TS will help. I'll check the D language to see if we can implement a framework similar to silicon. I do not know anything about this language, do you think we can get a D web server running as fast as its C counterpart?
- srean 11y agoSorry, hadn't seen this till now. Modules ought to help, kinda disappointed its a TS only. Yes D can be just as performant and I am sure you will feel at home pretty quickly because its essentially C++ done right. C++ committee has been falling over themselves to get all the D features :) The site to go to for D is dlang.org. It runs on D. One library you surely would want to look at is vibe.d