Skip to content
The world's first dogramming language
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
compiled bork into existence Jun 4, 2019
samples add some oopsie messages Jun 5, 2019
LICENSE Initial commit Jun 4, 2019
README.md Add link to examples Jun 22, 2019
examples.md Create examples.md Jun 22, 2019
expander.rkt add some oopsie messages Jun 5, 2019
main.rkt bork into existence Jun 4, 2019
parser.rkt bork into existence Jun 4, 2019
reader.rkt bork into existence Jun 4, 2019

README.md

pawgram

The world's first dogramming language.

Your dog knows how to program, but it does not have the means to do so, thanks to the lack of opposable thumbs.

Hence I made a (theoretically) Turing-complete programming language consisting entirely of dog sounds. All you need to do is listen to your dog for once and type out the sounds he makes and run the pawgram.

Example

#lang pawgram

woof woof woof woof woof woof woof woof fwip-fwip ruff woof ruff woof woof ruff woof woof woof ruff
woof woof woof woof ruff woof woof woof woof woof ruff woof woof woof woof woof woof ruff woof woof
woof woof woof woof woof ruff woof woof woof woof woof woof woof woof ruff woof woof woof woof woof
woof woof woof woof ruff woof woof woof woof woof woof woof woof woof woof ruff woof woof woof woof woof
woof woof woof woof woof woof ruff woof woof woof woof woof woof woof woof woof woof woof woof ruff woof
woof woof woof woof woof woof woof woof woof woof woof woof ruff woof woof woof woof woof woof woof woof
woof woof woof woof woof woof ruff woof woof woof woof woof woof woof woof woof woof woof woof woof woof
woof ruff woof woof woof woof woof woof woof woof woof woof woof woof woof woof woof woof yowl yowl yowl
yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl grr bow-wow ruff ruff ruff ruff ruff
ruff ruff ruff ruff ruff ruff ruff ruff arf yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl
yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff grr grr grr arf woof woof woof yowl
yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff
ruff ruff ruff ruff ruff grr grr arf woof woof yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl
yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff grr grr grr grr arf
woof woof woof woof yowl  owl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl ruff ruff ruff
ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff grr arf woof yowl yowl yowl yowl
yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl ruff ruff ruff
ruff arf yowl yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff
grr arf woof yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl
yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff
ruff ruff grr arf woof yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl
yowl yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff
ruff woof woof arf grr grr yowl yowl yowl yowl yowl
yowl yowl yowl yowl yowl yowl yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff
ruff ruff ruff ruff ruff grr grr grr grr arf woof woof woof woof yowl yowl yowl yowl yowl yowl yowl
yowl yowl yowl yowl yowl yowl yowl ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff ruff
grr grr grr grr arf woof woof woof woof yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl yowl
arf 
Output:
henlo world

(Your dog might do this more efficiently)

More Examples Here

Setup and Usage

coming soon

Syntax

You start out with a 30000 byte array and a pointer to it.

token command
woof increment current byte
grr decrement current byte
ruff increment pointer
yowl decrement pointer
arf output the byte currently pointed at
mlem input into the byte currently pointed at

Looping

All instructions between fwip-fwip and bow-wow are looped until the value of current byte becomes zero.

(language may or may not be a total ripoff of brainh*ck)


Implemented using racket.

You can’t perform that action at this time.