The good life

It’s amazing just how easy programming is nowadays. For the past 2 years-ish I’ve been working almost exclusively in C# and I forgot quite how much of a pain it can be when you have to code in C++ for a while. You have to remember all these little things like include paths, linking options, DLLHell (although I must admit the embedded manifest for requesting a version of the runtime is pretty neat) and compiler options.

You have to drop back a few steps to realise how far you have progressed. OK when I moved from C++ to C# there were a few features I missed like multiple inheritance and templates. OK you can work around multiple inheritance and you can argue that it’s poor design if you need to use it, but I liked it and missed it on occasion. Templates however were a serious shortcoming and Microsoft at least recognised that and (praise appropriate deity of your choice) they fixed that with C# 2.

As I was saying though when you go back you realise what a painful world you used to live in. I’m having to look up compiler options, cross-compiling, even resorting to various shades of assembler when I really want things to work exactly as I need them to. This is what programming should do, make your life easier and you can tell that Microsoft have succeeded in that effort with C#, so bravo Microsoft. It’s a brave new world and just pray you never have to go back to C++ ever again.

P.S. Does anybody have any idea why the op code pushad doesn’t seem to work in my __asm block?