rhzm.org · home index about code

Growl

Growl is a concatenative, stack-based programming language written in C, inspired by Factor and RetroForth. As of now it's still a bit of a toy project.

As an example, here's how Fizzbuzz looks written in Growl:

load "std.grr"

def fizzbuzz? { [3 % 0 =] [5 % 0 =] bi or }
def fizz { when: 3 % 0 = ["Fizz" print]; }
def buzz { when: 5 % 0 = ["Buzz" print]; }

def fizzbuzz1 {
  if: fizzbuzz?
    [ [fizz] keep buzz nl ]
    [ . ];
}

def fizzbuzz {
  0 swap times:
    [ 1 + dup [fizzbuzz1] keep ];
  drop
}

30 fizzbuzz

You can see the source code in my Git forge.

See also