Diffusion Language Model From Scratch