Share your repls and programming experiences

← Back to all posts
NOOBLANG v2
JSer (1242)

Guys NOOBLANG Version 2 is finally OUT!

About NOOBLANG

NOOBLANG is an esoteric programming language create by myself. It has few symbols, and it's mostly English words. You can run a .noob file under /examples, or use the NOOBLANG repl shell.

GitHub repo: https://github.com/jslol/NOOBLANG

Docs

Keywords

  • oof <any>
    Prints the value given

  • noob
    Returns the user input

  • <variable <any>> be <any>
    Assigns the value to the variable

  • eef <boolean>
    Executes the code after until lol if the boolean expression is true

  • elz
    Used inside an eef block. If the condition is false, then execute the elz block

  • for [<variable> in] [<number> to] <number>
    Loops from (including) the start value to (excluding) the end value and store the value into the variable

  • wow <boolean>
    Executes the code until lol while the boolean expression is true

  • lol
    Ends an eef, for or wow block

Operators

  • <number|string> add <number|string>
    Returns the sum of the operands
    Does string concatenation if any of them is a string

  • <number> sub <number>
    Returns the difference of the operands

  • <number> mul <number>
    Returns the product of the operands

  • <number> div <number>
    Returns the quotient of the operands

  • <number> pow <number>
    Returns the result of the left operand to the power of the right operand

  • inc <variable <number>>
    Increases the variable by 1

  • dec <variable <number>>
    Decreases the variable by 1

  • <any> eq <any>
    Returns true if the two operands are equal or false if not

  • <any> nq <any>
    Returns false if the two operands are equal or true if not

  • <number> las <number>
    Returns true if the left operand is less than the right operand

  • <number> mor <number>
    Returns true if the left operand is more than the right operand

  • <number> laq <number>
    Returns true if the left operand is less than or equal to the right operand

  • <number> moq <number>
    Returns true if the left operand is more than or equal to the right operand

  • not <boolean>
    Returns false if the boolean expression is true, or vice versa

  • num <any>
    Converts the value to a number

  • str <any>
    Converts the value to a string

Literals

  • string:
    Quoted by a pair of " or '

  • number:
    In number format (negative numbers are acceptable)

  • boolean:
    true or false

Comments

  • //:
    For single-line comments

Changelog

  • Version 2.0:
    - Added for..in..to
    - Added elz
    - Right-to-left for pow
    - Better error reporting

  • Version 1.2:
    - Fixed bug where tabs does not work

  • Version 1.1:
    - Fixed bug where carriage return does not work
Commentshotnewtop
HappyFakeboulde (218)

This is (slightly) beautiful

Lumpy_Wiggles (72)

This is fantastic! Wish I had a few billion more votes...this is way beyond my abilities :/.

I would, however, make a suggestion. Maybe a elzeef that executes a block if the preceding eef/elzeef is false and another condition specified by the code, like else if in JS or elif in Python.

BTW: My favorite possible line of code? Exponential calculator: oof num noob pow num noob

MeowC (46)

also i wish i could make an ide for this
wait
maybe i can.
-FURIOUS SPEEDCODING-

CSharpIsGud (202)

If only i knew how to use regular expressions like that

hg0428 (77)

No good functions. Give real names to the functions. Otherwise it is good.

MeowC (46)

can we add pl0x so it acts like gets in ruby