Happy !

sig / NBFpu

Project infos

License MIT
Tags nativeboos fpu
Creation date 2012-12-27
Website

Monticello registration

About NBFpu

A small package with FPU stack implementation.

In expression:

result := a + b * c

(a+b) is a temporary value, which is used only once and then dropped. Since VM doesn't knows what follows, it has to represent the result with boxed Float. With FPU stack, same expression can be evaluated without need to create intermediate boxed float, therefore reducing GC pressure a lot, as well as making computation faster.

The above expression can be rewritten as following: | stack | stack := FPUStack new.

result := stack push: c; push: b; push: a; add; mul; pop