Brainfuck lang but shittier (ongoing proj.)
$ make yake
$ ./yake "++.<<."
2
8
Storing
./yake "++.@@.<.@+@.&-&.&+&."
visual output
&v : 2 | 0x6000005c9260 -> 0
&v : 2 | 0x6000005c9260 -> 2
&v : 4 | 0x6000005c9260 -> 2
&v : 4 | 0x6000005c9264 -> 4
&v : 2 | 0x6000005c9260 -> 2
Arithmetic (Boolean) operations
./yake"+@@.<<.@+@.&-.%+."
visual output
&v : 1 | 0x6000032cd260 -> 1 | m = 0
&v : 4 | 0x6000032cd260 -> 1 | m = 0
&v : 4 | 0x6000032cd264 -> 4 | m = 0
&v : 4 | 0x6000032cd260 -> 1 | m = 1
&v : 5 | 0x6000032cd260 -> 1 | m = 0
Explanation
![Screenshot 2024-01-06 at 10 09 19 PM](https://private-user-images.githubusercontent.com/91192289/294702705-4384f71d-1a19-45c3-9cc4-b6e8e6f13d83.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIzODQ5NDksIm5iZiI6MTcyMjM4NDY0OSwicGF0aCI6Ii85MTE5MjI4OS8yOTQ3MDI3MDUtNDM4NGY3MWQtMWExOS00NWMzLTljYzQtYjZlOGU2ZjEzZDgzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MzElMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzMxVDAwMTA0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTYzZTNmOGIyMWQwYzM4N2M3ZWJhYmQ1YTE5Mjk1NTczZTgzNmE4ZmMxMDI4ZjhjZmIwM2U4OGFjYTcwMGEzMDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.qkHr75hFhEWu40U89fVXOPIuPyxTCmZ4igqwotA02RQ)
Wanna print a string, well time to learn your asciis
$ ./yake "+<<<<<<++++++++@@+@+@>---@+@&--&>>>>-:"
HI!
Operations
Starting value : 0
sym | opr description |
---|---|
+ | Increment |
- | Decrement |
< | Left Shift |
> | Right Shift |
Methods
sym | meothod description |
---|---|
. | Display current value (equ. fxn is printf) |
& | Move pointer and get value |
@ | Move pointer and store value |
% | % followed by + or - adds the current pointer address value to v |
: | Print out letters for range v ...yeah the same v you have been using upto now |