Skip to content
/ aspl Public

✔️ ASPL is a simple yet powerful modern cross-platform programming language

License

Notifications You must be signed in to change notification settings

aspl-lang/aspl

Repository files navigation

The ASPL logo

The ASPL Programming Language

CI/CD Test Suite Commit activity Discord X

ASPL is a modern programming language featuring beautiful simplicity, seamless cross-platform support, practical OOP and so much more.

Why ASPL?

  • Simple 😀
    The syntax is clean and readable, error messages provide useful information, and installing ASPL is as easy as a few clicks.

  • Safe 🔒
    High-level abstractions, automatic memory management, out-of-the-box TLS support, and a strong type system make ASPL one of the safest languages out there.

  • Cross platform 💻
    Newcomers as well as experienced programmers can easily create powerful cross-platform applications with ASPL; seamless cross-compilation is one of ASPL's core design principles.

  • Huge standard library 🔥
    Built-in JSON, graphics, and advanced networking support are just a few of the things that will drastically speed up your coding process.

  • Modular architecture 📚
    ASPL has a great and simple modular library system that helps you reuse any kind of third-party code in your projects, including even the ASPL compiler itself.

Important

ASPL is still in early development and some features are missing or incomplete. Even though the language is already quite stable and very practical, it is not yet recommended for production use. Contributions are always welcome!

Installing

Have a look at the installation guide.

Introduction

An introduction into ASPL can be found here.
It also documents most of the language and has a lot of examples.

Bugs and Suggestions

ASPL is currently in early development and still has some bugs and missing features.
Please report bugs or suggest features by opening an issue or posting them in the ASPL discord server.

Star History

Star History Chart

Code Examples

-> means the program prints text to the console
<- means the user types something into the console

Hello World

print("Hello World!") // print means "write into the console"

Output:
-> Hello World!

Favorite food

var favoriteFood = input("What's your favorite food?") // prints "What's your favorite food" and waits until the user types something into the console
if(favoriteFood == "Spaghetti"){ // checks whether the users input matches a certain string, here: "Spaghetti"; if it doesn't, the code between the braces will be skipped
    print("Hm, yummy, that's my favorite food too!")
}else{ // the following code is executed only if the condition in the if statement evaluated to false, here: the input was not "Spaghetti"
    print("Sounds great!")
}

Example Output:
-> What's your favorite food?
<- Spaghetti
-> Hm, yummy, that's my favorite food too!

Random number

import rand

print(rand.irange(1, 100)) // prints a random number between 1 and 100 to the console

Example Output:
-> 42

Note

More examples can be found here or in the ASPL introduction.

👋 Feel free to join the official ASPL discord server.