scala self-study 1