Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
aapoalas
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
13 ms
·
121.
▲
by
aapoalas
2y ago
I guess the opposite could also be asked: Why would a game benefit from ECS? A player in the game can do basically anything, there's no guarantee that things are always perfectly accessed in a linear order. It comes down to statistics:
122.
▲
by
aapoalas
2y ago
It could definitely happen. It would be a hard decision for me then :)
123.
▲
by
aapoalas
2y ago
Yeah, know your data and how it is used. I assume that data access is mostly linear because of a few reasons: 1. All performance issues arise in loops: I at least have never seen a performance problem that could be explained by a single thi
124.
▲
by
aapoalas
2y ago
I hope so too :) I've contributed some minor bits of code to V8 and then worked on Nova for a year or two, but I'm still wet behind the ears compared to those folks. Any and all comments I can get from them is a blessing.
125.
▲
by
aapoalas
2y ago
The aim is absolutely to implement the entire ECMAScript specification. Progress has slowed down recently, as I've been both busy with other things and tied up in making the engine work with interleaved GC. A secondary aim is to have a
126.
▲
by
aapoalas
2y ago
Not really: In my daydreams Nova becomes the premier JS engine in the world and takes the crown from V8. If V8 went all in and basically just copied all of Nova... I'd probably still develop Nova, as I don't want to work with C++
127.
▲
by
aapoalas
2y ago
Heh, no apology needed. It's definitely an overused name. We bikeshed the name a good few years ago and came to "Nova" from "Supernova" because space is, like, cool. Rebranding would feel weird now :) I console myse
128.
▲
by
aapoalas
2y ago
V8 could probably implement the backing object "trick" with some trouble. I'm half-hoping that Nova will show it to be worth their while and that they will eventually do it. It will be a major refactoring of the engine, howev
129.
▲
by
aapoalas
2y ago
The plan is to eventually get to full ECMAScript specification compatibility, and who knows if that would then bring us to eg. the Servo browser or Deno JS runtime. In the short term, I am interested in one-shot script running scenarios whe
130.
▲
by
aapoalas
2y ago
The impetus for the engine design is indeed, as you say, "someone decided to will it into existence." A friend of mine who works in the gaming industry told me about the Entity Component System architecture and I thought: Hey, wou
131.
▲
by
aapoalas
2y ago
https://www.youtube.com/watch?v=-94qrgxH35M
132.
▲
by
aapoalas
2y ago
A short comparison to how V8 does these things: 1. All data in V8 is allocated into one of many heap parts: Usually new data goes into a nursery space, and if it does not get GC'd it moves to the old space. Relative position of data is
133.
▲
by
aapoalas
2y ago
That's a good point. The "Internals of Nova" blog posts do a bit more explicit comparisons to V8. In V8, and other production engines AFAIK, objects are variable-sized monoliths: All of their statically known data is containe
134.
▲
by
aapoalas
2y ago
I just got the AMD FW13 a few months ago, and I've enjoyed it very much as well. It's very much powerful enough for casual Rust programming, and it looks and feels great.
135.
▲
Show HN: Nova JavaScript Engine
(github.com)
271 points
by
aapoalas
2y ago
|
102 comments
136.
▲
by
aapoalas
2y ago
Here's a good blog post on the issue: https://danielchasehooper.com/posts/why-swift-is-slow/
137.
▲
by
aapoalas
2y ago
Here's a good blog post on the issue: https://danielchasehooper.com/posts/why-swift-is-slow/
138.
▲
by
aapoalas
2y ago
Yeah, exactly. I'm not too clear on how PLC, DCS (which is what I do), and others relate to each other but function block diagrams are used in both (according to Google anyway).
139.
▲
by
aapoalas
2y ago
If you like this, you may find automation project engineer work fun... or at least familiar. Function block diagrams are quite like this: There function blocks are connected together with wires, and the order of operations is defined by blo
140.
▲
by
aapoalas
2y ago
Small self-promotion: I've written about FFI matters on a slightly philosophical bent, in the context of C FFI between Deno JS runtime and 3rd party C FFI libraries: https://denonomicon.deno.dev/philosophy-of-ffi It&#x
141.
▲
by
aapoalas
2y ago
フィンランド人のプログラマーです。日本で2年ぐらい住みまして、英語のことや、日本のエリートのことは「植民地」って言われるのが初耳ですが…そう言われみれば、その通ですね。日本も確かに、言われた通、ユニークと特別なものではないです。もちろん、特別なところあるが、各国がそれぞれで様々な魅力や個性があります。 大変興味深いな書き込みでした。ありがとうございました。
142.
▲
by
aapoalas
2y ago
The article only shows Rust code calling the FFI API but suggests that C/C++ might also be used to call the API. In these cases I can imagine the caller passing in a pointer/reference to uninitialised stack memory, which is also U
143.
▲
by
aapoalas
2y ago
In this case they seem to have Rust on both sides of the FFI API and seemingly want to avoid heap allocating the Vec's static parts, which makes sense. So, an extended version if your solution would be to initialize the static parts on
144.
▲
by
aapoalas
2y ago
Yup, it definitely would.
145.
▲
by
aapoalas
2y ago
@syg If you happen around to answer more questions: Why going with only Sealed prototypes for structs? Personally, I would assume that with static initializer blocks we could well go with "initially Sealed" with "Frozen once
146.
▲
by
aapoalas
2y ago
1. Unsafe blocks only apply to shared structs, and shared structs are basically only relevant with unsafe blocks. This is somewhat two proposals in one: Shared structs which require more restrictions to be shareable at all but are still kin
147.
▲
by
aapoalas
2y ago
Guaranteed tail-calls with the `become` keyword have been moving forward recently.
148.
▲
by
aapoalas
2y ago
You seem to have misread "act" as "art."
149.
▲
by
aapoalas
2y ago
A data-oriented JavaScript engine called Nova ( https://github.com/trynova/nova and https://trynova.dev/ ), basically trying to answer the question of "what if everything in the JS engine heap was s
150.
▲
Sugar, spice, and everything nice: Part 1
(trynova.dev)
8 points
by
aapoalas
2y ago
|
1 comments
More ›