1.0.1 • Published 4 months ago

genzlang v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
4 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

4 months ago

1.0.0

4 months ago

0.2.1

4 months ago

0.2.0

4 months ago

0.1.8

4 months ago

0.1.7

6 months ago

0.1.6

6 months ago

0.1.5

6 months ago

0.1.4

6 months ago

0.1.3

6 months ago

0.1.2

6 months ago

0.1.1

6 months ago

0.1.0

6 months ago

0.0.2

6 months ago

0.0.1

6 months ago