As you know I am working on new HyperDoc code. You can try it now.
At
https://wiki.fricas.org/public/HDTOP.spad
is Spad code implementing Browse functionality. At
https://wiki.fricas.org/public/br_sup.boot
there is Boot code forwarding requests from C side to Spad.
To try, build current trunk, fetch the file above, start FriCAS and do:
)compile HDTOP.spad
)read br_sup.boot
I have tried to reproduce old behaviour, so it is possible that
at first you will see no difference. The 'Selectable' search
is visibly different, it allows now logical operators in
patterns and number of arguments field beside numbers allows
things like '<2' or '>1' (the '<2' meaning less than 2 arguments,
the second meaning more than 1 argument). I removed search
for default packages, it is not clear to me if it is of any
use.
Some bugs and misfeatures are fixed, for example '_*' will
search for multiplication, 'search_operat*' will find
appropriate operations. 'OrderedVariableList([x, y, z])'
and klicking on constructor search will correctly propagate
the variable list to field on constructor page.
Some old bugs are still present, for example
'SAE(INT, SUP(INT), x^2+17)' and klicking on constructors
signals error.
There are certainly some new bugs, so some work is needed
before new code can replace old one in the trunk.
On technical level, 'br_sup.boot' replaces Boot functions
used in HyperDoc protocal and redirects them to Spad, so
all protocol exchange goes trough Spad. Basic functionality
is provided by previously unused HyperdocPage and
HyperdocConnection.
Note: the above replaces Browse functionality, in principle
parts like 'Settings' and 'Basic commands' may be broken.
I have diff for them too, but it is intertwined with
unrelated changes. Also, 'Settings' and 'Basic commands'
are still done by Boot code, changes just remove unsed
parts and adapt them to rest of code.
Note2: The HDTOP constructor alone is incative and can not do
any charm. I will probably do some more cleanups and fixes
but I intend to include it soon. The 'br_sup.boot' part is
switching to new code, I do not want to delay much including
it, but it has potential for breakage, so that will be
slower. Also several other changes should go in with
'br_sup.boot'.
--
Waldek Hebisch