Bifus

From Esolang
Jump to navigation Jump to search

Bifus is an esoteric programming language made by User:Hexahedron1 and is essentially Brainfuck, where 1 character is 2 instructions.

Name

Bushes hid the facts.

Conversion

To convert Brainfuck to Bifus, follow these steps:

  1. Pick 2 adjacent instructions, for example +>
  2. Convert them using the table from TheLang, in this case 2 and 1
  3. Convert the numbers to binary and join them (10001 or 17 in decimal)
  4. Pick the character in the lookup string at the position of the number (/)

Ending

If the number of instructions is odd, the last character should be encoded by itself (eg. . becomes $) and ъ is inserted at the end.

Lookup string

!@#$%^&*()-_=+\|/?<>,.0123456789abcdefghijklmnopqrstuvwxyz[]<>'"

Examples

Hello world

<<<<r<<r<-<-<-!!9--_)0*$z=_5c<<<e<,)a6%<,555d5556),-,

Brainfuck source:

++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.

Adding two values

The code that adds the current cell to the next looks like this:

t-*

Brainfuck source:

[->+<]

Rot13

708)<<r<<<<$y/8--_r)yw-$z-|!!$")\9?5tq3t"ys<<<<</r8-)zsq?9-)y!!9)q?9\82&9)y&!3_z|!q#)9ytyg9$k*ъ

Brainfuck source:

-,+[-[>>++++[>++++++++<-]<+<-[>+>+>-[>>>]<[[>+<-]>>+>]<<<<<-]]>>>[-]+>--[-[<->[-]]]<[++++++++++++<[>-[>+>>]>[+[<+>-]>+>>]<<<<<-]>>[<+>-]>[-[-<<[-]>>]<<[<<->>-]>>]<<[<<+>>-]]<[-]<.[-]<-,+]

See also