Files
highground-fork/README.md
2025-12-20 15:09:09 +11:00

96 lines
1.5 KiB
Markdown

# Solstice
Solstice is a programming language based on Ground.
## Compiling
First, ensure CGround is installed on your system with `sudo make install`. Then, compile with
```
g++ src/main.cpp -o solstice -lgroundvm
```
## Usage
Solstice files use the `.sols` extension. Run files as you would with any other interpreted language.
## Using Solstice
### Types
* `int`: Ground int (64 bit integer) eg 3, 7, 31432
* `double`: Ground double (Double precision floating point) eg 3.141, 2.7
* `string`: Ground string (char*) eg "Hello, World"
* `char`: Ground char (char) eg 'a'
* `bool`: Ground bool (either true or false)
### Printing
Prefix an expression with `puts` to print it to the console.
```
puts "Hello, world!"
puts 3.141
puts 7
puts 'a'
puts true
```
### Math
Add numbers with `+` (more operations coming soon)
```
puts 1 + 1
puts 3.14 + 2.7
puts 532 + 314 + 89432
```
### Comparisons
Compare 2 values with `==` and `!=` (more operations coming soon)
```
puts 5 == 5
puts 5 != 5
puts "dingus" == "dongus"
puts "dingus" != "dongus"
```
### Variables
Set a variable with `=`, similar to Python.
```
x = 5
y = 10
puts x + y
```
### Control Flow
Use `if` to execute code if a condition is true.
```
password = "dingus"
if password == "password123" {
puts "Your password is insecure."
}
if password == "dingus" {
puts "Cool password!"
}
```
Use `while` to loop over a statement.
```
number = 0
while number != 10 {
number = number + 1
puts number
}
```