i like frog

From Esolang
Jump to navigation Jump to search
i like frog
Paradigm(s) {{{paradigms}}}
Designed by Asher I
Appeared in 2020
Memory system tape-based
Dimensions one-dimensional
Computational class Turing complete
Reference implementation Unimplemented
Influenced by Boolfuck
File extension(s) .ilf


Note that i like frog is typically lowercased except, often, at the start of a sentence.

I like frog was invented by User:Apollyon094 in 2020, as a joke on an image seen here.

I like frog is a set of 12 commands based on the following syntax to have them executed. Line breaks end commands and their parameters. Parameters are ternary numbers where "i " = ternary digit "0", "like " = ternary digit "1", "frog " = ternary digit "2"

Each line/command is started with one of 3 categories of commands, being "i ", "like " or "frog "

The following categories and their commands are as below:

i:

   like: Go forward X cells where X = the parameters. If no parameters, move forward one.
   frog: Go backwards X cells where X = the parameters. If no parameters, move backwards one.

like:

   i: Insert X in ternary into cells to the right of the pointer where X = parameters. If no parameters, take input from console.
   frog: Output X where X = parameters. If no parameters, output bit under pointer.

frog:

   i: Go forward X instructions if bit = 0 where X = parameters. If no parameters, flip bit (0 = 1, 1 = 0)
   like: Go back X instructions if bit = 0 where X = parameters. If no parameters, go back 1.

A (hopefully) easier-to-implement spinoff named "I like ternary" was made as ternary numbers instead of "i ", "like " and "frog ". Can be compressed into ASCII but would confuse the interpreter because of the possibility that the ternary converted to ASCII could result in newlines that would make the interpreter think it means a command has ended.

I like frog is Turing-Complete since it can compile to Boolfuck as well as Nanofuck and execute infinite loops

Examples

Hello, World!

This program prints out the words Hello World!:

like frog like frog i i i i frog frog i frog like frog i like frog frog frog i like i like like frog like like frog frog frog i i like like frog frog like like i frog i frog frog i i like like frog like i like like like frog frog i i like frog i i like like i frog i i

This simply outputs the parameters as a ternary number encoded in ISO-8859-1


Infinite loop

This program executes an infinite loop:

frog like

What this does it it goes back an instruction, which there is no instruction before it, so it goes to the last instruction which is it.