1. A method for language learning, comprising: generating text having at least one active region; displaying the text in a graphical user interface, wherein at least one active region comprises a key word or phrase; selecting at least one active region to display a menu of linguistic choices comprising at least one linguistically correct choice and at least one linguistically incorrect choice; selecting one of the linguistic choices; and providing an error message when at least one incorrect linguistic choice is selected.