-
First of all I want to say that I'm watching Vox with great interest and I'm glad you can work on it and I hope you are having fun with it. Now, I wanted to make two 2 question about the current state of Vox. Both of them has to do with performance. Here I go!
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 4 replies
-
|
Beta Was this translation helpful? Give feedback.
-
Interesting! I though about this problem myself too and how we could solve it. If I understand correctly and If I'm not forgetting about something, we can solve this with a simple design of having lists to check what is missing and what not. For example, there is a list with all the symbols that exists (different for each symbol), when someone calls/uses a symbol, we check the list and if the symbol doesn't exist, then we add the function to another list that has symbols whose definitions were not found. Every time we define a new symbol, this list is also checked and if we defined a symbol from that list then it is simple removed. So this will be like a simple dependency system for symbols. If what's happening now is doing a pass just to find the symbols that exist then I think what I said will make things much faster! I don't know if I explained it great and you got it but if you didn't and you are interested, tell me so I can make an example.
Totally agree!! Keep in mind that while super fast compilation times are important (and not only for me), having a compiler that works is top priority like you said yourself so yeah, glad you see it that way!
Interesting! I though that this number was 1M (unless I'm confuse it with Vlang or something else idk) so does this mean that Vox is getting even faster without changing its design??? WOW!!!!
What do you mean? I'm talking about the compiler implementation (the one written in D). If you not mostly using the system's libc or D's std phobos than what are you using? Do you write assembly to create the compiler? Or is there something I don't get? Also thanks a lot for the sources! I already read one so these extra sources will come in handy, especially the "godbolt"! |
Beta Was this translation helpful? Give feedback.
Atm we are at ~1.2M LoC/s.
Frontend has big problems with analysis order, which leads to bugs. This is very hard problem to solve. I'm would be ok with tra…