iacore has quit [Ping timeout: 244 seconds]
bjorkintosh has quit [Remote host closed the connection]
bjorkintosh has joined #picolisp
bjorkintosh has joined #picolisp
bjorkintosh has quit [Changing host]
ello has quit [Ping timeout: 252 seconds]
rob_w has joined #picolisp
chexum has quit [Remote host closed the connection]
chexum has joined #picolisp
iacore has joined #picolisp
<
tankf33der>
hi all
<
tankf33der>
libgmp is ok with mul and div on range 50-100M digits.
<
tankf33der>
next challenge is pil vs. libgmp
<
tankf33der>
on huge digits length
<
abu[7]>
Remember that picolisp is not optimal for big numbers
<
abu[7]>
ie stored in cells
<
tankf33der>
sure. i do optimizations.
<
abu[7]>
Yeah, but direct bignum buffers in C are easier to make fast
<
tankf33der>
is it easy to demonstrate ?
<
abu[7]>
The speed diff?
<
tankf33der>
how to use buffers
<
abu[7]>
PicoLisp does it with cell operations
<
abu[7]>
so needs double spake
<
abu[7]>
and the cells are built dynamically for all calculations
<
abu[7]>
also, it allocates
*new* cells instead of re-using large allocated buffers
<
abu[7]>
(+ Big1 Big2) makes a new number
<
abu[7]>
so a lot of gc'ing
<
abu[7]>
GMP needs no gc
<
abu[7]>
So I think it is rather useless to compare these two strategies
<
abu[7]>
Per it would be interesting to make an interface lib via native() calls to GMP? Tosupport features not supported by PicoLisp?
<
abu[7]>
ie. big floats
<
tankf33der>
i already did for big int
<
tankf33der>
should be easy
<
tankf33der>
in this link:
<
tankf33der>
did you mean chapter - "Floating-point Functions" ?
<
abu[7]>
Yes, something like that
<
abu[7]>
A general correct floating point library is not trivial
<
tankf33der>
and what next?
<
tankf33der>
do you have something specific in head ?
<
abu[7]>
Outside of bignums?
<
tankf33der>
no, inside
<
tankf33der>
next is test something ?
<
abu[7]>
Hmm, you already did almost all kinds oft tests :)
<
abu[7]>
GMP is really big
<
tankf33der>
bigints are 160 functions in total, i binded 60% of them
<
tankf33der>
rest are useless imho
<
tankf33der>
all these ported
<
tankf33der>
away in 10mins
rob_w has quit [Remote host closed the connection]
rob_w has joined #picolisp
<
tankf33der>
abu[7]: here ?
<
tankf33der>
scl function call should be in the beginning of file, right ?
<
tankf33der>
because this one already does not work
iacore has quit [Ping timeout: 245 seconds]
rob_w has quit [Quit: Leaving]
poosh has joined #picolisp
poosh has quit [Remote host closed the connection]
iacore has joined #picolisp
ello has joined #picolisp
ello has quit [Client Quit]
ello has joined #picolisp