status:
step:

Unlambda Code

User Input

Output

Current Variable

Unlambda is small functional language consists of only 11 primitive functions (`s k i v c d .X e @ ?X |`

) and Apply operator (```

).
Visit Unlambda Author's site to learn details of language specification.
This interpreter code is available on github.
Adventure on the "sample" code is the world biggest Unlambda program, written by irori.

````sXYZ` |
```XZ`YZ` |
---|---|

```kXY` |
`X` |

``iX` |
`X` |

``vX` |
`v` |

``cX` |
``X<cont>` (`<cont>` is current continuation. when ``<cont>Y` is evaluated, the program continues as if ``cX` returns `Y` .) |

```dXY` |
``XY` (but evaluate `Y` first, then `X` ) |

``.XY` |
`Y` (and output `X` ) |

``eX` |
Program exits with code `X` . |

``@X` |
``Xi` iff successfully read a character from STDIN and set it as current character. Otherwise ``Xv` |

``?XY` |
``Yi` iff last application of `@` sucessfully set current character to `X` . Otherwise ``Yv` |

``|X` |
``X.Y` iff last application of `@` successfully set current character to `Y` . Otherwise ``Xv` |