Call a function: Difference between revisions
Content added Content deleted
(Nimrod -> Nim) |
(Added an ALGOL 68 header and examples.) |
||
Line 66: | Line 66: | ||
Named := H(Int => A, Fun => F'Access); |
Named := H(Int => A, Fun => F'Access); |
||
Mixed := H(A, Fun=>F'Access); </lang> |
Mixed := H(A, Fun=>F'Access); </lang> |
||
=={{header|ALGOL 68}}== |
|||
<lang algol68># A function without arguments: # |
|||
f(); |
|||
# A function with a fixed number of arguments: # |
|||
f(1, x); |
|||
# ALGOL 68 does not support optional arguments, variable numbers of arguments, or named arguments. # |
|||
# In "Talk:Call a function" a statement context is explained as "The function is used as an instruction (with a void context), |
|||
rather than used within an expression." Based on that, both ALGOL examples above are already in a statement context. |
|||
For full ALGOL compatibility, though, they should be in the form "VOID (f ());" # |
|||
# A function's return value being used: # |
|||
x := f(y); |
|||
# There is no distinction between built-in functions and user-defined functions. # |
|||
# A subroutine is simply a function that returns VOID. # |
|||
# If the function is declared with argument(s) of mode REF MODE, then those arguments are being passed by reference. #</lang> |
|||
See [http://rosettacode.org/wiki/First-class_functions#ALGOL_68 First-Class Functions] for an example of first-class functions in ALGOL 68. |
|||
See [http://rosettacode.org/wiki/Partial_function_application#ALGOL_68 Partial Function Application] for an example of partial function application in ALGOL 68. |
|||
=={{header|AutoHotkey}}== |
=={{header|AutoHotkey}}== |