Plank is a simple language made with LLVM and ANTLR in Kotlin. Need help? contact me on Twitter or message me on discord Gabii#3336.
Hello world in plank:
use Std.IO;
fun main(argc: Int32, argv: **Char) {
println("Hello, world");
}You can find more examples here
| Name | Description |
|---|---|
| cli | All command-line stuff |
| syntax | AST and Descriptor Mapping |
| parser | ANTLR grammar |
| codegen | The LLVM core that compiles to IR representation |
| analyzer | Code analyzing |
| vscode-plugin | VSCode tooling plugin |
| runtime | Runtime functions |
| stdlib | Language stdlib |
Usage: plank [OPTIONS] COMMAND [ARGS]...
Options:
-h, --help Show this message and exit
Commands:
jit
repl
The LLVM 13.0.0 is required, you can either put llvm-config in the $PATH environment variable, either create a
local.properties and put llvm.config=<target to llvm-config executable> in it.
You should execute the following commands:
$ git clone git@github.com:plank-lang/plank.git
$ cd plank
# if you are in windows
# PS .\gradlew.bat cli:linkPlankReleaseExecutableMingwX64
$ ./gradlew cli:linkPlankReleaseExecutableLinuxX64The binary file cli/build/bin/linuxX64/plankReleaseExecutable or if you are in a Windows
machine cli/build/bin/mingwX64/plankReleaseExecutable will be created.
PRs are welcome as long as they are well explained and only change one feature at a time.
This doesn't mean I'm going to accept all PRs, it just means I'm going to consider it.
If you liked and/or use the language consider leaving a star on the repo and following me on twitter :)