---
# System prepended metadata

title: Simdy

---

# Simdy

## Types
| Type name  | Description |
| ----------- | ----------- |
| i32    | signed 32-bit decimal number          |
| u32    | unsigned 32-bit decimal number        |
| i16    | signed 16-bit decimal number          |
| u16    | unsigned 16-bit decimal number        |
| float    |  32-bit IEE 754 floating point  number   |
| double    |   64-bit IEE 754 floating point  number      |

## Function
```clike
// declaration
func name(arg0 : arg0_type, arg1 : arg1_type) {
    // function body
}
```

## Operations

|        Operation          |     Syntax      | 
| -------------------------|---------------- | 
| increment                |       a++\,++a  |
| plus                     |       a+b       |
| unary minus              |       -a        |
| minus                    |       a-b       |
| decrement                |       --a\,a--  |
| multiplication           |       a\*b      |
| division                 |       a/b       |
| reminder                 |       a%b       |
| bitwise NOT              |       ~a        |
| bitwise OR               |       a \| b    |
| bitwise AND              |       a & b     |
| bitwise XOR              |       a ^ b     | 
| bitwise left shift       |       a << b    |
| bitwise right shift      |       a >> b    |
| equal                    |       a == b    |
| not equal                |       a!=b      |
| logical OR               |       a \|\| b  |
| logical AND              |       a && b    |
| less                     |       a < b     |
| more                     |       a > b     |
| index operator           |       a\[b\]    |
|size operator             |       sizeof(a)


## Operators


|        Operator          |     Description      | 
| -------------------------|---------------- |
| bitcast<ty2>(value) | Converts value to type ty2 without changing any bits|
    
### Memory operators

|        Operator          |     Description      | 
| -------------------------|---------------- |
| load<type>(address : ptr, offset : i32) | Loads the specified data type from memory|
| load<type>(address : ptr, offset : i32) | Saves the specified data type to memory |