Call a function: Difference between revisions

No edit summary
Line 2,394:
 
=={{header|M2000 Interpreter}}==
==Standard Call of Modules/Functions==
In M2000 we can use arrays, functions and subroutines with same name. Using @ we can direct interpreter to use function. Using Gosub we direct interpreter to call a subroutine. These happen at module/function level.
A Subroutine is code inside Modules/Functions where all definitions in module/function are visible. Modules and functions can call own modules/functions or global modules/functions. Functions can use recursion. Module with standard calling can't use recursion (need to use Call nameOfModule to call itself).
 
 
<lang M2000 Interpreter>
Line 2,425 ⟶ 2,428:
Call Void CheckIt()
Call Void Function Checkit
\\ subs are part of modules/functions (there are no global subs, but there is a way to share definitions modules from parent module).
Module CheckSub {
M=1
a(100) ' 400
a(100) ' 800
Module Child {
M=1
a(100) ' 400
a(100) ' 800
}
Child
Sub a(x)
b(x*4)
M++
End Sub
Sub b(x)
Print x*M
End Sub
}
CheckSub
 
</lang>
 
Line 2,477 ⟶ 2,501:
Print M=12
</lang>
 
 
=={{header|Maple}}==
Anonymous user