Thanks for the welcome. :)I think I'll just work through Discrete Mathematics and Machine Organization before approaching Mr. Alexandrescu's book, would take up only 6 ~ 8 months of my time, and would be really good for me in the long term.
No! If you know how to program and want to learn D, start reading Andrei's book now. Any discrete math class is only a distraction. Read up on discrete math in parallel or if the need arises.