Dart 3.14 is here! 🥧🎯
Our pi release brings the Dart workflow full circle:
📦 Automated SDK package upgrades with `dart migrate`
🌐 Re-engineered DartPad beta
🔗 Stable FFIgen & JNIgen
🚀 Up to 4x faster Wasm SIMD benchmarks
Read the blog https://t.co/bdeNrmp2Hp
@K_Lykov@GregoryCusack They also make great other wines... Barbaresco of course. Great Barbera. but also Verduna Pelaverga if you want something unexpected.
@shiweidu That's not what I said though. I understand perfectly well that this feels fun, especially when clanker does the heavy lifting. Contributing to real code base is not fun, there are hoops to jump over and all kinds of boring things.
@shiweidu@iosemagno Instead of burning tokens and time to produce half baked reimplementation of a thing that already exist you could burn them to improve the implementation that already exists and everybody uses.
But what do I know.
@shiweidu the actual AOT runtime is around 900Kb.
You can shrink it more, but it rarely matters in reality (unless you are shipping small scripts), because user code will be 10-20x larger than runtime itself.
@realamlug Having IC on every property access = loosing huge amount of perf
I have not looked at their impl - but with a language like JS you need to either change semantics and/or YOLO certain things (accepting crashes and unpredictable behavior) - otherwise perf will not be there.
@realamlug It does not matter where it goes if it can interact with AOT compiled code in unrestricted ways (eg call functions, redefine things, etc). So either eval is restricted in what it can do (there are checks on the boundary) or it's not closed world.
@filiphracek That's not necessarily true, you can chisel stuff out from big benchmarks as well and big benchmarks can also fall into bad performance traps... plus caveats about making sure that workloads are meaningful and various side-effects are accounted for still apply.
@filiphracek Yeah, I would like to take a look. Because your blog post falls into the common pit fall of presenting numbers without interpretation, which when it comes to microbenchmarks can paint completely wrong picture.