- fiedzia parentYes, by deciding on when, where and how you pass it. You know when it is created and destroyed because you wrote the code that either does that directly, or follows the convention (destroy when out of scope, or use of arc - it is programmer's decision).
- > Much of the business world, especially those things that must be done properly, still rely on having physical records and manual process.
Can you name one business that is using physical records where this is not mandated by law? All accounting around me, including banks, is done digitally. The only one I can think of are businesses run by people born before computers where a thing (some still exist). Note that governments and regulated industries can change very slowly, but that's almost always result of not needing to compete, not an intentional choice.
- > Why would you need to treat a web browser like a virtual machine?
There are many reasons. Performance, ability to bring concepts from other domains, ability to do things browser has no api for, ability to provide controlled experience and behaviour that goes beyond common browser usage.
- > why did some of them find (and take) room in coin hoards?
People who had access to gold used some of it to create jewellery.
> Why have they been found all over Gallia, Germania, and Britannia, but not Italia, Hispania, or the Oriens?
Certain types of jewellery can be found in certain regions. This can be attributed to specific trading network or local preferences. I don't know if that could be proven, but makes sense to me.
- Knitting - specifically knitting jewellery - explains that. Different holes allow you to create chains of different sizes, which in case of jewellery, also does not need to be standardised (lack of any standard or markings makes theories of some measurement device unlikely). That also explains regional popularity and proximity to gold (several of those items were found close to places were gold coins were produced or stored).
- Unique comparing to what?
There are other products that provide something similar, but are not as popular, as easy (part of easy here is integration with aws) to use and require extra tooling. This will be goto tool for many people working with data, and I'd expect "load_from_s3" to be added to many tools fairly quickly. That's unique.
- First, any technical discussion here is irrelevant. Those organizations do not ask for it because they understand it, but because someone else told them, and that's where the definition of safety is located. In other words, if you are applying for a contract, what you think doesn't matter. Having said that:
> People consider Rust memory safe, but there are a few cases where it is not
The chance that you will encounter memory safety issues in Rust is very, very low (comparing to other popular languages). We are talking about bugs in stdlib (very unlikely) and usage of unsafe in your code and dependencies. If you happen to use unsafe directly in your app, I'd say it is a spectrum and you can be in a danger zone. Otherwise, it is a small enough issue to focus on other problems. For 99.9% of people, "using Rust" is enough of a guarantee to be safe.
> Are languages without GC memory safe?
In theory, not having a GC in itself tells nothing about safety. Commonly used languages without GC are mostly C/C++, so in practical terms, they are unsafe.
> Is idiomatic Zig memory safe?
Zig itself is not memory safe. Even if idiomatic Zig was, how do you verify that some code is idiomatic? In practical terms, I don't think there is enough examples of Zig code to make determination, so I count it as no.
> Is idiomatic modern C++ memory safe?
"Idiomatic modern C++" very likely will have non-idiomatic or non-modern dependencies. There are many examples of safety issues in modern C++ codebases, so definitely not.
In my opinion, any definition of safety that relies on developer skills or usage of extra tooling means it is unsafe.
- >The second that you would benefit from using a DBMS specific feature, the ORM begins getting in the way.
You can extend diesel (and probably many other orms, Diesel is just particularly easy here) to support any db feature you want.
> It is highly unlikely that an ORM provides support, much less a good abstraction, over features that only 1/N supported DBMS have.
That depends on orm flexibility and popularity. It may not provide support OOTB, but can make it easy to add it.
> Your code ends up using the driver raw in these cases, so why not just use the driver for everything? Your codebase would be consistent at that point
Main point of using orm for me is that I have type verification, raw (as in text) breaks too easily.
- > I'm not the best with pointers and memory allocation/deallocation
You don't think about those at all when using Rust. That's why it was created. However because the conventions are different, some pattern will be different and you will need to learn do some things differently. I don't think Rust is particularly difficult to learn when it comes to using a framework, but a non-trivial amount of learning will be required.
As for features, I've found this video comparing them: https://www.youtube.com/watch?v=jWgLOtm9le8&ab_channel=DashC...
- I recall early Java having appetite for memory that hardware often could not satisfy (on a x86 desktop, it is of course still true for many microcontrollers).
Also I read a story of a developer resisting move from hand-written assemby to C, to which company owner replied "you can write your assembly, but not for my money". So nothing new, though some languages get a lot more resistance than others.
- No. Nobody is going read those (because most people won't even know that some unsafe is buried 5 layers of dependencies below what they work with). The author should make reasonable effort to prove the code is working correctly (and cannot be abused) by other means if possible. It might be a domain issue, so far all my apps are 100% safe (not counting libraries).