awib

From Esolang
Jump to navigation Jump to search

awib (Also Written In Brainfuck) is a compiler for the brainfuck language, written in brainfuck by Mats Linander.

awib can generate C, Go, Java, Ruby or Tcl source code, or i386 Linux ELF executables. It is an optimizing compiler, turning strings of + or - commands into single instructions. The binaries produced by awib have been said to work with FreeBSD's Linux compatibility layer.

Programs compiled with awib use wrapping 8-bit cells, and the , command does not change the current cell if EOF is read. However, awib itself has been tested on brainfuck implementations with 8-bit or 32-bit cells, and with , returning 0, -1, or no change on EOF.

awib is also polyglot in C, Tcl and bash.

External resources