Skip to content

Built-in Functions

Zink ships with 28 built-in functions. No imports needed.

I/O

FunctionDescriptionExample
sayPrint to outputsay "hello"

say is a keyword, not a function — it doesn't use parentheses.

Type Conversion

FunctionDescriptionExample
str(v)Convert to stringstr(42)"42"
num(s)Convert to numbernum("42")42
type(v)Get type name as stringtype(42)"number"

Math

FunctionDescriptionExample
floor(n)Round downfloor(3.7)3
ceil(n)Round upceil(3.2)4
round(n)Round to nearestround(3.5)4
abs(n)Absolute valueabs(-5)5
sqrt(n)Square rootsqrt(16)4
pow(base, exp)Exponentiationpow(2, 8)256
max(a, b)Larger of twomax(3, 7)7
min(a, b)Smaller of twomin(3, 7)3
random()Random float 0..1random()0.4217

Array Functions

FunctionDescriptionExample
len(arr)Number of elementslen([1,2,3])3
push(arr, value)Append to end (mutates)push(arr, 4)
pop(arr)Remove and return lastpop(arr) → last element
reverse(arr)Reverse in place (mutates)reverse([1,2,3])[3,2,1]
sort(arr)Sort in place (mutates)sort([3,1,2])[1,2,3]
slice(arr, start, end)Sub-array (non-mutating)slice([1,2,3,4], 1, 3)[2,3]
contains(arr, value)Check membershipcontains([1,2,3], 2)true
join(arr, separator)Join into stringjoin(["a","b"], ",")"a,b"
range(start, end, step?)Generate number arrayrange(0, 5, 1)[0,1,2,3,4]

String Functions

FunctionDescriptionExample
len(s)String lengthlen("hi")2
upper(s)To uppercaseupper("hi")"HI"
lower(s)To lowercaselower("HI")"hi"
trim(s)Strip whitespacetrim(" hi ")"hi"
split(s, sep)Split into arraysplit("a,b", ",")["a","b"]
contains(s, sub)Check substringcontains("abc", "bc")true
slice(s, start, end)Extract substringslice("hello", 0, 2)"he"

Higher-Order Functions

FunctionDescriptionExample
map(arr, fn)Transform each elementmap([1,2,3], double)[2,4,6]
filter(arr, fn)Keep matching elementsfilter([1,2,3,4], is_even)[2,4]
reduce(arr, fn, initial)Fold into single valuereduce([1,2,3], add, 0)6

Released under the MIT License.