That was also my first impression but now I think it would be a confusing hack: this main is really about Main, not Base, and it’s not a regular method. So Base.main would be misleading.
Here’s what Keno wrote in the PR:
This is not workable, because this is designed to support
Main.mainbindings that are things other than methods of a generic functions. It also breaks thejulia -e 'using MyApp'thing, because it requires type piracy and if some other package also has a main function, suddenly you’ve broken precompile.
Also, “making compilation first class” is a huge deal and a massive win for the language, and first class means main rather than something “convoluted” like Base.main.