/Tsharp

Stack-oriented programming language.

Primary LanguageGoGNU General Public License v3.0GPL-3.0

The T# Programming Language

Docs | Docs(日本語) | Vim | VSCode

Ubuntu Windows CodeQL

WARNING! THIS LANGUAGE IS A WORK IN PROGRESS! ANYTHING CAN CHANGE AT ANY MOMENT WITHOUT ANY NOTICE!

It's like Forth and Porth, but written in Go. Stack-oriented programming

TODO

  • Self-hosted

Install

Install

go build main.go

Run

Run

$ ./main <filename>.t#

or

$ ./main.exe <filename>.t#

Hello World

push "Hello World" print

Block

block Main do
    push "Hello World" print
end

call Main

If Statement

if push true do
    push "Hello World!" print
end
if push false do
    push "Hello World" print
else
    push "Hello World else body" print
end

For loop

for push true do
    push "Hello World!" print
end

Dup

push "Hello World!" dup print print

Drop

push "Hello World" push "T# Programming Language" drop print

Arithmetic

push 34 push 35 + print

push 100 push 40 - print

push 200 push 5 / print

push 10 push 2 * print

Variable

push 10 -> x drop

push x -> y drop

push y print

FizzBuzz

push 1
for dup push 101 < do
    if dup push 3 % push 0 == do
        if dup push 15 % push 0 == do
            push "FizzBuzz" print
        else
            push "Fizz" print
        end
    else
        if dup push 5 % push 0 == do
            push "Buzz" print
        else
            dup print
        end
    end
    inc
end drop

Contributors