3 ms·
the claim of "no runtime" is a bit dubious... you're telling me that you're statically linking a full, modern UI library into every app?
by evil_buzzard 4mo ago
the claim of "no runtime" is a bit dubious... you're telling me that you're statically linking a full, modern UI library into every app?
- avaer 4mo agoA runtime is needed for GC, unless you're fundamentally changing Javascript. Even golang has a runtime.
- pjmlp 4mo agoEven C has one, regardless of how tiny it happens to be, or the possibility of freestanding deployment. In compiler speak, a runtime provides all infrastructure required by the language for program startup, shutdown, infrastructure for the standard library execution.
- amlug 4mo agoRUntime is an overused term here. The point is "no JS runtime, JIT-type" Of course there is a (native) runtime, as there is for all languages (like you said) :)
- satvikpendem 4mo agoThey probably are, given that's how Flutter and other Rust GUI frameworks work too.
- skibz 4mo agoIts documentation mentions a garbage collector. https://docs.perryts.com/language/supported-features.html#garbage-collection https://docs.perryts.com/language/supported-features.html#ga...
- ryanshrott 4mo agoStatic linking just puts the runtime inside the binary. The binary size is the real clue here.
- amlug 4mo agoYes. One that makes use of the underlying UI library for the specific system (macOS UI, Win32 UI, GTK4, ....) The Perry runtime is surprisiginly small, especially since we (LLVM rather) strip out all that is no needed in one of the compile steps.