F[size]/SUB

Subtracts two sized floats, either f32 or f64.

Input stack: a b

Output stack: c

SUB will push the difference between b and a on top of the stack.

PumpkinDB> 3.14159f32 2.5f32 F32/SUB
0x40dbc0bf

Allocation

Runtime allocations for decoding numbers and heap allocation for the result.

Errors

EmptyStack error if there are less than two items on the stack

Tests

works_32 : 1.0f32 +2.5f32 F32/SUB -1.5f32 EQUAL?.
neg_works_32 : -1.0f32 -2.5f32 F32/SUB 1.5f32 EQUAL?.
neg_pos_works_32 : -1.0f32 2.5f32 F32/SUB -3.5f32 EQUAL?.
int_arg_fails_32 : [1.0f32 1 F32/SUB] TRY UNWRAP 0x03 EQUAL?.
empty_stack_32 : [F32/SUB] TRY UNWRAP 0x04 EQUAL?.
empty_stack_1_32 : [1.0f32 F32/SUB] TRY UNWRAP 0x04 EQUAL?.
works_64 : 1.0f64 +2.5f64 F64/SUB -1.5f64 EQUAL?.
neg_works_64 : -1.0f64 -2.5f64 F64/SUB 1.5f64 EQUAL?.
neg_pos_works_64 : -1.0f64 2.5f64 F64/SUB -3.5f64 EQUAL?.
int_arg_fails_64 : [1.0f64 1 F64/SUB] TRY UNWRAP 0x03 EQUAL?.
empty_stack_64 : [F64/SUB] TRY UNWRAP 0x04 EQUAL?.
empty_stack_1_64 : [1.0f64 F64/SUB] TRY UNWRAP 0x04 EQUAL?.

results matching ""

    No results matching ""