HackerTrans
TopNewTrendsCommentsPastAskShowJobs

icrbow

no profile record

comments

icrbow
·9 ay önce·discuss
Ada can't bootstrap? Ironic...
icrbow
·geçen yıl·discuss
> We humans love quantifiability.

No. Screw quantifiability. I don't want "we've improved the sota by 1.931%" on basically anything that matters. Show me improvements that are obvious, improvements that stand out.

Claude Plays Pokemon is one of the few really important "benchmarks". No numbers, just the progress and the mood.
icrbow
·2 yıl önce·discuss
Not for long.
icrbow
·2 yıl önce·discuss
> ECS library that will do it in AoS way

TLAs aren't my forte. It's SoA of course.
icrbow
·2 yıl önce·discuss
> does Haskell have a special construct that allows for values to be overwritten

Yes and no.

No, the language doesn't have a special construct. Yes, there are all kinds of mutable values for different usage patterns and restrictions.

Most likely you end up with mutable containers with some space reserved for entity state.

You can start with putting `IORef EntityState` as a field and let the `update` write there. Or multiple fields for state sub-parts that mutate at different rates. The next step is putting all entity state into big blobs of data and let entities keep an index to their stuff inside that big blob. If your entities are a mishmash of data, then there's `apecs`, ECS library that will do it in AoS way. It even can do concurrent updates in STM if you need that.

Going further, there's `massiv` library with integrated task supervisor and `repa`/`accelerate` that can produce even faster kernels. Finally, you can have your happy Haskell glue code and offload all the difficult work to GPU with `vulkan` compute.