Contains all the material used as part of the functional programming Prodigious study group.
Felipe Triana Castañeda
- Carlos Oviedo
- Alejandro Triana
- Felipe Triana
- Book: Functional Programming in Scala by Paul Chiusano and Rúnar Bjarnason
- Course: Functional Programming Principles in Scala by Martin Odersky
- Book: Learn you a Haskell for Great Good!
- Course: Principles of Reactive Programming
- Training Room
Einstein Room, Preferible
- Tools & Materials
Intellij-Idea, Slack, ScreenHero, Git, Scala, Haskell
-
Start Date: August 20
-
Number of Sessions: 12 sessions
-
Hours per Session: 1:30 h
No | Name | Position |
---|---|---|
1 | Carlos Oviedo | Technical Architect |
2 | Alejandro Triana | Principal Software Engineer |
3 | Felipe Triana | Senior Software Engineer |
4 | Fabián López | Senior Software Engineer |
5 | Giussepe Cárdenas | Senior Software Engineer |
6 | Andrés Lievano | Senior Software Engineer |
7 | Diego Nieto | Senior Software Engineer |
8 | Javier Sándoval | Principal Software Engineer |
9 | Andrés Alzate | Principal Software Engineer |
10 | Julio Chaves | Principal Software Engineer |
11 | Victor Mejía | Principal Software Engineer |
12 | Alexander Herrera | Senior Software Engineer |
12 | Giovany Moreno | Senior Software Engineer |
13 | Daniel Moreno | Senior Software Engineer |
14 | Nikolai Tellez | Senior Software Engineer |
15 | John Cely | Senior Software Engineer |
No | Subject | Objective | Module | Assigned to |
---|---|---|---|---|
1 | What is functional programming? | Describe what is a pure function: referential transparency, purity, substitution model. | Introduction to functional programming | Fabián López |
2 | Basic concepts of functional programming | Higher order functions, currying, polymorphic functions and tail recursion | Introduction to functional programming | Javier Sandoval |
3 | Basic concepts of functional programming | Higher order functions, currying, polymorphic functions and tail recursion. Exercises | Introduction to functional programming | Andrés Alzate |
4 | Types | Functions as objects | Types and pattern matching | Carlos Oviedo |
5 | Pattern matching | Pattern matching | Types and pattern matching | Felipe Triana |
6 | Defining functional data structures | Functional data structures and data sharing | Functional data structures | Andrés Alzate |
7 | Defining functional data structures | List, pairs and tuples in a functional way | Functional data structures | Felipe Triana |
8 | Defining functional data structures | Recursion over list and generalizing to higher order functions | Functional data structures | Julio Chaves |
9 | Defining functional data structures | Recursion over list and generalizing to higher order functions | Functional data structures | Julio Chaves |
10 | Defining functional data structures | Recursion over list and generalizing to higher order functions | Functional data structures | Alejandro Triana |
11 | Side efects, Option and Either data type | Handling errors without exceptions | Handling errors | Carlos Oviedo |
12 | Strictness and Laziness | Strict and non-strict functions | Lazy structures | Alejandro Triana |
13 | Strictness and Laziness | Lazy list | Lazy structures | Victor Mejía |
14 | Summary class | All | All | Victor Mejía |