We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.

Befalse

From Esolang
Jump to navigation Jump to search

Befalse is an esoteric programming language created by Ian Osgood in 2005 and inspired by SNUSP and False. Like SNUSP, no letters were harmed in the making of this language.

Befalse combines the flow-control operators (/\?!) and call stack (:CALL ;RET) of SNUSP; the stack, math, and logic operators of False; and the mutable code space, numbers, and strings of Befunge (@GET =PUT). In addition, like Forth the call stack is accessible ({PUSH }POP), and there is a wimpmode for entering multi-digit numbers. The division operator is replaced by Forth's more flexible `DIVMOD. The stack operators are named $DUP, #DROP, and %SWAP, and False's @ROT is replaced by Forth's more useful ^OVER. Other stack operators can be constructed using the handy {PUSH and }POP operators.

Examples

Here is recursive code for printing an integer (!skip ?skip-if-zero `divmod $dup #drop .emit).

(1234!/55+`$?\\
      \   /!://
    ;.+*68/!#/

The interpreter below contains example programs for:

External resources