ilo 0.8.2

ilo — a programming language for AI agents
-- 03: Data transform (terse syntax)

type customer
	name: text
	email: text
	tier: text
	spent: number

type summary
	name: text
	level: text
	discount: number

fn classify
	spent: number -> text
	? spent: 0 == "bronze"
	? spent: 500 == "silver"
	? spent: 1000 == "gold"
	match true
		>= spent 1000: "gold"
		>= spent 500: "silver"
		_: "bronze"

fn summaries
	@ classify from self
	customers: list customer -> list summary
	for c in customers
		let level = classify spent: c.spent
		let disc = match level
			"gold": 20
			"silver": 10
			"bronze": 5
			_: 0
		summary
			name: c.name,
			level: level,
			discount: disc