Partial Functions in Practice

Now that we have learned a lot about functions and pattern matching, let's apply our theoretical knowledge to practical programming.

Let's get our chatbot, which we developed during the previous chapter, and change the modes to partial functions instead of classes.

Note

Open /Lesson 3/5-project in the supplement materials and import the project into the IDE.

Representing ChatbotMode as a Partial Function

Let's navigate to the scala file package in com.packt.courseware.l4:

package com.packt.courseware.l4

package object modes {
  type ChatbotMode = PartialFunction[(String,EffectsProvider),Processed]

     …
}

Here, we see the package object, which was not mentioned previously in our chapters.

The package object is an object which ...

Get Professional Scala now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.