Notes on D programming