The author has kindly provided you with simple, readable, and free code. If you find it incomplete or unsafe, you can always modify it and contribute your changes if you wish to improve it, in accordance with the licence; and thank him while you're at it.
They use LibreOffice, which is open-source. [0] That suite is part of the The Document Foundation [1] which headquarters are in Berlin, Germany. How is this related to Russia?
I setup dual boot on a second ssd with CachyOS seven months ago and haven't looked back yet.
I was most concerned with gaming on Linux which is why I chose Cachy and was pleasantly surprised on how well it works. Not without some issues but compared to the growing annoyances I have with Windows 11 in the last year or so, I am more than happy with my decision.
I run a modern PC, Intel 14th gen, RTX 4070-Ti, CachyOS with Plasma desktop environment. KDE Plasma is amazing and modern in its own right.
I could never get my head around the use case for ConTeXt. It seemed like LaTeX minus defaults that have been defined by typographers and the massive ecosystem. Care to say more?
Using C would tie the run-time/compiled implimentation to specific set of platforms/hardware. aka each hardware platform would have it's own specific compiled C quirks/issues to deal with. aka big endian / little endian; 16/32 bit; etc.
A virutal machine is typically what is used when not targeting an actual machine/hardware. aka runtime environment.
Transpiling the language to java or webassembly would provide for wider range of hardware/platform support without requiring specific knowlege compiled C platform quirks -- big endian/little endian machine. Although, transpiling to awk with system() & named pipes/netcat, perl, javascript, and/or creating an excell 16 bit cpu[7]/virtual pc could work too.
"1st class"[0] concept implies there are no restrictions on where given language construct/concept can be used. for example: which side of the assignment operator a programming language concept/construct can be used.
"type inference"[1] is typically an interpreted/virtual machine language feature. aka C++ run time type inference (rtti) is done via instance of a virtual machine.
namespace / scoping is important aspect of modularity / avoiding code coloring issues / automatic translation between formats / 'reactivity'[2]
XL[3], oils/ysh[4], unicorn[5]/unicorn.js[6], awkgo[8], pawk[9] might be of interest.
Would suggest using ' JS/Ocaml/Rust' implimented/running under python (and/or bindings to ocaml/rust).
A related example/demo of this approach would be awk running under go[8] or python[9].
This approach would make it bit easier to experiement with doing modifications/customizations/extensions to 'js/ocaml/rust'.
Permits leveraging things that have already been written. aka editors/debuggers/graphics libraries etc.
Instead of going the 'super' environment, gawk extentions/additions to awk take the extend the 'sub-environment' direction[10] via extensions support for c/c++
It's for backwards compatibility of C compilers (and lack of proper namespaces).
All identifiers starting with an underscore are reserved for use by compiler intrinsics and such. Although most compilers don't complain if your variable names start with a leading underscore, it is recommended to not have such identifiers in your code.
This is so that the new keywords don't collide with existing code (the combination of underscore followed by a capital letter is reserved). For instance until C23, 'bool' was actually called '_Bool' internally.
Just as with stdbool.h before, there could be a stdlib header which wraps those internal names into something more human-friendly.