I don't think I had more fun and felt more control than when I was professionally programming in assembly language. The more I use high level languages the more I just want to step back and learn x86-64 assembler and put scoping and default allocation and language lawyers behind me. Of course there's nothing stopping me except myself really...