/* good optimisation target: make these built in */ type numeral { u8; u16; u32; u64; i8; i16; i32; i64; isize; usize; float; double; } pub init(mut a *numeral) { *a = 0; } pub deinit(mut a *numeral) { *a = 0; } pub copy(mut a *numeral, b *numeral) { *a = *b; } pub move(mut a *numeral, mut b *numeral) { *a = *b; }