Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 285)
Detail práce
   Přihlásit přes CAS
Language and Run-time Environment for Learning Functional Programming
Název práce v češtině: Jazyk a běhové prostředí na výuku funkcionálního programování
Název v anglickém jazyce: Language and Run-time Environment for Learning Functional Programming
Akademický rok vypsání: 2018/2019
Typ práce: diplomová práce
Jazyk práce: angličtina
Ústav: Katedra distribuovaných a spolehlivých systémů (32-KDSS)
Vedoucí / školitel: RNDr. Pavel Parízek, Ph.D.
Řešitel:
Zásady pro vypracování
Several recent initiatives aim to promote education oriented towards algorithmic thinking and writing simple programs. However, most existing systems and platforms for learning how to write computer programs, including Scratch and Khan Academy, use imperative programming languages. Even the languages based on a graphical notation of some kind are inherently imperative. An interesting question is whether programming in a functional style may be more intuitive and easier to learn for beginners and children.

The goal of this work is to explore possible approaches to teaching functional programming, and create a usable system that would consist of a language definition and a run-time environment. The list of desired features includes lazy evaluation, stream-like collections and related operations (map-reduce, filters), and other basic constructs that appear in mainstream functional languages (e.g., Haskell). In addition, the candidate should investigate whether the system can be successfully implemented in a Language Workbench such as MPS.
Seznam odborné literatury
1. Scratch. http://scratch.mit.edu/
2. Khan Academy. https://www.khanacademy.org/
3. MPS. http://www.jetbrains.com/mps/
4. The Haskell language. https://www.haskell.org/
 
Univerzita Karlova | Informační systém UK