Renderingla

clausura

Declares or explains an inline closure expression; compact ∴ syntax is preferred for new code.

Aliases: closure, lambda

Syntax: <type> <name> [→ <type>] [⇥ <error-type>] ∴ <expression|fac-block>

Category

function

Related

Examples

examples/corpus/clausura/clausura.fab (canonical · keyword)

Declares or explains an inline closure expression; compact ∴ syntax is preferred for new code.

# clausura — closure bodies with ∴ and ⇥
#
# GRAMMAR:
#   closureExpr :← paramList '∴' expr
#
# EXPECTED OUTPUT:
#   Scalar stdout smoke (see body).
#
# BACKEND:
#   Cross-ref: clausa/clausa.fab.
#

incipit {
    fixum _ dupla ← numerus x ∴ x * 2
    nota dupla(5)
    fixum _ summa ← (numerus a, numerus b) → numerus ∴ a + b
    nota summa(2, 3)
}

Expected output:

10
5