# Lolang
## Introduction
### Description
Lolang is a simple, fun to use, register based programming language.
Its name derives itself from the expression "lol", as well as a short term for low-level-language.
In Lolang, every command should refer to a common english slang word, what ensures, that programming in Lolang is always modern and a lot of fun.
Memory is abstracted as a continuous space of registers (in fancy words, a register number is a virtual address for a memory location).
Lolang is held simple, so that new programmers (noobs) will find it easy to write their first programs.
Therefore a single reference to the operational register is maintained.
### Command summary
Command | Description
--- | ---
`trololol...` | Increases operational register by number of 'ol's minus 1 (initializes with 0)
`lololol...` | Decreases operational register by number of 'ol's minus 1
`rofl` | If operational register is equal to 0, go to the command after the next `copter`, otherwise continue
`copter` | Go to most previous `rofl`
`moolah` | Increase operational register reference by one
`yolo` | Decrease operational register reference by one
`dope` | Set operational register reference to the value of the operational register
`bra` | Set operational register reference to the specified number
`fuuu...` | Copy the value of the operational register to the register with the index of the number of 'u's minus 1 and set the operational register reference to that
`swag` | Output the value of the operational register as a character to `stdout`
`burr` | Read one character from `stdin` and save it to the operational register
`` | Sequence operator: execute the command before if one exists, and then execute the command after
### A few more things
- Lolang source files should have the file extension .lol
- Because Lolang is such a simplistic language, comments should not be necessary and are therefore not included (though they might be included in future releases)
## lolc
### Description
This package provides an implementation of Lolang: lolc.
lolc is a compiler for Lolang, written in Swift, which compiles to LLVM IR and therefore acts as a frontend to LLVM.
### Usage
`lolc