JBFM7L

From Esolang
Jump to navigation Jump to search

JBFM7L - "Jitejix, But For Masohists 7th Level".

Almost the same concept of Jitejix, but some things got even weirder and there are less operations.

Now almost everything is based on linking.

Name thought up by R3D#9999 (Discord).

Extensions: .jm7l, .j7, none.

Concept

Only 256 cells, wrap around. Cell values 0-255, wrap around.

At beginning: all cells with the value of their index: [0,1,2,3,4,5,...254,255].

There is stack = 0, acts like a cell.

Can access stdout, not stdin.

Instructions

By "pointing" I mean the cell, which index is the value of current cell.

Command Action
+ increase, but increases the pointed cell
- the same with decrease
& swap the value of current cell with pointed one
/ add value of current cell to stack
\ copy value from stack to cell
* multiply stack with pointed cell and store the result in current cell
% restore the original value of current cell
? proof boolean of current cell and skip to next : if false
# proof boolean of stack
! print char
> move so much to the right as the value in stack
< same to left
@ move to pointed cell
~ decrease stack
$ jump to last ? or #

All other chars are ignored completely.

Hello World

"Hello World!\n" - example written in JBFM7L:

+//\/\//*@>>!
*@~~ ~~ ~~ ~>!
>~~ ~>!!
>+!
\/\/\/\/\@!
~~ ~~>~>!
~~ ~>!
+++@!
%-----@@!
~~<*!
**#~$://\@+!
~\/\/\/\~ ~~>>!

Interpreter

Currently an interpreter available for my language, written in python.

To use it, do:

$ python3 JBFM7L.py <filename>

External links