|Dear Giovanni,| On 28.11.20 22:57, TeXmacs wrote:
On Sat, Nov 28, 2020 at 07:20:15PM +0100, Giovanni Piredda wrote:So "possibility to write converters that work always" is one point that I am going to write in the Wiki page I think.
I have in mind that the "Turing complete" _expression_ describes aThis is just to say that the parser of TeX is a complete programming
system of manipulation of symbols (I helped now myself with
Wikipedia for finding the word "manipulation" in this context), by
which starting with a set of symbols and applying the manipulation
rules I obtain another set of symbols.
language on its own. This means that it is undecidable whether
a given program is parsable. TeX has no well-defined grammar,
contrary to *ML languages (HTML, SGML, MathML) or TeXmacs.
This is actually a very serious problem (it makes it impossible to
write 100% reliable convertes)
Thanks, here it will take a bit (the explanation on top helped).
While I see a grammar as a set of rules that determine allowableSee also The Jolly Writer, section 1.8.
compositions of symbols, but they do not tell how to compose any set
But you wrote that the grammar is Turing complete. Could you explain
more? Maybe a pointer to something to read, if it is to long to
Right. Once that you have many pages written in the format, it is difficult to switch to something different. This is also (perhaps) one of the reasons why the LaTeX code written by programs looks usually quite different from the one written by people---there are too many ways to do the same thing.
I have thought a bit on why LaTeX/TeX is so successful,One of the keys is that it cannot easily be converted to something else.
Proprietary formats such as early M$ Word are another way to make this task hard.
The comparison between PS and PDF can be cited in this context. PDF was indeed introduced (as far as I understand) to reduce the wilderness of PS documents (PS is a full-fledged programming language) to a "description language" where arbitrary computations are no more possible.
However you need also to add that the \extern primitive allows to access these computational capabilities with an underlying scripting language. Here the comparison can be made with HTML/JS.
I meant "easy to read for me". This is subjective *and* only loosely related to how easy is to read it mechanically, i.e. with an algorithm---I saw this position that I am taking now only taken once by another person on the Internet, and a similar position ("reading TeX is second nature after a while", but without comparison to other markup) taken by other two persons (one in flesh and blood, one on the Internet). By the way I can read at sight only simple mathematical formulae written in TeX, but I do worse with all of the other markup systems I know.
The "markup" of TeX (I call it that way even if it is not markup)Easy in appearance.
for me is the easiest to read among all of the markup languages I
have seen (for mathematics especially, for other things too).
Perhaps this has been also one factor for success.
If it is that easy, try writing a converter to some other format.
In the context of markup languages you may want to link to general pages like:
and also it could be mentioned that there are other interesting systems like
which is a lazy functional description language for pages.