ardaku 0.1.0

WASM Environment
Documentation
(module
    ;; Import `event()`
    (import "ardaku" "event" (func $event
        (param $size i32)
        (param $data i32)
        (param $done i32)
        (result i32)
    ))

    ;; Export a single page memory of 64KB.
    (memory $0 (export "ardaku") 1)

    ;; Define constants
    (data (i32.const 1) "log")
    (data (i32.const 4) "Hello World!")
    ;; `Message` Connect to log service
    (data (i32.const 16) "\00\00\00\00") ;; Connect
    (data (i32.const 20) "\01\00\00\00") ;; Index 1
    (data (i32.const 24) "\03\00\00\00") ;; Name length 3
    (data (i32.const 28) "\01\00\00\00") ;; Pointer to "log" @1
    ;; `Message` Send text to log service
    (data (i32.const 32) "\01\00\00\00") ;; Index 1: Log
    (data (i32.const 36) "\01\00\00\00") ;; Set Index 1 (don't change it)
    (data (i32.const 40) "\0C\00\00\00") ;; Message length 12
    (data (i32.const 44) "\04\00\00\00") ;; Pointer to "Hello World!" @4

    ;; Set the start function
    (start $start)

    ;; Declare the `start()` function
    (func $start
        ;; Create new logging service channel at index 1.
        (call $event (i32.const 1) (i32.const 16) (i32.const 48))
        (drop) ;; Ignore return value
        ;; Send message over logging service channel.
        (call $event (i32.const 1) (i32.const 32) (i32.const 48))
        (drop) ;; Ignore return value
    )
)