I was recently trying to solve a similar problem but on desktop platforms. I don't want to depend on LaTeX, but I'd like to be able to generate equation images inside a C++ desktop application. I tried to make MathJax run via QuickJS and extract the SVG for rasterization. But I couldn't make MathJax run with QuickJS.
The functionality that I am personally interested in from a binary parsing framework like Kaitai is generating an encoder implementation in addition to a decoder one. In other words, given a description of a binary format, I would like to be able to construct an instance of a class whose memory layout matches the format. For instance, if the format has an int n, then an array `a` of size `n`, and then a double `d`, it would be awesome to be able to construct a corresponding object with fields `n`, `a` and `d` and when I change `n`, then the size of `a` changes accordingly. And then, if I pass a pointer to this object to the decoder, it would be able to parse it correctly, as if the memory representation of the object came from some external buffer.
Kaitai support for serialization has been a long time issue. It's obviously non-trivial given that it has at least one case that doesn't exist today (instantiating a structure without loading any existing data.)
The only requirement placed on the “moved out” variable is that you should be able to call its destructor. Which means that it has to be in a valid but unspecified state. So it's fine to access such a variable, so long as you don't read its exact state. You can still assign to it, for instance.
I recently decided to give terminal multiplexer a try. I first used tmux for a couple of weeks and then discovered zellij. It felt much more user-friendly, but I don't know how much I am missing out in terms of useful features compared to tmux.
I like zellij, it has some bugs and seems to leak memory for me. I think it’s a it easier to get configured and set up though. Seems like it might be great one day though.
That's a deeper problem. Rule by fear and you will be surrounded by yes-men that only say the good stuff. Allow corruption and everyone, including your closest, will indulge as it becomes a way of life, and at worst, ingrained in culture (from my experience post-socialist Poland also had a lot of that sentiment that you have to pay up if you want to get things actually done, as it was rampant before).
Do both and you have what is happening, "surprise" after "surprise" when what you thought you had in equipment turns out to be actually bricks in someone's villa.
I'm genuinely curious which of those items you consider as sucky and why. I am asking because I've recently been moved from a C++ to a JS team at my current workplace, and now I am exposed to this wide range of new tools which are all alien to me.
reply