On Sun, Dec 15, 2024 at 7:22 PM Waldek Hebisch <de...@fricas.org> wrote:
>
> On Sat, Dec 14, 2024 at 02:38:35AM +0100, 'Ralf Hemmecke' via FriCAS - 
> computer algebra system wrote:
> > On 12/14/24 00:00, Waldek Hebisch wrote:
> > > > > as static pages.  Simply, instead of pr-generating inpractically
> > > > > large number of pages sever may generate them on the fly.
> >
> > Maybe, there are different people that have different goals...
> >
> > Perhaps it would be useful to clarify what each of us wants and perhaps
> > it makes more sense not to work against each other. To say the truth, at
> > the moment I feel as if you do not value the work that I put into
> > fricas.github.io and rather aim at creating your own way to generate
> > documentation and get rid of what I did. I hope you understand that this
> > wouldn't make me happy.
>
> Well, fricas.github.io is nice and I value the work you put into it.
> OTOH Sphinx IMO is a problematic dependency, so I would like to
> have equivalent effect without using Sphinx.  Also, I want more
> functionality, some which looks impossible to get using Sphinx.

What's problematic about it, apart from a steep learning curve?

Sphinx can do a lot of things; e.g. if you don't like .rst, you can
use Markdown (.md);
you can use dynamic building - calling your system to generate output
and insert it into the docs you are building,
etc.
It's a de facto standard in the Python world, and very popular
documentation tool for  many other environments, too.

Dima
>
> > Yes. I do not like HyperDoc and this is just because it feels like old
> > technology and *I* do not want to spend time on it. But FriCAS is an
> > open-source project, so everyone can do whatever he/she likes.
> >
> > Not liking HyperDoc does not mean that I am against a system that
> > generates API pages from within a FriCAS session locally.
> >
> > When I started with the sphinx pages, I had the explicit goal to bring
> > the API as static pages to the web. Goal 1: more visibility of FriCAS.
> > Goal 2: searchable by this sphinx generated search field and also by any
> > search engine. For example enter "Module site:fricas.github.io" into google.
> >
> > Yes, sure HyperDoc is better when it comes to specifying domain/
> > category/package parameters and retrieve information for such particular
> > case. Still, HyperDoc looks so old-fashioned that I basically never use
> > it. If I could do the same stuff locally with my webbrowser, it would
> > improve the situation.
> >
> > I basically see need for (1) static web pages (versioned for each
> > release) and (2) a local help/documentation system that helps from
> > within a FriCAS session (even without Internet access).
> >
> > I would like to work on (1). Generation time of such web pages is not a
> > high priority. I have anyway a local service running that checks whether
> > the webpages still compile fine each time someone commits
> > something to the official git-repo.
>
> We can install dynamically generated pages at fricas.org, so this
> is another option.  But for me it is important to have local
> documentation and I would like to include building API pages in
> "standard" build, which is problematic due to dependencies (I
> have now dependencies on my main work machine, but until recently
> I could run build of API pages only on remote machine) and due
> to build time.
>
> > You mentioned a few issues like to many <pre> stuff etc. or sidebars
> > that use too much space. Well, yes, that can and should be improved, but
> > that doesn't mean that we/you should *replace* the sphinx generated
> > pages by server-side generated HTML pages. If you want to create such a
> > system, do so, but do not ask for removing static pages (I somehow have
> > the impression that such would be your long term goal -- if it is not
> > then I apologise).
>
> I hope that avoiding Sphinx will give at least as good and possibly
> better result.  Concerning API site, I am for keeping it as long
> as is needed.  If you think that Sphinx gives better result or
> for whatever reason you want to use Sphinx for API site, that is
> fine.  I would like to avoid having needless duplication, and
> have common code for all output formats, but intend to keep
> Restructured Text as one of output formats.
>
> > > > Would it be possible to retain https://fricas.github.io/ for what it
> > > > does now and just link to the dynamic pages for things like:
> > > > searching function names or live execution of examples.
> > >
> > > Yes.
> >
> > Yes, that sounds like a good approach.
> >
> > > > In practice I wonder how useful live execution of examples is?
> > > > Its hard enough/impossible to get people to write even minimal
> > > > documentation and this live execution would be a lot more work on
> > > > top of that. So realistically, is it likely to increase beyond
> > > > the small number of examples already in HyperDoc?
> >
> > > Not so small if you count FriCAS book.
> >
> > Eventually, we should also have the FriCAS book in HTML format on the
> > web and maybe even with links to notebooks that one can download and
> > execute.
>
> Yes.
>
> > > Concerning usefulness, I think that this is useful, but I want to get
> > > other things working with HTML first, especially search.
> >
> > Can you be a bit more precise? Do you mean for example "search for
> > exported functions in Foo(R) where a user can set R==Integer" or "search
> > for the domain/package that implements function foo from domain Foo(R)
> > where R is Fraction(Integer)"? Such things I would really appreciate and
> > that wouldn't be a big security issue.
>
> The two are assentially the same thing, and yes I would like to
> prowide this.  Potentially troublesome is someting like (untested):
>
> ZMOD((systemCommand("system rm -rf /"); 3))
>
> which (assuming I made no silly mistake) is supposed to "work" in
> current HyperDoc and clearly I do not want to make accessible over
> internet.
>
> There are simpler things, that I think are valuable: per operation
> views ("full" with descriptions, signatures, grouped by conditon),
> wildcards in operations names, filtering on number of arguments,
> etc.  For constructors ancestor views, descendants, etc.  That
> is quite a lot of small pages, giving just requested info and no
> more.
>
> > > HyperDoc currently handles FriCAS book in C code (FRICASsys is only
> > > involved in live examples).  'api.spad' contains convertor from LaTeX
> > > susbset used in docstings to Restructured Text.  IMO the approach will
> > > not scale up to more complex tasks, so I want a different convertor.
> >
> > What are the "more complex tasks"?
>
> FriCAS book.
>
> > > I would like new convertor to handle FriCAS book.
> >
> > What exactly is your goal?
>
> To be able to present FriCAS book as HTML/XML.  Thanks to
> MathML format it should be reasonably easy to get static
> version of examples from FriCAS book in XML.  With good
> convertor we should be able to produce HTML version of
> actual text.
>
> > > > > Well, concerning API pages: negative part is that I do not see
> > > > > how we can get good search using current technology (that is
> > > > > Sphinx).
> >
> > The question is what you understand by "good search". I have not taken
> > much effort to tailor the stuff that sphinx produces by default.
> > I find that search field useful enough (not perfect) to get to the
> > information I want.
>
> For me API search produces long list of results which I would have
> to manually scan to get what I need.  HyperDoc at top allow to specify
> if I want a constructor, an operation or possibly wider search.
> Once I get search result, there are possibilities to choose a view
> and/or further filter to result.  This is documented in FriCAS
> book and for me quite useful.
>
> > Otherwise it might also make sense to just use
> > google (as mentioned above).
>
> Google is sometimes surprisingly good if you give wrong (say
> misspeled) query, but may be poor for exact match or for
> conditions it does not undersatand.
>
> > And yes, search for specified parameters on
> > parametrized domains would be super-cool and certainly nothing that
> > sphinx can or should deliver.
> >
> >
> > > > > Also, I find build time problematic.  I would like to resolve
> > > > > those problems, and I think that direct generation of HTML can
> > > > > resolve both problems.
> >
> > I also think that the build time is too long. If someone can help in
> > finding the reason for this, I'd appreciate. But removing sphinx would
> > be a step into the wrong direction. No problem if you provide api2.spad
> > generated html documentation on fricas.org.
> >
> > > > So I guess you want all the official documentation to be derived
> > > > from some common root?
> >
> > > Yes, exactly.
> >
> > And for that it would be a good idea to agree upon a format that is both
> > readable in source code (++ docstrings) and has enough information to
> > generate good looking webpages from it. I'd really prefer reST over
> > HyperTex.
>
> Hmm, would you like to write DLMF or Wolfram functions site in
> reST?
>
> --
>                               Waldek Hebisch
>
> --
> 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 fricas-devel+unsubscr...@googlegroups.com.
> To view this discussion visit 
> https://groups.google.com/d/msgid/fricas-devel/Z1-AtMqp7-VhVzci%40fricas.org.

-- 
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 fricas-devel+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/fricas-devel/CAAWYfq2hE0sfs8FhR_2uLfLzpzDid4rV1kTrK-2x0s66a6QFjQ%40mail.gmail.com.

Reply via email to