From: <Joe...@t-...> - 2016-06-29 11:14:48
|
Hi, Wolfgang Dautermann queried: >(a) Is "computes floating-point operations in software" correct? >Nowadays? Can one disable that? I assume most processors can do it in >hardware now. This is not the correct reason. CLISP uses FP instructions (of course it depends on the compiler switches, but I think the soft-float 68000 Amiga-CLISP version was the only one where FP was not used at all.) HOWEVER, Compiling (+ fp1 (* fp2 fp3)) in CLISP produces byte codes for + and *. Interpreting these *and* drilling down the huge CL number hierarchy to dispatch to the right addition and multiplication code is MUCH MUCH more overhead than processing 2 assembly instructions "FMUL fp3, fp2 ->fp0, FADD fp0, fp1 -> fp0" - which after type checks, is what Lisp compilers to native code produce and run... >(b) "Clisp makes use of the GMP library" - how can one enable it? I >compiled Clisp now from Daniels sourcecode, but libgmp seems not be used >(checked using 'ldd'). And there is no configure-option '--use-libgmp' >or something similar. I believe CLISP predates the GMP library. IIRC, Bruno extracted the bignum and perhaps FP code out of CLISP to produce some math library, but I think that library is not GMP but has another name (CLN?). Somebody with better memory, please jump in! CLISP has always had and used its own math routines. Long ago, they were better than many other packages, however in 20 years, a lot of effort went into GMP and other math packages as well, to make them very reliable too. Regards, Jörg höhle |