17 ms·
LaTeX was built to typeset documents. You have pages in documents and pagination is of critical importance in LaTeX. In the web you don't have pages, it's evolv
by JonSkeptic 13y ago
LaTeX was built to typeset documents. You have pages in documents and pagination is of critical importance in LaTeX. In the web you don't have pages, it's evolved to be seamless and scrollable. Natuarally, LaTeX was not designed for such an environment.
That doesn't mean that LaTeX is worthless on the web. The gluing algorithms that Knuth used for creating sentences and paragraphs do (for the most part) work, even in documents without pages. In all honesty, the web could benefit greatly from LaTeX, pagination aside.
I'm glad that the author seems to have a practical perspective on this:
>We think LaTeX is still the best programming language to tell a computer how to place text on a page. But the TeX project started pre-web, in 1978, and its scope and function are tightly linked to the printed page, not the webpage.
He goes on to give an example of constructing a table in LaTex which requires (or assumes by default) a suggested location for LaTeX to place the table in the page; something which is currently nonsensical in all but a few web environments. Like the author, I also find CSS appealing for a potential "LaTeX" on the web solution.
However, LaTeX was designed from the very first to be the next standard in type setting and is a turing complete language. CSS is still under debate for being turing complete, and it lacks nearly all of the features that are iconic of LaTeX, except for the ability to format math equations ( and even then...).
I'm not sure what the next standard in typesetting will be, but it will be designed to be device agnostic (with book existing as a supported format), it will target the web and similar digital media, it will be turing complete, and it will be created specifically to fulfill each of those goals, not to have them retroactively attached in a ham-fisted way.
- mehrdada 13y ago"We think LaTeX is still the best programming language to tell a computer how to place text on a page." No. The output might be beautiful, but the language is most certainly not. Awful to debug. I consider a more modern language that compiles to LaTeX and leverage its rendering engine for paper docs (while giving you sufficient control over the output) and also gives you a nice web output more pragmatic and a nicer way to approach the problem.
- hyperbovine 13y agoStrongly agree. It's taboo to criticize TeX because of who wrote it, but let's be honest: from a usability perspective it's atrocious. Cryptic error messages, code that rivals assembler for readability ... hell even the directory layout makes no sense to me, and I've been using TeX daily for over ten years. I hold Knuth in high regard as a scientist, and there's no arguing that TeX is a technical masterpiece which revolutionized the field of mathematics--but this is not the typesetting language that's going to carry us through to the next century (I hope).
- chimeracoder 13y ago> Strongly agree. It's taboo to criticize TeX because of who wrote it, I assume you're referring to Knuth, but it's important to distinguish between TeX and LaTeX (the latter was written by Leslie Lamport). The distinction between TeX and LaTeX is actually relevant here.
- tieTYT 13y ago> The distinction between TeX and LaTeX is actually relevant here. I know very little about both. Could you elaborate on the relevance?
- ygra 13y agoTeX is the low-level typesetting system and programming language. LaTeX is a set of macros on top of that that try to support a more semantic approach to document layout. If you see long command names that more or less spell out what they do, it's usually LaTeX. If you see short, cryptic abbreviated commands it's usually TeX.
- AnimalMuppet 13y agoAnd if you use either TeX or LaTeX instead of Lyx, you're a masochist.
- 13y ago
- tantalor 13y ago> In the web you don't have pages It can be done. For example Google docs supports headers, footers, and footnotes, but you are still free to decide whether to use the "print layout" or more webpage-like seamless layout for both editing and publishing ("publish to the web").
- pcwalton 13y agoBe careful what you wish for re. Turing completeness. One of the things we're discovering is that, when implemented properly, basic modern CSS (i.e. 2.1) parallelizes beautifully across multiple threads and cores for large speedups, with only a few exceptions in wide use, like floats. But if CSS hadn't been so declarative, we'd be stuck in the computing model of the 90's era it was designed in when implementing it.
- marcosdumay 13y agoTuring completelness does not mean that the execution paths are specified. Or, in a simpler way, do you know Haskell?
- dllthomas 13y ago"CSS is still under debate for being turing complete" So far as I'm aware, that's not the case. CSS is not Turing complete, in terms of what it can calculate in a single calculation. It is Turing complete if you string those calculations together, feeding the output of the last into the input of the next, which can only be done with some external source of events, but that is a larger system than "CSS". A UTM run for up to 1000 steps is not Turing complete. Turing completeness is arguably a bug, not a feature, when the goal is producing something quickly.
- 3rd3 13y agoWouldn’t Turing-complete file formats be difficult to search because the output could have arbitrary syntax and the crawler would have to run the code. On the other hand, why not make use of faster machines.