Skip to content
/ Bowie Public

Esolang inspired by the eclectic and innovative style of the late David Bowie.

License

Notifications You must be signed in to change notification settings

m-fol/Bowie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⭐ Bowie ⚡ Esolang

Overview

Bowie is an esoteric programming language (esolang) designed by @m-fol with a set of unique commands for expressive and unconventional programming. Named after the legendary musician David Bowie, this esolang introduces a set of commands inspired by his iconic songs.

Commands

  • Ziggy: Initialize a variable (register) named Ziggy.
  • Major Tom: Increment the value of Ziggy.
  • Space Oddity: Decrement the value of Ziggy.
  • Starman: Output the ASCII character represented by the current value of Ziggy.
  • Life on Mars?: Input a character and store its ASCII value in Ziggy.
  • Control Flow:
    • Ch-ch-changes: Conditionally execute the next command based on the current value of Ziggy. If Ziggy is zero, skip the next command; otherwise, proceed.
  • Loops:
    • Rebl: Start a loop. Continue executing the commands inside the loop until Ziggy becomes zero.
    • Heroes: End the loop.
  • Comments: Any text following the # symbol is treated as a comment and ignored by the interpreter.

Sample Program: "Hello, Bowie!"

# Hello, Bowie!
Ziggy
Major Tom
Major Tom
Major Tom
Major Tom
Major Tom
Rebl
    Starman
    Space Oddity

This program initializes Ziggy to 5 and then enters a loop, printing the ASCII character corresponding to Ziggy and decrementing Ziggy until it reaches zero. Embrace the unconventional nature of Bowie and let your creativity flow in this unique esolang.

Getting Started

To run Bowie programs, you'll need the Bowie interpreter. Follow these steps:

  1. Installation:

    • Clone this repository: git clone https://github.com/m-fol/Bowie
    • Navigate to the Bowie directory: cd Bowie
    • Run the setup script: gcc bowie_interpreter.c -o bowie_interpreter
  2. Run Your First Program:

    • Create a Bowie program in a file with a .bowie extension.
    • Run the program using the Bowie interpreter: ./bowie_interpreter.c < your_program.bowie
  3. Explore Examples:

    • Check out the examples directory for additional Bowie programs.
    • Experiment with different commands and loops to unleash the full potential of Bowie.

Contributing

Feel free to contribute to the development of Bowie! Whether it's reporting issues, suggesting new features, or submitting pull requests, your input is welcome. See the contribution guidelines for more information.

License

Bowie is licensed under the MIT License.

About

Esolang inspired by the eclectic and innovative style of the late David Bowie.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages