Several jj developers (especially Martin and Yuya) are former mercurial developers.
jj borrowed quite a few things from mercurial.
So, jj can be thought at least partially as a spiritual successor. Meta's Sapling is in a similar position. From this perspective, the key feature of both is transparent git repo and git remote support (hg can speak git as a foreign language, but it's limited)
Do the CSV files allow quoted newlines? If yes, what's the trick to avoid checking the whole file too find out whether a newline is quoted or a record separator when reading it from the middle in an async thread?
DuckDB uses a speculative parallel CSV parsing technique. The basic idea is that the parser speculates about the state the CSV parser is in at a random byte (e.g., whether it is inside a quoted field) and tries to figure out where the next row starts based on that.There are validation steps during finalization as well, to ensure the parser did not got anything wrong in its speculation.
Thank you. I love using duckdb and frequently query directly from zstd compressed files (and write out new ones). They’re easy to inspect using visidata and make outer use of. I found the talk interesting and enjoyable.
In general, yes. But Hive, for example, doesn't support embedded newlines or record separators that are not newlines, which means that a lot of older CSV files containing big data do not allow quoted newlines.
This might be the point. As long as they think the people who end up under-counted are not people this government would like to have voting power for the House of Representatives.
https://github.com/typst/typst is an interesting competitor to ConTeXt. It's not even TeX, but somehow I tried (and liked) it before I tried CoTeXt. TeX syntax is not something I ever enjoyed in LaTeX.
How much more compatible with LaTeX is ConTeXt than typst? For example, is there tikz for ConTeXt?
> TeX syntax is not something I ever enjoyed in LaTeX
ConTeXt is still TeX, but its syntax is very different from LaTeX's. Nearly every command takes an optional set of key–value arguments, and everything is integrated into the core, so the syntax is much more regular. Example:
%% Compile with "context <filename>.tex".
%%
%% ConTeXt is included in the default installation of TeX Live, so if you have
%% LaTeX installed, you probably already have ConTeXt installed too.
\setupcaptions[color=red]
\setuphead[section][color=blue]
\setupheader[color=green]
\definehighlight[emph][color=orange]
\setupTABLE[each][each][color=red, framecolor=green]
\starttext
\section{Introduction}
\startplacefigure[title={Caption.}]
\externalfigure[sys:///cow.pdf][width=2cm]
\stopplacefigure
Hello, world! \emph{This is emphasized text.}
\startTABLE[textcolor=red]
\setupTABLE[row][1][style=bold]
\NC[style=italic] Header 1 \NC Header 2 \NC Header 3 \NC\NR
\NC Cell 1 \NC Cell 2 \NC Cell 3 \NC\NR
\stopTABLE
\pagebreak
\section[
title={Alternate Syntax},
style=smallcaps,
]
\samplefile{knuth}
\startsection[title={This works too!}]
Some inline math: $x_{1, 2} = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$.
\stopsection
\stoptext
> How much more compatible with LaTeX is ConTeXt than typst?
Most engine primitives (\hbox, \def, \relax, etc.) and Plain TeX macros (\quad, \nobreak, \bigskip) work in both LaTeX and ConTeXt, and the math syntax is almost identical between LaTeX and ConTeXt too. Otherwise, they don't share very much in common.
> For example, is there tikz for ConTeXt?
Sure, it's called TikZ :) Meaning that TikZ has native and full support for ConTeXt, so
\usemodule[tikz]
is all that you need to use it. Metafun [0] is ConTeXt's built-in alternative to TikZ, but you can use both in the same document if you want.