[invoke]

invoke is a core slot, one of the keywords of the Hyperlambda language, in Hyperlambda, the language of Magic Cloud. Invokes a lambda expression as a callable slot.

  • Value (lambda-object,lambda-tree), required: Expression yielding the single lambda node to invoke
  • Returns: Resolves to the invoked lambda’s value result and any returned child nodes

Arguments

Required arguments come first, then the optional ones in the order they are declared.

Argument Type Required Description
any node name object no Argument passed to the invoked lambda through its [.arguments] node. Can be repeated.

Guide: How to use [invoke]

JSON declaration

This is the complete declaration of invoke, as the running system describes it. It is also published as slot.json.

JSON declaration
{
  "name": "invoke",
  "description": "Invokes a lambda expression as a callable slot",
  "signature": {
    "input": {
      "kind": "lambda-object,lambda-tree",
      "description": "Expression yielding the single lambda node to invoke",
      "required": true,
      "mode": "Expression"
    },
    "children": {
      "*": {
        "type": "object",
        "kind": "value",
        "description": "Argument passed to the invoked lambda through its [.arguments] node",
        "required": false,
        "mode": "ValueOrExpression",
        "cardinality": "ZeroOrMore",
        "role": "Arguments",
        "projection": "ArgumentBag"
      }
    },
    "output": {
      "mode": "Both",
      "kind": "lambda-result",
      "description": "Resolves to the invoked lambda's value result and any returned child nodes"
    }
  }
}

← int2words all core slots join →