Computer assisted language learning uses technology like computers and the internet to help students learn languages. The teacher's role is to facilitate and guide student learning by encouraging dialogue and helping students integrate technology. Students play a key role by interacting with peers and using computer resources to build knowledge through discussion and decision making. Technology acts as a mediator between students and learning by allowing students freedom to use computers as a tool to learn and select materials according to tasks.