Well, we’re loading a bunch of packages and opening a connection initially, so that is going to take longer than just starting Julia – there’s no way around that.
Then, when you switch to an editor, we figure out what module that file belongs to (if any) and statically parse all Julia code in that file and in files reachable from there to generate the outline.
If you type something, we’re getting autocompletions for you, complete with docs and inferred return types.
All of that is fast enough once compiled, but the compilation has to happen at some point. I’d imagine the whole experience to be much more satisfactory with everything compiled into the sysimg, but I haven’t tried that in a while.
You can also give the process cycler a go (enabled by default), which makes subsequent starts of Julia basically instant:
Edit: And I’m not saying we couldn’t do better here – it’s just not at all trivial to optimize package load times and compilation times.