I'm wondering if the C++ -> Rust converters out there are part of the Solution: After converting C++ to Rust, then convert Rust to C++ and you now have clean code which can continue to use all the familiar tooling.
> I'm wondering if the C++ -> Rust converters out there are part of the Solution
Are there C++-to-Rust converters? There are definitely C-to-Rust converters, but I haven't heard of anyone attempting to tackle C++.
> After converting C++ to Rust, then convert Rust to C++ and you now have clean code which can continue to use all the familiar tooling.
This only works if a hypothetical C++ to Rust converter converts arbitrary C++ to safe Rust. C++ to unsafe Rust already seems like a huge amount of work, if it's even possible in the first place; further converting to safe Rust while preserving the semantics of the original C++ program seems even more of a pie in the sky.
I'm not questioning what you do once you get to that hypothetical Rustic++. I'm questioning whether it's possible to get there using automated tooling in the first place.
In my recollection, what killed g+ was forcing your YouTube account to become your g+ account, with your public name attached to the trashpit YouTube comments used to be. Everybody protested using g+, but the "Google account for everything" stuck around anyways.
Do you distinguish between writing a compiler and writing an optimizing compiler, and if so, how is writing an optimizing compiler an extinct art?
Equality saturation, domination graphs, chordal register allocation, hardware-software codesign, etc there are many new avenues of research for compilers, and these are just the ones on the top of my head that are relevant to my work. Most optimization work is R&D and much of it is left unimplemented at scale, and things like the phase-ordering problem and IR validation are hard to do in practice, even given ample resources and time.
Persians might actually be a unique dual culture. Whereas others might guess or ask about things, Persians offer absolutely everything and the actual problem then shifts from "what can I ask for" vs "what should I refuse?".
An asker asks for things, absolutely everything, and the giver must choose what they can give.
A guesser must choose what they can ask for, and only ask when they're quite sure it can be given, so the giver has less responsibility for the transfer or service, and most asks can be assumed to be reasonable.
A Persian cannot ask for anything. They must wait for it to be offered, and even then, they must insist that they are quite alright, and that they would rather do without, and only through reciprocal insistence from the giver can they consider whether it would be rude to take them up on the offer.
Presumably, one can judge the giver's underlying intent by the quality of their reciprocal insistence (does it seem like they're just doing the bare minimum of insistence upon their offering, or do they truly wish for me to take them up on it?)
In the Taarof system, an offeree actually has more data, rather than a simpler Asker-scenarion "no", and even more data than the shared values in a Guesser household, this allows for a quick negotiation of values by the immediate and well-practiced cultural norms around the quality of insistence, even for people across different households.
I wrap that in FlatDB, which is an opinionated flat cache for the files with metadata inline, used for very fast searches (searching 150k messages in less than 20ms on my 4 year old phone). This handles a lot of tricky cases, like accidental cache modification, and editing the database in different tabs.
I've built a very similar contraption, but without any libraries because I got annoyed at having to relearn a new kind of React after react class components got out of fashion and people started using hooks. I built it out of raw JavaScript and a raw python socket server.
How do you manage sync? Mine is a WebApp so I use indexedDB, and that's nice so that it works on my computer browser, but I don't want multiple tab synchronization on my phone and it's tricky to handle. I've built something that works, but I'd love to explore other designs.
You said React Native, so there might be a regular app sort of data store to disk.
This reminds me of something mixing the Age of War flash game (which had great music) and TeamFight Tactics (TFT). An RTS without some kind of unit control seems strange, but interesting as it is often the greatest barrier to accessing the game.
Beautiful notation. I found the first especially interesting, with the spatial mapping recorded in a kind of "parametric-function on a 2d plane" view, like a camera on a slow exposure looking at the entire dance from bird's eye view.
The later ones are reasonable, as they map more closely to the music notation that has become standard, but for classical music of different cultures, notes don't often lie on a single place, but swing from one pitch to another, with blips and arcs in their paths from one place to another.
The staff-based notations lose the first-hand flow of the notation in space. I wonder what could be done with color.