gymlang
v1.0.1
Published
A programming language for gym bros, by gym bros. Where every program is a gains program! ๐ช
Maintainers
Readme
GymLang ๐ช
A programming language for gym bros, by gym bros. Where every program is a gains program!
๐๏ธ Installation
npm install -g gymlang๐ Quick Start
# Run a program
gymlang program.gym
# Or use Node.js directly
node gymlang.js program.gym๐ Syntax
GymLang uses a simple, bro-friendly syntax. One command per line:
# Set up your starting weights
BRO bench 135
BRO squat 185
BRO deadlift 225
# Progressive overload (bulking season)
BULK bench 10
BULK squat 15
# Get those gains!
GAINS bench 1.5
WHEY bench 2
# Show off your progress
FLEX bench
FLEX squat
# Some motivation
FLEX "No pain, no gain"๐๏ธ Core Commands
Variable Management
BRO <name> <value>- Declare variable with bro energyBULK <name> <value>- Add to variable (bulking season)SHRED <name> <value>- Subtract from variable (shredding)GAINS <name> <value>- Multiply variable (muscle gains)CARDIO <name> <value>- Divide variable (cardio kills gains)
Math Operations
REPS <vals...>- Sum valuesCREATINE <vals...>- Multiply valuesPR <high/low> <vals...>- Find maximum/minimum (pump it up!)
Transformations
YOLO <name>- Random value (you only live once)WHEY <name> <value>- Exponentiation (get whey!)LEGDAY <name>- Set to 0 (skip leg day)HUSTLE <up/down> <name>- Round up/down (hustle harder)
Output
FLEX <value|name|"str">- Print value (show off)
๐ Examples
Basic Workout Program
# Starting weights
BRO bench 135
BRO squat 185
# Progressive overload
BULK bench 5
BULK squat 10
# Get swole
WHEY bench 2
GAINS squat 1.5
# Show results
FLEX bench
FLEX squatAdvanced Bro Math
BRO x 10
BRO y 5
# Bro math operations
REPS x y 15
CREATINE x y 3
PR high x y 20
PR low x y 5
# Transformations
WHEY x 3
YOLO randomComplex Workout Tracking
# Initialize workout variables
BRO bench_press 225
BRO squat_weight 315
BRO deadlift_max 405
# Progressive overload
BULK bench_press 10
BULK squat_weight 15
SHRED deadlift_max 20
# Calculate total volume
REPS bench_press squat_weight deadlift_max
# Get those gains
GAINS bench_press 1.1
WHEY squat_weight 2
# Round up for next session
HUSTLE up bench_press
# Show off results
FLEX "=== WORKOUT COMPLETE ==="
FLEX bench_press
FLEX squat_weight
FLEX deadlift_max๐ฏ Features
- Bro-friendly syntax - Easy to learn, hard to master
- Built-in motivation - Every command has personality
- Gym culture integration - Real gym bro terminology
- Error handling - Helpful error messages with bro energy
- Cross-platform - Works on any system with Node.js
๐ค Contributing
Want to add more gym bro commands? Fork this repo and submit a pull request!
Adding New Commands
- Fork the repository
- Add your command to the interpreter in
src/interpreter.js - Update the documentation
- Submit a pull request
๐ License
MIT License - feel free to use this for your gains!
๐ Acknowledgments
- All the gym bros who inspired this language
- The bro code that keeps us together
- Protein shakes and creatine for the gains
Remember: Pain is temporary, gains are forever! ๐ช
