Burlesque
'The Burlesque Programming Language' as a stack-based, dynamic typed, concatenative, lazy and esoteric programming language developed by Roman Müntener since 2012. It was designed to write short and compact code for simple problems. The language specification does not specify I/O support but the official interpreter pushes stdin on program start and prints remaining elements on the stack on program termination. Other than that there are no I/O capabilities. Due to it being lazy it supports stuff like infinite lists (although the Burlesque term for list is block). It does not allow random stack access directly however methods have been found to achieve that. Since Version 1.7.0 there is a hidden state feature which allows to hide elements at the bottom of the stack and load it from there. Burlesque's main advantage is its rich set of builtins and implicit loops. (There is only a while loop, but functions like map/reduce/filter obviously loop over lists implicit. Therefore, while loops are rarely used). Burlesque is turing-complete.
A Brainfuck interpreter:
".""X"r~"-""\/^^{vvvv}c!!!-.256.%{vvvv}c!sa\/"r~"+""\/^^{vvvv}c!!!+.
256.%{vvvv}c!sa\/"r~"[""{"r~"]""}{\/^^{vvvv}c!!!}w!"r~">""+."r~"<""
-."r~"X""\/^^{vvvv}c!!!L[+]\/+]\/+]^^3\/.+1RAp^\/+]\/[-1RA^^-]\/[-\/
"r~"\'\'1 128r@{vv0}m[0"\/.+pse!vvvv<-sh
Links
Tasks
- 100 doors
- A+B
- Array concatenation
- Averages/Arithmetic mean
- Binary digits
- Calculating the value of e
- Comments
- Conditional structures
- Determine if a string is numeric
- Empty string
- Entropy
- Evaluate binomial coefficients
- Even or odd
- Execute Brainfuck
- Factorial
- Factors of an integer
- Fibonacci sequence
- Filter
- Find the missing permutation
- Flatten a list
- Generate lower case ASCII alphabet
- Generic swap
- Greatest element of a list
- Hello world!
- Hello world/Text
- Higher-order functions
- Identity matrix
- Increment a numerical string
- Integer comparison
- Integer sequence
- Interactive programming
- Leonardo numbers
- Matrix multiplication
- Matrix transposition
- Matrix-exponentiation operator
- Middle three digits
- Munching squares
- Ordered words
- Palindrome detection
- Pascal's triangle
- Pick random element
- Power set
- Primality by trial division
- Prime decomposition
- Quine
- Repeat a string
- Reverse a string
- Reverse words in a string
- Rot-13
- Run-length encoding
- Runtime evaluation
- Search a list
- Sequence of non-squares
- Shell one-liner
- Sort an integer array
- Sort using a custom comparator
- String case
- String comparison
- String concatenation
- Strip a set of characters from a string
- Strip whitespace from a string/Top and tail
- Substring
- Substring/Top and tail
- Zero to the zero power