Ruby is compiled, it JIT compiles the code, in theory it should be on par with go once the compiler works out all the code paths, in a long-running application, you should expect the whole codebase to be compiled eventually. More:
There is a big difference between JIT compiled _dynamic_ language and ahead of time compiled static language. While modern JS engines show that difference sometimes can be narrowed down with sophisticated JIT and runtime, it is still there.
Ruby's YJIT compiler does compile ahead of time, the details are in the link provided. On the first run it will, if feasible, compile blocks of frequently executed code and stow it away for when it's needed next. So only on the first run is it interpreting everything.
Many interpreted languages have this feature, including PHP these days. But they're still quite slow, because dynamic languages are just slow. Dynamic typing is very suboptimal because generally you have to box A LOT of stuff and burn a lot of memory. That matters because then cache lines get evicted more often, and the performance grinds to a halt.
It used to be in PHP that every array element took 96 bytes (!!!) of booking overhead. That was/is why PHP is slow. That was reduced and performance basically quadrupled for PHP 7.4.
EDIT: sorry just wanted to add I'm being a bit hyperbolic. These languages are fast enough for their use cases, both PHP and Ruby. But compared to even something like C#, this is where the performance gap comes from, despite both being garbage collected.
Not really. From my understanding, in AP, your account belongs to an instance and your data is then synced to other servers. If the instance goes down, your account is gone.
In ATP, your data is stored in the "Atmosphere", hosted on decentralized "Personal Data Servers" (PDS). The app then simply parses and filters that data. They can apply moderation actions by choosing not to display or read certain posts, but your data still exists and another app could choose to display it. Similarly, if the app goes down, your data is still perfectly intact in the Atmosphere.
It might then seem like the PDS is equivalent to an AP instance, but as mentioned, they are decentralized. Identity is verified through signatures, so if your PDS goes down, you can migrate to a new one as long as you have your signing keys. Therefore, the account belongs to you and not any specific server.
By default, strings needs a run of 4+ (printable|ascii) characters. This sounds like it was 1 ascii character at a time in a sea of random data (with other alpha chars removed).
That would be expected for encodings or container file formats. Straight-up encryption like AES produces results that are visually indistinguishable from random data.
It works often enough for the company to be wildly successful. They can simply cut their losses and withdraw from industries where it hasn't, such as EVs.
A lot of the examples in here, I can't find? Like, I looked around for the new smart folder with the cog icon, where is it on my mac? Same with save as check, where is that? Also I'm pretty sure (although I can't find it) the save as with the up arrow is save as out to something? The ones I do find, all make perfect sense and work pretty well for me, they're not totally perfect but I'd never thought about them much before this post and I use them almost exclusively. Look at all his new for example, see new finder window? Look at the box around it, then open your window menu at the top of your screen, see how minimize has the same box around it? If you go though those icons set, most of them have: primary, secondary and sometimes tertiary visual clues. I dunno, I read that blog post and it doesn't really jive with me. I'm sure they could stand to clean it up a bit, I don't know I'm not a designer, but I'm certainly glad they are there!!! ¯\_(ツ)_/¯
New Smart Folder with a cogwheel icon is in the File menu of Notes.app, while New Smart Folder with a folder+cogwheel icon is in the File menu of Finder.app.
Thanks! I don't use the notes app, cog is not the best icon for that but I suppose it's differentiated from the file system version, if I read them both the same I might be confused, but not sure why they selected cog!!!
Isn't it generally expected for a feature-packed interpreted language to be slower than a minimal compiled language?
reply