Skip to content
Josiah Winslow edited this page Jan 14, 2025 · 1 revision

What is Bespoke?

Bespoke is an esoteric programming language I created in January 2025, based loosely on my earlier language Poetic. The goal was to use the same encoding process as Poetic, but change the underlying structure of the language into something tolerable to write programs with.

I'm very happy with what I came up with; it's been a delight to write the included example programs, and they were much easier to write than most of the Poetic programs I've ever written.

What are Bespoke's features?

  • Imperative paradigm
  • Arbitrary precision integers
  • A stack, for temporary number storage
  • A "heap", for permanent number storage
  • IF statements, looping, and functions!
  • Comments (which weren't in Poetic, technically)
  • Flexible syntax based on word lengths (e.g. PUSH SEVENTH = tiny pythons)

What do Bespoke programs look like?

Bespoke's syntax is somewhat unique; the only thing that matters to the interpreter is the word lengths of each word in the program. The language is designed to have a system of helpful mnemonics that resemble keywords in other programming languages, and programs using those mnemonics will look like this:

INPUT N
CONTROL DOWHILE
    DO COPY
    OUTPUT N
    DO COPY
CONTROL END

However, you're encouraged to get creative with the way you write your programs. Because the program will work the same if the word lengths are the same, the above program is equivalent to the following "poetic" version:

there I stumble
falling up
even whilst I go down
falling out

How do I run Bespoke programs?

You can install the official Python interpreter using Pip:

pip install --upgrade bespokelang

Once you've installed it, the bespoke command will be available to run on your favorite terminal. To run a program, simply pass the program's path to the bespoke command.

bespoke helloworld.bspk