>From mailnull Sun Mar 24 22:06:25 2013
Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of math.utexas.edu designates 146.6.25.7 as permitted sender) client-ip=146.6.25.7; envelope-from=maxima-bounces at math.utexas.edu; helo=ironclad.mail.utexas.edu;
From: Rupert Swarbrick <rswarbrick at gmail.com>
Date: Sun, 24 Mar 2013 18:55:03 +0000
Content-Type: multipart/mixed;
boundary="===============3757560510837338627=="
--===============3757560510837338627==
Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1;
protocol="application/pgp-signature"
--=-=-=
Content-Type: text/plain
Raymond Toy <toy.raymond at gmail.com> writes:
> Have you considered how fast or slow this is on older machines? It
> seems that most developers have reasonably fast machines so we might
> not notice. But I think some (many? few?) users have much slower
> machines. Or at least some had machines without sse support, which is
> a pretty old machine.
That's why I wrote up the timings carefully. I intend to spend some time
over the next few days seeing if I can speed up the GCL and SBCL
versions a bit more. Unfortunately, it doesn't look like the ECL version
can run faster than double the speed it currently does (which is why
there's the note about timing reading line by line in the commit note).
Do you have an idea of what's an acceptable wait to you? I mean, there
will be a slight pause the first time a user calls "?" or "??". Is 1
second on a slowish machine acceptable? 2? 5? I've been sort of assuming
something like "2 seconds on a 5 year old laptop", but I plucked the
figure out of thin air to be honest.
Rupert
Rupert, I did some work on this a while ago; the work is in my github
repo. I had the code to a point where it worked correctly for the
languages in the info directories and all the lisps I had access to
(sbcl, cmucl, ecl, gcl, clisp). The speed-up was great--even clisp was
faster than the perl script by a noticeable amount. Also, I used an eq
hash so you could pull in multiple docs that covered the same subject.
I would suggest a few things:
1. make it an option to build maxima-index.lisp at build time, the cost is minimal when doing it in lisp, and it is pretty painless to write a function to dump the info hash;
2. make a user-level function available to pull in more info files than just those supplied in the installation;
3. make it optional to use the perl script during the build process.
1 & 2 are in my repo; 3 I did not get to.
Leo