This document discusses computer assisted learning (CAL) and its uses and types. It defines CAL as learning through computers using subject-specific learning materials. It describes three main types of CAL: Logo, simulation, and controlled learning. Logo uses simple programming tasks to teach programming languages. Simulation allows symbolic experimentation. Controlled learning uses branching programs for instructional sequences. The document outlines several computer programs that can assist with writing, such as word prediction, speech-to-text, text-to-speech, and spellcheckers. It also discusses the roles of teachers and experts in CAL and the advantages and disadvantages of CAL approaches.