Functional Reactive Programming Using Elm

Leondra Morse*

Department of Computer and Information Science

University of Pennsylvania, Philadelphia, PA 19104

DREU Computing Research Association Program

Project Faculty Adviser: Dr. Stephanie Weirich

Summer 2015

Functional Programming is a programming paradigm. A style of building elements and structure of computer programs. This will treat computation as the evaluation of mathematical functions and will avoid changing-state and mutable data. Functional Reactive Programming is a programming paradigm for asynchronous data-flow using the building blocks of functional programming such as map, filter, reduce, etc. In the field of computer science, we are especially interested in forming uncomplicated and simple approaches in order to simplify a series of actions or steps taken to achieve a finish product. These procedures provide a collection of processes in the development and construction of algorithms. This will enable clarity, understanding, simplicity, and elegance to the knowledge in comprehending codes of various languages from different authors and editors. Functional style is different to current promoted languages such as Java, C++, C, and Visual Basic. Software engineers are always looking for the next best step to a concise, abstracted manner of coding. My goal in this research project is to learn, understand, and comprehend functional reactive programming. I will use the Elm language to design and develop different programs in order to create and run applications in this programming paradigm.