Fünke
Jump to navigation
Jump to search
Fünke, named after Tobias Fünke of Arrested Development, is an esoteric programming language made to be almost entirely function calls. There are very few basic functions:
Print: $(a) (Prints a) Basic math operators: +(a,b) -(a,b) etc... If statements: =(a,b,c,d...) (if a and b are equal, do c, d, etc...) >(a,b,c,d...) (same as above but with less than) <(a,b,c,d...) (same as above but with greater than) !(a,b,c,d...) (same as above but with not equal) Random #'s @(a,b) (Returns a random number between a and b)
Also, # is the input
Making programs in Fünke
Programs are mainly written as definitions of functions. For instance,
loop(a) = loop(a)
would keep looping. Similarly, you can make the loop do something. An example would be
loop(a) = loop(a),@(0,a)
which would generate random numbers less than a. You can also declare things inside of functions, such as
loop(a) = loop(a),a = @(0,a)
which keeps generating smaller numbers
Example Programs
Cat Program
$(#)
This just outputs the input
Fibonacci Generator
fib(a,b) = $(a),c = +(a,b),b = a,a = c loop(a,b) = fib(a,b),loop(a,b) loop(1,0)
Guess the Number
loop(a,b) = =(a,b,loop(a,b),run(a)) run(a) = >(#,a,$("Too big!")),<(#,a,$("Too small!")),=(#,a,$("You win!"),b = a,new()) new() = loop(@(0,100),-1),$("New Game!") new()