Skip to content

AI Usage Disclaimer

I have used claude to paraphrase.

Data in Bliss ​

A data type stores a structured group of named values, similar to a record or struct.

Definition Syntax ​

bls
data <Name> {
    <field1>: <Type1>,
    <field2>: <Type2>
}

Initialization Syntax ​

bls
let <name>: <DataType> = <DataType>{ <field1> = <expr1>, <field2> = <expr2> };

All fields must be initialized — partial initialization is not valid.

Example ​

bls
data User {
    name: u8[],
    age: u8
}

let user0: User = User{ name = "Hello World", age = 21 };

Strings and Character Arrays ​

Bliss does not have a dedicated string type. A string literal like "Hello" is syntactic sugar for an array of u8 characters:

bls
"x"  // sugar for [ 'x', .. ]

So u8[] is the natural type for text data.

Syntax Reference ​

PartRequired?Description
data <Name>✅Declares a new data type
<field>: <Type>✅A named, typed field
<DataType>{ ... }✅Initializer; all fields must be provided
<field> = <expr>✅Field value assignment in initializer