I guess that function-name : variable-name is used to access the variable of the function. Not sure if only parameters can be used this way.
b:u = a:x + 1;
This probably sets the u argument of function b to the value of x+1.
b:v = a:y + 2;
This sets the v argument of function b to the value of y+2.
It might not be possible to have recursive functions in this language because it looks like the function arguments are set globally (tail recursion could work).