Types

Primitive Types

type-of

Returns the primitive type of its argument as a symbol.

nil?

Returns #t if its argument is #n.

bool?

Returns #t if its argument is a boolean.

int?

Returns #t if its argument is an integer.

flo?

Returns #t if its argument is a floating-point number.

sym?

Returns #t if its argument is a symbol.

char?

Returns #t if its argument is a character.

arr?

Returns #t if its argument is an array.

str?

Returns #t if its argument is a string.

tab?

Returns #t if its argument is a table.

iter?

Returns #t if its argument is an iterator.

obj?

Returns #t if its argument is an object.

class?

Returns #t if its argument is a class.

fn?

Returns #t if its argument is a GameLisp function.

coro?

Returns #t if its argument is a coroutine.

rfn?

Returns #t if its argument is a Rust function.

rdata?

Returns #t if its argument is Rust data.

Conversions

int

Converts its argument to an integer.

flo

Converts its argument to a floating-point number.

char

Converts its argument to a character.

bool

Converts its argument to a boolean.

not

Converts its argument to a boolean and negates it.

Abstract Types

num?

Returns #t if its argument is a number.

deque?

Returns #t if its argument is a double-ended queue.

callable?

Returns #t if its argument can be invoked as a function.

expander?

Returns #t if its argument can be registered as a macro expander.

iterable?

Returns #t if its argument can be iterated.

Macros
Evaluation