# Learn Scala from Scratch (Educative)

Strings and How to Use Them - An Introduction In this lesson, we will further explore strings in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gkjRMJNLl1j). Scala's Collection Library - foreach: A Collection Method In this lesson, you will be given a quick introduction to the foreach method. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk2WN5L26pl). Variables and Types - Solution Review: Type Casting In the following lesson, we will go over the solution of the challenge: Type Casting. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7XgqlPLLG1y). Getting Started with Functions - Defining a Function In this lesson, we will start our discussion on functions and learn how to define our very own function. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/x1QoDqVARPz). Variables and Types - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/collection/page/10370001/4974430444847104/5002516657864704). Getting Started with Functions - Evaluation Strategies In this lesson, we will be going over the evaluation strategy Scala uses to evaluate expressions. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/Bnm6PJoq8No). Variables and Types - Data Types In the following lesson, you will be introduced to Scala's type hierarchy. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g7916VZKOl3). Variables and Types - Solution Review: Declaring a Variable In the following lesson, we will go over the solution of the challenge: Declaring a Variable. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N0vgKqMnkw8). Variables and Types - Challenge: Type Casting Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/JYJ5yJv5Y02). Variables and Types - Strings and Other Literals In the following lesson, you will be introduced to literals. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7DO7LVAWWLO). Operating with Operators - A Brief Introduction to Methods and Functions In the following lesson, you will be given a very brief introduction on methods and functions. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N8K8VmYVXM2). Operating with Operators - Solution Review: Temperature Conversion In the following lesson, we will go over the solution for the challenge: Temperature Conversion. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RLwQv962vxO). Operating with Operators - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/xVQP0KvPkBq). Control Structures - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/xoYqG156Dnq). Getting Started with Functions - Learning by Example: Newton's Method In this lesson, you will learn how to calculate the square root of a number using Newton's Method. We will then go over its implementation in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/xVMrXGGpl4n). Operating with Operators - Assignment Operators In the following lesson, you will be introduced to assignment operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mEm94pVvW2r). Getting to Know Scala - A 'Scalable' Language In the following lesson, we will go over what makes Scala a scalable programming language. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mEjYnnmGvVG). Scala's Collection Library - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7npWD0PjBG8). Control Structures - Challenge: Oven is Ready! Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/collection/page/10370001/4974430444847104/6361035315347456). Control Structures - Solution Review: Color Wheel In the following lesson, we will go over the solution of the challenge: Color Wheel. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/NE90l9zlgZ6). Getting Started with Functions - Challenge: Absolute Value Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gxR4rzzAnBr). Getting Started with Functions - Solution Review: Absolute Value In the following lesson, we will go over the solution of the challenge: Absolute Value. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gkNyJ4WLqY3). Getting Started with Functions - Quiz: CBV or CBN? In this lesson, we will take quick quiz to better understand CBV and CBN. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N8l8PJZp0Bm). Getting Started with Functions - Blocks In this lesson, you will be introduced to blocks and learn how to set the scope of a program. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mypL8VBZJ4r). Higher-Order Functions - Currying In this lesson you will be introduced to a method of writing functions with multiple parameter lists. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m2R624KY5vG). Getting Started with Functions - Challenge: Max with Nested Functions Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qVQogjym5X0). Getting Started with Functions - Tail Recursion In this lesson, you will be introduced to Scala's preferred form of recursion: tail recursion. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RM7OApo71vO). Higher-Order Functions - Summation with Higher-Order Functions In this lesson, we will go over a practical example of higher-order functions and see a higher-order function in action. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N7nWzGQZZy6). Higher-Order Functions - Challenge: Write your First Higher-Order Function Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qVV06x1O903). Control Structures - Decide with if In this lesson, we will go over how to use the `if` expression. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qAglvo7lG47). Higher-Order Functions - Solution Review: Using a Curried Function In the following lesson, we will go over the solution of the challenge: Using a Curried Function. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk0848yonvG). Variables and Types - Variables in Scala In the following lesson, you will be introduced to variables and how they are declared in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/JPLplV7W9wy). Higher-Order Functions - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/3Y8BjR9BoLn). Getting Started with Functions - Solution Review: Max with Nested Functions In the following lesson, we will go over the solution of the challenge: Max with Nested Functions. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qZPzqnrYg6y). Getting to Know Scala - Who's Using Scala? In the following lesson, we will go over Scala's prominence in the industry. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YMRL3VNvYYp). Classes and Objects - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/collection/page/10370001/4974430444847104/6218297479528448). Variables and Types - Printing in Scala In the following lesson, you will be introduced to Scala's Hello World program and learn about Scala's different printing methods. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qANRG22gG47). Control Structures - Iterate with for In this lesson, you will be introduced to the for expression. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7AwLgVoKK2j). Conclusion - Where to Go from Here In this lesson, we will conclude our course. View the lesson [here](https://www.educative.io/collection/page/10370001/4974430444847104/5056128150929408). Control Structures - Control Structures in Scala In the following lesson, you will be introduced to control structures. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YQowWGZgWx2). Higher-Order Functions - What are Higher-Order Functions? In this lesson, you will be introduced to higher-order functions and learn their syntax. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B8Lzp5Mgy8k). Higher-Order Functions - Solution Review: Write Your First Higher-Order Function In the following lesson, we will go over the solution of the challenge: Write Your First Higher-Order Function. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1vk1Ax59qQ). Higher-Order Functions - Summation with Currying In this lesson, we will rewrite our sum function using the currying method. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RLR40xwK1WO). Scala's Collection Library - An Introduction to the Collection Library In the following lesson, you will be introduced to Scala's collection library. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/3YnY4BGXNox). Scala's Collection Library - Challenge: Appending an Element to a List Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/NEvB6wX0D78). Variables and Types - Type Inference In the following lesson, you will be introduced to type inference and learn about Scala's ability to infer data types. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1kwWNBygYo). Strings and How to Use Them - Solution Review: Formatting Strings In the following lesson, we will go over the solution of the challenge: Formatting Strings. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N7VR6Yq0gEL). Scala's Collection Library - Challenge: Array of Integers Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1BplVD4yNo). Getting to Know Scala - Who Should Take this Course Here, we outline the intended audience for this course. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qAoLO5npEj2). Operating with Operators - Bitwise Operators In the following lesson, you will be introduced to bitwise operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qZWQ8roG7pR). Control Structures - Solution Review: Oven is Ready! In the following lesson, we will go over the solution of the challenge: Oven is Ready! View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/JPn8RMlw3oK). Operating with Operators - Operator Precedence In the following lesson, you will be introduced to which operators in Scala hold precedence over others. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g201WmJ1jyG). Getting Started with Functions - Solution Review: Tail Recursion In the following lesson, we will go over the solution of the challenge: Tail Recursion. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk8Vzrx3M4l). Scala's Collection Library - ArrayBuffers In the following lesson, you will learn about ArrayBuffers and how they differ from ordinary arrays. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m2DxpyZYm8n). Control Structures - Challenge: Color Wheel Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/JE4gk8ynYZ9). Control Structures - Pattern Matching with Match In this lesson, you will learn about pattern matching and how it is implemented using the `match` control structure. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B6mAN0pwYAJ). Higher-Order Functions - Functions Returning Functions We know that in Scala, functions can return other function. In this lesson we will explore how that is. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qZ6K3n1nk67). Getting Started with Functions - Solution Review: Sum of Lists In the following lesson, we will go over the solution of the challenge: Sum of Lists. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/BnvWDw31GGk). Higher-Order Functions - Solution Review: Anonymous Functions In the following lesson, we will go over the solution of the challenge: Anonymous Functions. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qAgoAZEAnEk). Scala's Collection Library - Working with Lists Lists are probably the most common data structure used in Scala. In the following lesson, you will learn how to create a List. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m2qOlpJ5A93). Operating with Operators - Challenge: Using Multiple Operators Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/R8JGWkgOQWE). Variables and Types - Type Casting in Scala In the following lesson, you will be introduced to type casting and learn how to change the data type of a variable. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7X5yYEVypLr). Scala's Collection Library - Solution Review: Array of Integers In the following lesson, we will go over the solution of the challenge: Array of Integers View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RLBEDx7zEZw). Control Structures - Challenge: Array of Squares Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/3jPgD6gmPPx). Control Structures - Challenge: Pass or Fail Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1kB8J6kKgn). Classes and Objects - Objects of a Class In this lesson, you will create your first object of a class and learn how to set its fields and call its methods. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/NEv7kz1pQKK). Scala's Collection Library - Creating a Range of Numbers In this lesson, you will learn how to create a range of numbers using `Range`. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RL2ZVk9A49L). Scala's Collection Library - The Array Collection In the following lesson, you will learn how to use arrays in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/R8pxWPnw0x0). Scala's Collection Library - Getting Started with Vectors In the following lesson, you will be introduced to Vectors. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B8XrWMEOvEJ). Strings and How to Use Them - Testing String Equality In the following lesson, you will learn how to compare strings in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/Y52vv4JYGDO). Control Structures - Exception Handling with try This lesson introduces the try control structure and teaches you how it can be used for exception handling. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/R8910LY0OKY). Classes and Objects - Learning by Example: checksum In this lesson, you will learn how to generate the checksum of a string. Control Structures - Loop with while In this lesson, you will be introduced to the while loop and learn how it is different from the other control structures. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/Y511x6o8Dw0). Classes and Objects - Creating an Object Using Constructor Parameters In this lesson, we will look at another way of creating an object class and learn about constructors. Higher-Order Functions - Anonymous Functions In this lesson, you will be introduced to anonymous functions and learn their syntax. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N8RwVYGvYE2). Scala's Collection Library - LazyList: A Lazy Version of List In this lesson, you will be introduced to LazyLists; the lazy version of Lists. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m2zAR45j5xA). Classes and Objects - Singleton Objects: Standalone In this lesson, you will learn how to write a singleton standalone object. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g7kWkNEO3A6). Higher-Order Functions - Expanding a Multiple Parameter List In the following lesson, we will expand a multiple parameter list to see how a function with a multiple parameter list is executed. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g7AXyKDKZ93). Scala's Collection Library - Solution Review: Appending an Element to a List In the following lesson, we will go over the solution of the challenge: Appending an Element to a List View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/q2lJwx6RORp). Control Structures - Optimizing an if Program In this lesson, we will learn how to use Scala's features to optimize a program using an if expression. You will also be introduced to the else expression. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/xloB0X5gVpP). Control Structures - Solution Review: Array of Squares In the following lesson, we will go over the solution of the challenge: Array of Squares. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YQvy7643ZEW). Control Structures - Solution Review: Pass or Fail In the following lesson, we will go over the solution of the challenge: Pass or Fail View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/Y5AgKJOPKEn). Higher-Order Functions - Challenge: Using a Curried Function Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YMB1Rm8yG2Y). Classes and Objects - Creating a Class in Scala In this lesson, we will start working with object-oriented programming and you will learn how to create your own class in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YMVn2ZR2V80). Scala's Collection Library - A Brief Introduction to Objects and Classes In the following lesson, you will be given a very brief introduction to objects and classes. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qZ5oQLQ8yrp). Classes and Objects - Singleton Objects: Companion In this lesson, you will be introduced to singleton objects and learn how to write a singleton companion object. Strings and How to Use Them - Creating Multiline Strings In the following lesson, you will learn how to create multiline strings in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/JYKAgP432nP). Strings and How to Use Them - Finding Patterns in Strings In the following lesson, you will be introduced to regular expressions and learn how to find patterns in a string in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk1mVQD4NN9). Strings and How to Use Them - Replacing Patterns in Strings In the following lesson, you will learn how to replace patterns in a string. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m7g2XlZ70N9). Strings and How to Use Them - Challenge: Formatting Strings Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m7D7ljRLJVp). Strings and How to Use Them - Solution Review: Embed a Variable in a String In the following lesson, we will go over the solution of the challenge: Embed a Variable in a String. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk7vljXvYlD). Strings and How to Use Them - Solution Review: Searching a String In the following lesson, we will go over the solution of the challenge: Searching a String. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/q28BEyz4wzD). Variables and Types - Challenge: Declaring a Variable Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/Y5jVXM7Y8J9). Strings and How to Use Them - Challenge: Embed a Variable in a String Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m72RmqV02qn). Strings and How to Use Them - String Interpolation with 'f' In the following lesson, you will be introduced to the 'f' string interpolator. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/qVZJ0ngj1DR). Strings and How to Use Them - Methods for Comparing Strings In the following lesson, you will be introduced to the different methods provided by Scala for comparing strings. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/YMYrYQJWoV9). Strings and How to Use Them - Splitting Strings In the following lesson, you will learn how to split strings in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gk28zQX7GlD). Strings and How to Use Them - String Interpolation with 's' In the following lesson, you will be introduced to the 's' string interpolator. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7AE6993n0Yw). Strings and How to Use Them - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m2xKp2OpZnR). Strings and How to Use Them - String Interpolation with 'raw' In the following lesson, you will be introduced to the 'raw' string interpolator. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/myWJRNvyzBn). Strings and How to Use Them - Challenge: Searching a String Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mEL0EMvw6LA). Getting Started with Functions - Challenge: Sum of Lists Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m7N9OygQj79). Getting Started with Functions - Code Termination In this lesson, we will learn how some expressions might terminate under CBN, but not under CBV. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RM5M0o1pYgR). Getting Started with Functions - Chapter Quiz In the following quiz, you will be tested on concepts you learned in this chapter. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/x1Z0PJLMprq). Getting Started with Functions - Lexical Scope In this lesson, you will learn about lexical scoping and how it can be used to remove redundancies in your code. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mEqR8LM3LLA). Variables and Types - Immutable Variables In the following lesson, you will learn how to declare an immutable variable. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g7WVxyJj0G3). Variables and Types - Mutable Variables In the following lesson, you will learn how to declare a mutable variable. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m75lgOJkwvp). Getting to Know Scala - Scala: A History In this lesson, you will be introduced to the Scala programming language and its multiple paradigms. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/39BnN6DMZxr). Operating with Operators - Arithmetic Operators In the following lesson, you will be introduced to arithmetic operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/g73Knk3JQYD). Control Structures - Types of Patterns In this lesson, you will be given a brief introduction to the different types of patterns you can work with in pattern matching. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7nKGjZYn2Dj). Getting to Know Scala - A Featurette: Scala Features In the following lesson, you will be introduced to some of Scala's main features. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1GBLzw45jx). Operating with Operators - Logical Operators In the following lesson, you will be introduced to logical operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/RL4YKmAkzEK). Higher-Order Functions - Challenge: Anonymous Functions Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/gknx8lVL279). Getting Started with Functions - Recursive Functions In this lesson, you will be given a brief introduction to recursion and go over how recursion is implemented in Scala. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/xovZrrJL0Ez). Higher-Order Functions - Summation with Anonymous Functions In this lesson, we will see a practical example of anonymous functions and see how they allow you to write concise code. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/mykRM9PwryG). Operating with Operators - Solution Review: Using Multiple Operators In the following lesson, we will go over the solution of the challenge: Using Multiple Operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/R8xVqDR79nL). Operating with Operators - An Introduction to Operators In the following lesson, you will be given an overview of the operators Scala provides. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/B1XMBkqX4jY). Getting Started with Functions - Challenge: Tail Recursion Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/N8ODJw5lXzD). Operating with Operators - Relational Operators In the following lesson, you will be introduced to relational operators. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/7DgrJW4PRXr). Higher-Order Functions - Learning by Example: Summation In this lesson, we will write a summation program using the methods we have learned so far. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/m7E0Ox1xmL9). Operating with Operators - Challenge: Temperature Conversion Test yourself and implement what you have learned so far in this challenge. View the lesson [here](https://www.educative.io/courses/learn-scala-from-scratch/q2MwG2mKXLG).