Would love to compile a list of things that are part of "the Rust runtime" so that a constructive answer can be provided to the "Rust doesn't have a runtime" meme. I'll start: Box::new calls the allocator, and in order to keep the heap tidy a lot of work happens at runtime.
Haha, I mean the Go runtime is also just a bunch of stuff the Go compiler inserts. "Runtime" is a bit of a vague word, and I think enumerating what kinds of runtime things the compiler includes would be generally useful.
-
-
Yeah, makes sense! I usually thought about the "runtime" as a bunch of pre-written code linked into user apps, not code sequences inserted by the compiler. I suppose you can view things like stack canaries as a sort of "runtime".
-
Oh interesting; again first time hearing about those — learning things today! Do you know of any more maybe?
- 1 more reply
New conversation -
-
-
My personal mental image of a runtime in this context is the part that isn’t generated as part of your code to machine code generation (incl stack probes, trampolines, stack guards, implicit drops) or from apis you effectively use (bound checks, memory allocation)
-
There is a certain gray area here: dynamic linker features, implicit arch/instruction set checks, implicit library init functions, ...
- 2 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.