Download
40 lines 1 KiBTextModified 2022-09-27 raw
12345678910111213141516171819202122232425262728293031323334353637383940
struct Vec{x:Num,y:Num}

i := 5
f := 3.14159
s := "world"
v := Vec{2.3, 4.5}
l := [[1,2],[3,4]]
l2 := [[Vec{2.,3.}]]

extern bl_string_append_string(a:String, b:String):String
extern bl_string_repeat(s:String, i:Int):String

say "Hello: i=$i f=$f s=$s v=$v l=$l l2=$l2 expr=$(i + 1)!"
say "\n<-newline \x21<-bang \101<-A, backslash: \\ quote: \" done"
say "Fn: $( (x:Int,y:Int)=> x + y )"

toslice := "Hello world"
char := toslice[1]
slice := toslice[2..6]
say "Char: $char Slice: $slice"
say "Invalid char: $(toslice[-10]) Invalid slice: '$(toslice[-100..-5])'"
say "First slice: '$(toslice[..5])' Backwards: '$(toslice[-(1..)])'"
say "Whole slice: '$(toslice[..])' Every other: '$(toslice[1,3..])'"

say("string" + " + " + "concatenation")
say "string repeating: $("Ha".repeated(5))"

if yes
    multiline := ("
        Hello world
            (indented x4 here)
        i is $i escape: \x41

        "quotes"

        ^^^^ 2x blank line ^^^^^^
        expression: $(1 + 2)
        the end (no trailing newline)
    ")
    say "Multliline:\n<START>$multiline<END>"