Question: I was thinking more about the programming language i am designing. and i was wondering, what are ways i could minimize its compile time?

Answer: 
I've implemented a compiler myself, and ended up having to look at this once people started batch feeding it hundreds of source files. I was quite suprised what I found out.

It turns out that the most important thing you can optimize is not your grammar. It's not your lexical analyzer or your parser either. Instead, the most important thing in terms of speed is the code that reads in your source files from disk. I/O's to disk are *slow*. Really slow. You can pretty much measure your compiler's speed by the number of disk I/Os it performs.

So it turns out that the absolute best thing you can do to speed up a compiler is to read the entire file into memory in one big I/O, do all your lexing, parsing, etc. from RAM, and then write out the result to disk in one big I/O.

I talked with one of the head guys maintaining Gnat (GCC's Ada compiler) about this, and he told me that he actually used to put everything he could onto RAM disks so that even his file I/O was really just RAM reads and writes.
I haven't seen much work done for minimizing the compile time. But some ideas do come to mind:

1. Keep the grammar simple. Convoluted grammar will increase your compile time.
2. Try making use of parallelism, either using multicore GPU or CPU.
3. Benchmark a modern compiler and see what are the bottlenecks and what you can do in you compiler/language to avoid them.

Unless you are writing a highly specialized language, compile time is not really an issue..