Action symbol

From Esolang
Jump to navigation Jump to search
This article is not detailed enough and needs to be expanded. Please help us by adding some more information.

Action symbol is a simple Matrioshka language based on the danish word for ". it was created by User:Yayimhere.

how it works

the program has two types of syntax:

x[y](z) will create and operator x with input y, that will return the result of expression z. z must hold at least one "
x!y apply x operator to y
"x evaluate x. normally an expression is not evaluated unless its NEEDED. " will not need to be itself evaluated
»x« when x is evaluated do it separately from the rest of the expression(basically brackets in normal expressions)

programs are also when evaluated lazily and left to right.

relation to Lambda calculus

in a version of lambda calculus where first of all variables can be defined and also a expression is only evaluated when it would be passed to a function:

{x[y](z)} -> x = \y.{z}
{"x} -> (\y.y) {x}
{x!y} -> {x} {y}
{»x«} -> ({x})

where {...} converts ... to this lambda calculus

examples

w[x]("»x!x«)
o[x]("»w!w«)

o is now the omega combinator

j[y]("x)
k[x]("j)

k is now k from SKI combinator calculus