TACC

From Esolang
Jump to navigation Jump to search

TACC is an esolang by User:ChuckEsoteric08 which is mix of Uppercase=Lowercase and Sreg.

Specification

TACC uses Tape and Accumulator to store values. Cell indexes start with 1. CP is cell pointer.

:X - set CP to X
> - set CP to accumulator
< - set accumulator to cell pointed by CP
^ - set cell pointed by CP to accumulator
+X - increment accumulator by X
-X - decrement accumulator by X if result was negative set cell to 0
!X - skip next command if accumulator is not X
" - output accumulator as ASCII character
; - set accumulator to ASCII value of input
[X - declare label X
]X - goto label X

Examples

Cat

[a
;
"
]a

Truth-Machine

This program's compass embraces a truth-machine:

;
[print
"
!49
]print

ASCII Characters Printer

Deploy this program in order to print all ASCII character by ascending order of their codes:

[repeat
"
+1
!256
]terminate
]repeat
[terminate

Hello, World!

This program harnesses the communicative warklumes betwixt the tape and the accumulator in order to print the message “Hello, World!”:

:1 +72 ^
:2 +29 ^
:3 +7  ^
:4     ^
:5 +3  ^
:6 -67 ^
:7 -12 ^
:8 +55 ^
:9 +24 ^
:10 +3 ^
:11 -6 ^
:12 -8 ^
:13 -67 ^
-32
:14
^
[repeat
>
<
"
:14
<
+1
^
!14
]end
]repeat
[end

brainfuck interpreter

Program and input are seprated by !

+3
^
[input
:1
<
+1
>
;
^
!33
]endinp
]input
[endinp
:1
<
+2
:2
^
:1
[dectozero
<
-1
^
!0
]set3
]dectozero
[set3
+3
^
>
[interpret
:1
<
+1
^
>
!43
]+
!45
]-
!44
],
!46
].
!60
]<
!62
]>
!91
][
!93
][
]interpret
[+
:2
<
>
<
+1
^
]interpret
[-
:2
<
>
<
-1
^
]interpret
[>
:2
<
-1
^
]interpret
[<
:2
<
-1
^
]interpret
[,
:2
<
>
;
^
]interpret
[.
:2
<
>
<
"
^
]interpret
[[
:2
<
>
<
!0
]find]
]interpret
[find]
:1
<
+1
^
>
<
!91
][inc
!93
][dec
]find]
[[inc
:3
<
+1
^
]find]
[[dec
:3
<
!0
]interpret
-1
^
]find]
[]
:2
<
>
<
!0
]interpret
[find[
:1
<
-1
^
>
<
!91
]]inc
!93
]]dec
]find[
[]inc
:3
<
+1
^
]find[
[]dec
:3
<
!0
]interpret
-1
^
]find[

Interpreter

  • Common Lisp implementation of the TACC programming language.