Snowball is a low-weight, statically typed, object oriented programming language with garbage collector and module system.
Explore the docs Β»
Website Β· Report Bug Β· Request Feature
π Greetings! Allow me to introduce you to Snowball, a statically-typed, low-weight, object-oriented programming language complete with a garbage collector and module system.
π With a myriad of features to offer, Snowball boasts object-oriented programming, memory safety, built-in functions for enhanced productivity, and faster execution than other languages. Plus, its garbage collector and unit testing make it a comprehensive tool for developers.
π So why not dive in and explore Snowball's capabilities? For more information, check out the installation guide. Happy coding!
Before we get started, you'll need to have snowball installed into your compuiter. Linux and macOS users, you are in luck! You can use this simple command to download snowball and get started.
curl -fsSL https://raw.githubusercontent.com/snowball-lang/snowball/dev/scripts/install.sh | sudo -E bash -s -- -y
git clone https://github.com/snowball-lang/snowball
cd snowball
# INSTALL REQUIRED DEPENDENCIES
sh ./build_scripts/install_deps.sh
sh ./build_scripts/release.sh
sudo make install -j100note: We use -j100 to create 100 threads to make the compilation faster. This will make your computer slower, it can be removed.
First, you will need a new snowball project. For that, create a new directory and execute the following command:
mkdir myProject
cd myProject
snowball init
In order to execute snowball code, you can run the following command to build and run the program:
snowball run
Here is an example of a class in snowball.
import Core::System;
public func main() i32 {
System::println("Hello, world! π±");
}See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Follow this links and tell us your thoughts, ask questions and be part of the Snowball community!