 Yeah, we are in lesson four Functions when Julia box. I've named my file functions of four. I've run my first Cell of code here. Just checking that the kernel is loaded just using plus two and two and it gives me four Everything is working Now let's take our first look at functions They are very powerful and they're mostly useful parts of code Now there are different ways of of creating functions There are different types of syntax to use and I'm just not going to use a generic one At the start here as many books do to show you, you know, how to construct or what is inside of a function I want us to organically learn What to do with the functions and what functions are? the first one that we are going to use is Does really look like a mathematical function You'll note here z or f of x and y equals x squared minus 3 y that's a mathematical function Two variables there two independent variables giving us a third Now instead of calling these variables, we're going to call them arguments Of course in in most computer languages in in Julia as well We're gonna call these x and y we call them arguments We can pass value to values to those arguments and depending on what we pass to it. We're gonna get different values So What are we going to get up to we're gonna certainly discuss this single expression functions That is the f of x that I showed you there f of x and y at least we're gonna look at multiple expression functions So those will be two different syntax ways of of of creating using Functions we're gonna talk about optional arguments. We're gonna talk about functions with a variable number of arguments Yeah, and if an x and y have got two arguments I'll show you how to do a lot more We're gonna pass arrays as function arguments because yeah with f of x and y I can pass two single values But I can pass arrays to those and get multiple answers back We're going to look at type parameters Then and look at another Syntax called stabby functions and some do blocks. We're gonna use functions as arguments I don't don't always just pass normal values string values numbers arrays etc as arguments we can also pass a function as an argument We're gonna look at nested functions functions inside of functions And then we're gonna get to the heart of the matter the heart of how Julia sees and works with functions And that's called multiple dispatch Then just for a bit of fun We'll look at some of the inbuilt functions and you'll see most of what we do with Julia Are just based on built-in functions already coded inside the base of Julia and then just for some more fun It's always good just to have a look at list comprehensions and even here in the function Lesson so first of all we're gonna start off within the next section with single expression expression functions And that will take that mathematical form