1.0.1 • Published 9 months ago

genzlang v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
9 months ago

genZLang

genzlang is a fun, quirky, and modular programming language inspired by Gen Z slang! It allows you to write code in a way that's both easy to learn and entertaining to use. Whether you're printing "yap", declaring variables with "skibidi", or running conditional checks with "vibeCheck", genzlang brings a fresh, humorous approach to coding.

Table of Contents


Installation

To install genzlang, use npm:

npm install -g genzlang

Usage

Once installed, you can run a .genzl file using the genzlang command:

genzlang <filename.genzl>

For example:

genzlang mycode.genzl

Syntax and Features

Printing Output

To print a message to the console, use the yap command:

yap "Hello, world!"

You can also print variables:

skibidi a = 42
yap a // Output: 42

Variables

Declare variables using the skibidi command:

skibidi a = 10
skibidi b = "Gen Z rocks!"

Supported variable types:

  • Numbers (e.g., 42)
  • Strings (e.g., "Hello")
  • Booleans:
    • noCap for true
    • cap for false
skibidi isCool = noCap // true
skibidi isLying = cap   // false

Conditionals

Use vibeCheck, moreVibeCheck, and slaps for conditional logic. The language supports both compact and spaced styles:

skibidi age = 20

vibeCheck(age > 18) {
    yap "You're an adult!"
}
moreVibeCheck(age == 18) {
    yap "You just became an adult!"
}
slaps {
    yap "You're not an adult yet!"
}

Loops

GenZ Lang supports while loops using the yessir keyword. The syntax is:

yessir(condition) {
    // code block
}

The condition can be any valid expression that evaluates to a boolean value. You can use:

  • Comparison operators: ==, !=, <, >, <=, >=
  • Boolean operators: && (and), || (or)
  • Boolean literals: noCap (true), cap (false)

Example:

// Basic counting loop
skibidi count = 0
yessir(count < 3) {
    yap "Count is: " + count
    count = count + 1
}

// Loop with boolean condition
skibidi isRunning = noCap
skibidi counter = 0
yessir(isRunning == noCap && counter < 2) {
    yap "Counter is: " + counter
    counter = counter + 1
    isRunning = counter < 2
}

Rules:

  • vibeCheck is equivalent to if
  • moreVibeCheck is equivalent to else if
  • slaps is equivalent to else
  • yessir is equivalent to while
  • You can use either compact style (all on one line) or spaced style (each part on its own line)
  • The language supports both styles interchangeably

Examples

Example 1: Basic Program

skibidi name = "Gen Z"
yap "Hello, " + name + "!"

Output:

Hello, Gen Z!

Example 2: Complex Conditions

skibidi x = 5
skibidi y = 3
skibidi isTrue = noCap

vibeCheck(x > y && isTrue == noCap) {
    yap "x is greater than y and isTrue is noCap"
}
slaps {
    yap "Conditions not met"
}

Output:

x is greater than y and isTrue is noCap

Example 3: Loop

skibidi count = 0

yessir(count < 3) {
    yap "Count is: " + count
    count = count + 1
}

Output:

Count is: 0
Count is: 1
Count is: 2

Contributing

We welcome contributions! If you'd like to add features, fix bugs, or improve the documentation, feel free to open an issue or a pull request.

Steps to Contribute:

  1. Fork the repository
  2. Clone your forked repository:
    git clone https://github.com/your-username/genzlang.git
  3. Install dependencies:
    npm install
  4. Make your changes and test them
  5. Submit a pull request with a detailed description of your changes

License

This project is licensed under the MIT License. See the LICENSE file for more details.


1.0.1

9 months ago

1.0.0

9 months ago

0.2.1

9 months ago

0.2.0

9 months ago

0.1.8

9 months ago

0.1.7

11 months ago

0.1.6

11 months ago

0.1.5

11 months ago

0.1.4

11 months ago

0.1.3

11 months ago

0.1.2

11 months ago

0.1.1

11 months ago

0.1.0

11 months ago

0.0.2

11 months ago

0.0.1

11 months ago