QuickScript

A memory-safe language with static types, fast builds, and exceptional performance.

import "specs"

import "env/console"
import "env/process"

pub func main
def ls = @list(3, 7, 2, 9, 5)
def max = trap none of largest(&ls)
console.log(none)
process.exit(1)
console.log(max)

-- Returns a reference to the largest element in `ls`.
pub func largest (T) (ls : &List(T)) :> Maybe(&T) where T :: specs.Ordered
if ls.is_empty()
return .None
def mut max = &ls[0]
for i of ls when i > max
max = i
return .Some(max)