I felt my fundamentals were lacking so I've been working my way through SICP and it has been illuminating. However, realistically I expect to wind up working in c++ or java, which I loosely understand is a rather different paradigm. What do I need to understand about the differences? Or should SICP adequately prepare me, even if I'll miss some features?