Functional Programming in Java
Functional Programming is a programming style that is different from the more well-known Structured Programming or Object-Oriented Programming style. Functional Programming relies exclusively on functions as first-class citizens, which means that they are treated like any other values, and they can be passed around as arguments or returned from other functions. Modern applications that involves highly concurrent computing on multicore machines face a big challenge with the machines' "state". All imperative languages, including object-oriented languages, involve multiple threads changing the shared state of objects. This is where deadlocks, stack traces, and low-level processor cache misses all take place. If there is no state, there is no problem. In this workshop, we will explore the principles of Functional Programming and how we can implement those concepts in Java so as to build massively parallel applications in the field of Big Data.
Pre-requisite: Knowledge of Java Programming
Date and Time
Location
Hosts
Registration
- Date: 26 Jul 2024
- Time: 01:00 PM to 04:00 PM
- All times are (UTC-06:00) Saskatchewan
- Add Event to Calendar
- University of Regina
- 3737 Wascana Parkway
- Regina, Saskatchewan
- Canada S4S 0A2
- Building: Education Building
- Room Number: ED 485.1
- Starts 16 July 2024 12:00 AM
- Ends 26 July 2024 12:00 AM
- All times are (UTC-06:00) Saskatchewan
- Admission fee ?
Speakers
Kin-Choong Yow of University of Regina
Biography:
Kin-Choong Yow obtained his B.Eng (Elect) with 1st Class Honours from the National University of Singapore in 1993, and his Ph.D. from Cambridge University, UK in 1998. He joined the University of Regina in September 2018, where he is presently a Professor in the Faculty of Engineering and Applied Science. Kin-Choong Yow’s research interest is in Artificial General Intelligence and Smart Environments. He has published over 100 top quality international journal and conference papers, and he has served as reviewer for a number of premier journals and conferences. He is the Editor-in-Chief of the Journal of Advances in Information Technology (JAIT), a Managing Editor of the International Journal of Information Technology (IntJIT), and a Guest Editor of MDPI Applied Sciences. He has been invited to give presentations at various scientific meetings and workshops, such as ACIRS in 2018, ICATME in 2021, CSEA 2023 and AIRC 2024.
Email:
Address:3737 Wascana Parkway, , Regina, Saskatchewan, Canada, S4S 0A2
Agenda
- What is Functional Programming?
- Implementing Function Programming Concepts with Java
· Introduction to lambda expressions
· Manipulating Collections
· Strings and Comparators
· Lazy Evaluation
· Tail-call Optimization
· Functional Composition
- Exercises