Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Brainfunk

Brainfuck optimizing interpreter and compiler. Aims to support all extensions/variations of the language.

Available features up-to-date:

  • Debug mode with stepping and tape manipulation
  • Variable cell size( each can be 1, 2, 4 or 8 bytes long )
  • Variable cell amount( anything from 1 to over 2 billion )
  • Option to wrap the pointer between bounds
  • Option to have dynamic tape length( ignores pointer wrap )
  • Option to compile instead of run, if possible
  • Optional memory initialization, data file
  • Action on EOF is configurable( -1, 0, nop or abort )
  • Option to read code from standard input

Supported languages up-to-date:

  • Brainfuck
  • Extended Brainfuck
    • Type I
    • Type II
    • Type III
  • BCDFuck
  • Bitchanger
  • Brainfuck^
  • Brainfuck$
  • Brainloller
  • Extended Brainloller
  • Brainlove
  • Brainstuck
  • CompressedFuck
  • JumpFuck
  • Self-modifying Brainfuck
  • Stacked Brainfuck
  • Drawfuck

Libraries and programs required for compilation:

  • png++ 0.2.5 or later( and as an extension, libpng 1.2.x )
  • g++( any with decent C++11 support )
  • GNU Make( any decently recent version )

Programs required for running:

  • gcc( any decently recent version )

Copyright (C) 2017-2019, GReaperEx(Marios F.)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 only.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

About

Brainfuck extensible interpreter and compiler. Aims to support all extensions/variations of the language.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages