Product Documentation
Cadence SKILL Language Reference
Product Version IC23.1, November 2023

declareNLambda

declareNLambda( 
s_name1 ... s_nameN 
) 
=> s_nameN

Description

Tells the evaluator that certain (forward referenced) functions are of nlambda type (as opposed to lambdas or macros).

Declares s_name1 ... s_nameN as nprocedures (nlambdas) to be defined later. This is much like C’s “extern” declarations. Because the calling sequence for nlambdas is different from that of lambdas, the evaluator needs to know the function type in order to generate more efficient code. Without the declarations, the evaluator can still handle things properly, but with some performance penalty. The result of evaluating this form is the last name given (in addition to the side-effects to the evaluator).

Arguments

s_name1

One or more function names.

Value Returned

s_nameN

The last name in the arguments.

Examples

declareNLambda(nfun1 nfun2 nfun3) 
=> nfun3

Related Topics

Function and Program Structure


Return to top
 ⠀
X