Just a quick note now, maybe more later: "William Stein" <[EMAIL PROTECTED]> writes:
> I don't understand the Axiom distribution enough to understand > how big it is, but my impression is that it is *also* huge. Looking > in the src/src/algebra directory there are many hundreds of > thousands of lines of code (over 300,000 distinct lines just of > dot-lsp files). These files are *not* the source code, they are the code produced by the SPAD compiler. The compilation process goes SPAD -> Lisp -> whatever the lisp produces. What you want to read are the xxx.spad.pamphlets. They should be very clear to read. In fact, that was one of the more important reasons why I switched from Maxima to Axiom. > This is from INTALG.lsp. Surely this is some machine-generated code that > isn't meant to be human readable, so I'm measuring the wrong thing! Oh, sorry. You realized it already. Well, it won't hurt. > Some of the code is funny (from zmod.lsp): > > (DEFUN |ZMOD;coerce;I$;24| (|n| $) (|ZMOD;bloodyCompiler| |n| $)) If you want to, I could even explain that line :-) > Ahh, maybe the pamphlet files are what generate the lsp files. > > It looks like the pamphlet files that come with fricas are between 100,000 > and 200,000 lines long. > > How does the fricas/axiom source code layout work? Is it all written in > pamphlets that lisp is generated from? The current strategy (at least from my point of view) is to have the maths (i.e., everything in the algebra directory) in noweb (AKA pamphlet) form. The compiler and the interpreter itself use traditional documentation. In my opinion, this makes sense, since I want to use LaTeX to explain certain maths (LaTeX was made for that), but the compiler and the interpreter do not contain math on that level. > "I know of three open source implementations of lisp that do not need to > bootstrap themselves" What's wrong with bootstrapping, and in particular with sbcl? http://www.sbcl.org/platform-table.html Do you insist on building the lisp from scratch? If so, why? In any case, I think that clisp is not a very good choice for FriCAS except that it is available almost everwhere. SBCL based FriCAS is *a lot* faster. I do not have a clisp version handy, but SBCL vs. GCL makes a *factor* of 2 for, eg., guessing. CLISP is still slower. > Yes, indeed redo the guessing package in Sage/Python. It will only help > improve the code in both systems. If you have the time I would strongly > encourage you to do that. No, I'm currently struggling to get a job, and it's not unlikely that I'll have to quit in January anyway. Furthermore, I doubt that it's interesting to improve the code. It would be interesting to improve the algorithm, though. Martin --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---