Hi Krystian, On 11/03/14 09:36, Krystian Bacławski wrote:> Anything you can do to limit FriCAS library dependencies on BOOT and > Lisp code would be a win in long term. If we eventually decide to move > away from Common Lisp as runtime environment, every function we use from > CL library will need to be rewritten.
I have come across (and occasionally used myself) Lisp calls such as: sayTeX$Lisp "hello" mathObject2String$Lisp ATOM(expr)$Lisp break down an expression into atoms trapNumericErrors myTrap1(ff:DF-> DF, f:DF):DF == s := trapNumericErrors(ff(f))$Lisp :: Union(DF, "failed") outputTran$Lisp COMPLEXP(x)$Lisp Test if x is complex number If people on this list thought it was a useful thing to do I could search for "$Lisp" in the library and make a more comprehensive list. I think it would then need those more knowledgeable than me to define their purpose/input/output definitions and to propose how they can be replaced by SPAD code (given the 'suboptimal' state of the documentation I'm guessing its not already documented). If that was done I could help out in doing the replacements. > Note that BOOT language is a thin > abstraction layer on top of CL. There's plenty of BOOT code in > src/interp that is not directly tied to the compiler. It could be > possibly rewritten into SPAD. My personal favourite, as for today, is > OutputForm domain. It converts data into s-expression and forwards > processing directly to BOOT code in src/interp/i-output.boot (~2400 > LOC). I see no reason why it couldn't be rewritten into SPAD. Oh, by the > way, current implementation of mathprint function is really buggy. I have come across OutputForm when I wrote HTMLFormat which extends OutputForm so I do have some previous knowledge although I'm no expert. If the consensus on this list were that it were useful then I could look at it. I assume that it could not be completely replaced by SPAD code in that it would still require some interface to non-library code. So it would require someone to define this interface for me. Martin -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/fricas-devel. For more options, visit https://groups.google.com/d/optout.
