While mentioning ConTeXt, can anyone give me a sell job on when and why it might be nicer than LaTeX?
It's not that I'm super fond of LaTeX, it's just that I assumed its warts were more or less inevitable in a stringy macro framework, and ConTeXt can't avoid that either.
Feature wise, both LaTeX and ConTeXt are similar. Where ConTeXt really shines is the ease of use and consistency of the interface.
1. No need to run `pdflatex; bibtex; pdflatex; pdflatex` multiple times. The wrapper script `context` takes care of that.
2. Easy to add graphic elements to the page and layout in a consistent and _fast_ manner.
3. Export to XML/XHTML/ePub.
4. Can compile XML.
5. Programatically generate documents using a Lua interface (this is different from LuaTeX; ConTeXt has a nice Lua interface called ConTeXt Lua Documents, so it seems that you are writing Lua code rather than a wrapper script).
Does #5 get around my worries about a "stringy-marcro-framework"? I.e. when things get too complicated, you can break out to a Heavy Duty (TM) language (aka Lua).
Depends a bit on what you mean by "string-macro-framework". The thing with ConTeXt is that it has a well defined API, so even when you are processing data using macros, it does not feel awkward.
Let me give a few examples of how I use ConTeXt (not necessary with ConTeXt Lua Documents)
1. Create a simple key-value driven interface for "complex" layouts https://adityam.github.io/context-blog/post/exam-coverpage/ This is still a "string-macro-framework", but ConTeXt has enough (and well named!) macros that it almost appears to be a "normal" template language. The code in ERB or other template languages would not be too different.
2. Generate Lab assignments for an undergraduate linear control systems course where the students learn how to interface MATLAB with real-time hardware. We create the lab in Matlab (`.m` file) and convert it to Matlab live script (which is Matlab's version of jupyter notebooks) which the students have to fill in. But, the live script notebooks are not convenient for browsing (say, for students who want to view the lab on their phone). Matlab offers a PDF as well as LaTeX export, which look ugly IMHO. So, we convert the `.m` to XML (Matlab does an XML export), and then use context to convert XML to PDF. The code is written using "stringy-macro-framework" but again the interface is nice enough that it would have looked similar in any other XSLT framework in any high-level language.
3. As an academic, I need to generate various versions of my CV (full publication record, pubs in the last `n` years for various values of `n`, etc.). I store my pubs in an XML file, use the XML parsing lib in ConTeXt to convert the data to Lua tables, and then use ConTeXt Lua Document syntax to generate different versions of my CV (depending on the command line flags to the `context` compiler. Once the data is converted to a Lua table, it is trivial to do things like group pubs by year, group pubs by research areas, etc.
It's generally better designed, but from own experience, harder to actually get something done with unless you are going to learn it from first principles — which hardly anyone does because while simpler than LaTeX it's still has cthulu-esque levels of complexity due to the TeX heritage.
One reason for the practical gap is that there is an order of magnitude more info on LaTeX online. Googling for ConTeXt is a miserable experience and the official documentation is far from enough.
On the other hand, if you do master it — well then it's easier to do the kind of things the OP does, which I think is really impressive.
Interestingly, the headline on the BBC page is more accurate than the one I see on HN. BBC says: "Did the Romans Really Reach Scotland?". And even though it's a headline, the answer is "yes, duh."
HN headline, "The Antonine Wall was the real final frontier of the Roman Empire" is misleading, and final is doing strange work there. The Antonine wall was only briefly defended a couple of times, while the more famous Hadrian's wall was a fairly fixed frontier.
I find it interesting that the Antonine wall is entirely inside Scotland, while Hadrian's wall is entirely inside England. Somewhere between them lay the line where further imperial expansion became overreach.
>...while the more famous Hadrian's wall was a fairly fixed frontier.
Agreed. Hadrian's Wall has always been considered the last, defensible hard border of the Roman Empire. As even the article notes:
>But the story of Rome’s north-west frontier far from ends there, for it was the Antonine Wall that, albeit briefly, held the title of the wildest edge of the empire.
If the zone between the Antonine and Hadrian's would've been a buffered no-man's land, the likes of how international borders stand to this day, then the Antonine - if only the demarcation of the beginning of the no man's land - really wouldn't have been the final frontier.
I imagine the Roman Army, in all it's due dilligence, would've swept the area of around five to ten miles from the Antonine - to make sure they weren't going to get "surprise visitors" whilst they were building the Antonine.
Assuming this posit is true, then the "final frontier" of the Roman Army was actually much further north than one would assume (in the sense of frontiers being realms of exploration and not demarcated boundaries).
> then the "final frontier" of the Roman Army was actually much further north than one would assume
In my backyard, Perthshire, it's difficult not to bump into the ruins of some fairly substantial Roman encampments. This is certainly a good bit north of the Antonine Wall. The Gask Ridge, just a couple of miles away from me, may contend as one of the earliest Roman "frontiers":
> The "intuitive" argument comes up a lot in relation to units of measure, and it just makes me wonder how people can have such lack of self awareness.
As someone who has grown up with a mix of various Imperial (not US) measures and metric ones, I often find some more intuitive than others even when I am familiar with both.
The most obvious his human height. A tall man is about 6' or more. Most people are some number of inches less than that. Moreover, the inch and not the centimetre is roughly the amount at which you would casually notice two people were slightly different in height.
On the other hand, for horizontal distance, metres (or yards) make more sense than feet. To the extent that when American tell me how far away something is in feet, I just multiply by three before trying to use the info.
I think weight in stones is similarly better than either kilos or or pounds, but I am personally more familiar with kilos.
> On the other hand, for horizontal distance, metres (or yards) make more sense than feet. To the extent that when American tell me how far away something is in feet, I just multiply by three before trying to use the info.
Wouldn’t you divide (rather than multiply) by three to get the distance in yards, which would be closer to meters?
My argument is not that all measurement systems are equally ergonomic, it's that you can't reach any conclusions about ergonomics by examining your subjective experience of a system you grew up with and use every day vs. one you don't.
This is what I though would be blindingly obvious, but apparently isn't.
But the POKE operation is specifically about writing to a given address. So it does capture what you are talking about. (Whether it is any clearer than "write-what-where" I leave as an exercise to the reader).
> I don't think you will find Hume actually arguing this. People read this into him because they glide so easily from is to ought.
I don't disagree with the second part. But the ought is explicit in THN, like 'n4r9 says below. I can think of two (definitely not the only two) plausible interpretations:
1. Reason is necessarily the slave of the passions. If so, there is no sensible way in which it ought be, since normative claims require that a thing could be otherwise. If Hume truly means that, then his "ought" is probably more of an admonishment against trying (and inevitably failing) to usurp the passions. This is a different sense, but I think it's close enough in kind to justify the interpretation.
2. Reason't isn't necessarily the slave of the passions. This makes the "ought" clause more intelligible from my position, but isn't really supported by Hume's account of moral action (i.e., how we find ourselves driven to it).
> This is a factual, not a normative claim.
It's normative in the context of the "admonishment" interpretation above. But yeah, not from #2.
> It's an empirical fact that we must act on our desires;
Is it?
> when I examine my actions closely I notice that all of them can be traced back to some desire or combination of desires.
But when I introspect, the opposite happens. When I examine my desires closely, they disappear and I am left with "well I often engage in X, Y and Z goal-seeking behaviours."
If you grant that motivation for actions have two components, causal and stochastic, and ignore the stochastic element as just error, I could see labeling all causal impetuses as "desires" at some level. Anything you do, you do because the conscious you--or some lower level process that is a part of you--"wanted" it that way, give or take some random noise.
It's not that I'm super fond of LaTeX, it's just that I assumed its warts were more or less inevitable in a stringy macro framework, and ConTeXt can't avoid that either.