X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?a=blobdiff_plain;f=src%2Ffloat.4th;h=bdedd9265be2ae906ecc176bc3d8190cd0aac823;hb=dee0ca5343f31d2fd0480f515a07665c1a6c8951;hp=95aaa3b1f42ea2d6f3596fb5e691fa84be048c30;hpb=a39894e12a9e84a17411e3bdd5d49fae3369e0d4;p=scheme.forth.jl.git diff --git a/src/float.4th b/src/float.4th index 95aaa3b..bdedd92 100644 --- a/src/float.4th +++ b/src/float.4th @@ -30,15 +30,52 @@ CODE f/ pushPS(reinterpret(Int64, a/b)) END-CODE -( addr len -- float ) -CODE float-parse - len = popPS() - addr = popPS() - val = parse(Float64, getString(addr, len)) - pushPS(reinterpret(Int64, val)) -END-CODE - -( float -- ) -CODE float-print - print(reinterpret(Float64, popPS())) -END-CODE \ No newline at end of file +CODE f^ + b = reinterpret(Float64, popPS()) + a = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, a^b)) +END-CODE + +CODE f> + b = reinterpret(Float64, popPS()) + a = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, a>b)) +END-CODE + +CODE f< + b = reinterpret(Float64, popPS()) + a = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, a= + b = reinterpret(Float64, popPS()) + a = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, a>=b)) +END-CODE + +CODE flog + b = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, log(a))) +END-CODE + +CODE fexp + b = reinterpret(Float64, popPS()) + pushPS(reinterpret(Int64, exp(a))) +END-CODE + +CODE i->f + pushPS(reinterpret(Int64, Float64(popPS()))) +END-CODE