Go to the first, previous, next, last section, table of contents.


assembleCalla

Function: assembleCalla { arity asm -> }
file: job.t
package: muf
status: alpha

The assembleCalla prim is used to compile a call to a function which will be passed at runtime, and which is expected to have a given arity: The runtime call will pop a compiledFunction off the stack, check that the arity is as expected, and then issue the call.

Here's a hand-assembly of

:   f2 { $ $ $ -> $ } -> fn 
    fn call{ $ $ -> $ }
;

as an example:

makeAssembler --> *asm*
stack:
*asm* reset
stack:
0 2 0 1 arityNormal implodeArity *asm* assembleCalla
stack:
nil -1 makeFunction *asm* finishAssembly --> #'f2 ( Compile fn 'f2' )
stack:
3.4 4.5 #'* f2 ( Invoke function )
stack: 15.2998


Go to the first, previous, next, last section, table of contents.