Skip to main content
Kira

Primitive Types

TypeDescriptionRange/Size
i8Signed 8-bit integer-128 to 127
i16Signed 16-bit integer-32,768 to 32,767
i32Signed 32-bit integer (default)-2^31 to 2^31-1
i64Signed 64-bit integer-2^63 to 2^63-1
i128Signed 128-bit integer-2^127 to 2^127-1
u8Unsigned 8-bit integer0 to 255
u16Unsigned 16-bit integer0 to 65,535
u32Unsigned 32-bit integer0 to 2^32-1
u64Unsigned 64-bit integer0 to 2^64-1
u128Unsigned 128-bit integer0 to 2^128-1
f3232-bit floating pointIEEE 754 single
f6464-bit floating point (default)IEEE 754 double
boolBooleantrue or false
charUnicode scalar valueU+0000 to U+10FFFF
stringUTF-8 stringArbitrary length
voidNo valueUsed for functions returning nothing

Integer Literals

42          // Decimal
0xff        // Hexadecimal
0b1010      // Binary
1_000_000   // With underscores for readability
42i64       // With type suffix

Supported suffixes: i8, i16, i32, i64, i128, u8, u16, u32, u64, u128

Float Literals

3.14        // Decimal
1.0e-10     // Scientific notation
2.5f32      // With type suffix

Supported suffixes: f32, f64

Boolean Literals

true
false

Character Literals

'A'         // ASCII character
'🎉'        // Unicode character
'\n'        // Escape sequence
'\t'        // Tab
'\\'        // Backslash
'\''        // Single quote

String Literals

"Hello, World!"
"Line 1\nLine 2"    // With escape sequences
"Tab:\tHere"
"Quote: \"hi\""

Escape sequences: \n (newline), \t (tab), \\ (backslash), \" (quote), \r (carriage return), \$ (literal dollar sign)