I have noticed (basically seeing all the dots when nim compiles) that the compiler currently enters (compiles) all imports before checking the current file for even syntax mistakes. In addition, why enter the first import, if the second one possibly doesn't exist. I think a few such heuristics can improve iteration speed. for example: first gather all imports, and see if the files exist, exit quickly with an error if fails. then do a syntax check of current file, maybe handle the: from x import y, if y doesn't exist. ...maybe other quick checks... afterwards read and compile everything.
it could be that relatively simple changes like that can improve compilation speed for development iterations or for IDE error reporting. When IC finally lands it will take care of this, but for now it seems like a nice hack to get a speedup. I like to get quick feedback and Nim is quite good at this, so this is a suggestion for improvement. What do you think?
