Dagger Lang

Introduction

Main Documentation:


Working with Dagger
Dagger Values
User Input

Builtin Functions:


Lambda
Set
Put
List
Head
Tail
Eval
Join
Addition
Subtraction
Multiplication
Division
Modulo
Power
If
Equals
Not Equal
Greater Than
Less Than
Greater Than or Equal
Less Than or Equal
Read Integer
Read Decimal
Read String
Load
Error
Print

Builtin Lambda


The Lambda builtin function is used to create custom functions, optionally with a specified name, a certain number of arguments, and a return value.

Use



    (\ {optional_name arguments} {return value}) (optionally pass arguments)

Examples


The following is a function that adds twelve to a number:


    dagger> (\ {x} {+ 12 x}) 1
    13

We passed in 1 as an argument, and it returned 13. (12 + 1)

We can bind a symbol to a function to reuse it many times using "set":


    dagger> set {addtwelve} (\ {x} {+ 12 x}) 
    ()
    dagger> addtwelve 1
    13
    dagger> addtwelve 4
    16