A question for my CS colleagues. I'm looking for examples for interpreters or JIT compilers in places one would not necessary expect in an operating system at runtime (in the widest possible context). Obvious examples are IMHO shells or (e)BPF/dtrace scripts. Some more exotic uses I can think of are interpreters for vector fonts (e.g. PS Type1 or TT hints) or the use of Prolog in the network configuration of NT4.
Do you know other examples?
https://web.archive.org/web/20040603192757/research.microsoft.com/research/dtg/davidhov/pap.htm
@newt @genmaicha
> dumbed down
Reformed and standardised 😏
@icon_of_computational_sin
Even though I understand how it works, I still hate it and no matter how much more comfortable I get with it with time, I still can't force myself into liking it 😖
@kaia
I don't get people who can work out late in the evening and go to bed after that! How do they do it? 😤
@newt
SPARCs had those too: https://en.wikipedia.org/wiki/SunPCi
With more capable CPUs!
@cosstab
Is that an old HP ProBook? 🤔
@33c74427f3b2b73d5e38f3e6c991c122a55d204072356f71da49a0e209fb6940 @newt
I'm not even touching GUI things — Firefox would probably be TOO slow, it is even on much more powerful PowerMac G5.
But for retrocomputing — still a nice machine, old software still works 🤷
@santiago often posts updates on adventures with the Cube (and G4 Mini too).
@33c74427f3b2b73d5e38f3e6c991c122a55d204072356f71da49a0e209fb6940 @newt
LLVM is always broken => no up to date Rust, Google dropped support for them in Go entirely,
You can get old gccgo to build with a plethora of patches — that would give you Go 1.10, building something useful requires backporting even standard library features. I did that for BloatFE — works fine, but for more complex things would require a lot of work.
@33c74427f3b2b73d5e38f3e6c991c122a55d204072356f71da49a0e209fb6940 @newt
It can! And it probably runs better than it does on G4 MacMini that I have — AFAIR you could put more RAM in it and use faster storage.
At this point these machines are only useful for retrocomputing.
Mine is headless and runs Linux 6.1 fine, I use it to host Perolma, print server, and a few other things, I also use it as a seedbox. But otherwise usefulness of 32-bit PowerPC machines is severely limited.
@kaia
If you want to do audio — that's usually where all the related equipment goes, but in this case I don't see anything of the sort. You can certainly live without UPS, put your only computer under the table, attach the microphone arm to the table itself and throw the rack out.
@VeroniqueB99 Aw, c'mon. Cops are almost people, too. Once this li'l guy graduates from the academy, it'll make more money than practically everyone it beats up, even before overtime.
@newt
OMG, just look at this: https://chromium.googlesource.com/chromium/src/+/main/docs/process_model_and_site_isolation.md
"As the early Web matured, web sites evolved from simple documents to active programs, changing the web browser's role from a simple document renderer to an operating system for programs"
I didn't know they have finally dropped the mask on browsers' role as a renderer for web documents, but they are calling this degeneracy "maturation" 🤦
@newt
If something starts happening in all of the tabs simultaneously — even as simple as pages getting reloaded at the same time and you are fucked!
Its effective working set is huge — in memory-constrained system pages start getting swapped in and out perpetually and it slows down to a crawl.
@newt
I'm not even touching the debauchery that is web-based software. Remember how people got fooled into thinking that Chrome's memory usage is modest despite it relying on OS processes for isolation? It allocates, it processes, it deallocates fast — looks good on paper and works relatively well with non-memory-constrained system.
@bacardi55
> What will win
Doing it with pseudographics in a preformatted block? 😈
@newt
This won't necessarily be true for software like mIRC: it has network buffers, it has log buffers — you can't keep swapping this stuff in and out without software slowing down drastically.
In other words, all of these metrics: both working sets and commit charge — only make sense in the context of operating in a memory-constrained system, and for software that was just launched — they simply aren't indicative of anything.
@newt
Exactly — and calculator wasn't, all of its pages were accessed "recently" so they are assumed to belong to the working set, keep using it for some time and it would shrink significantly. This is the behaviour I usually observe with software of this kind — local to the computer it's running on: most of its pages can get swapped out and software keeps running nicely.
None
Just in case: DMs/PMs simply don't exist on this instance as concept — don't use them, use the other instance if you absolutely have to, or send an email to any address at m0xEE.Net or .Com or .Org, but I prefer keep most communication public.