Something went wrong. Try again.
An experiment in static, refcounted, procedural language with ownership
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435use std.panicking.panictype Option*[T] { Some(value: T) None}fn or-panic*[T](opt: Option[T]) T = match opt { Option.Some(v) -> v Option.None -> panic("called `or-panic` on a `None` value") }fn is-some*[T](opt: &Option[T]) bool = match opt { Option.Some(_) -> true Option.None -> false }fn is-none*[T](opt: &Option[T]) bool = !opt.is-some()fn map*[A, B](opt: Option[A], f: fn(A) B) Option[B] = match opt { Option.Some(v) -> Option.Some(f(v)) Option.None -> Option.None }fn map-or*[A, B](opt: Option[A], default: B, f: fn(A) B) B = match opt { Option.Some(v) -> f(v) Option.None -> default }