Nested function call: Difference between revisions
No edit summary |
No edit summary |
||
Line 7: | Line 7: | ||
In fact what happens is: | In fact what happens is: | ||
* baz() gets called, and it's output * | * baz() gets called, and it's output * is used as input to: | ||
* bar( * ) which gets call, and it's output ** sent as input to: | * bar( * ) which gets call, and it's output ** sent as input to: | ||
* foo ( ** ) | * foo ( ** ) |
Revision as of 06:59, 15 May 2020
A convention used in many programming languages (python, javascript, C, liquidsoap)
When you see:
foo(bar(baz()))
In fact what happens is:
- baz() gets called, and it's output * is used as input to:
- bar( * ) which gets call, and it's output ** sent as input to:
- foo ( ** )
Using temporary variables, the whole process could also be written:
x = baz() y = bar(x) z = foo(y)
But since it's more compact, programmers tend to write:
result = foo(bar(baz()))
Which often is more readable since you use less variable names, thus reducing cognitive overload.