Hi!
I think Richard mentioned that he was using a SDL2 platform for one of his demos of Roc. I can't seem to find what talk it was. :(
Does anyone know if that (or some SDL) platform/demo is available on GH somewhere?
@Andreas T Jonsson The fireworks demo in his recent Philly ETE talk used an SDL2 platform. Is this the one you're looking for?
Can't see it in the roc-lang Github org, but Richard mentioned in that talk that @Brendan Hansknecht made the fireworks demo (can't find it on their GH profile either), so they might know more
https://github.com/bhansconnect/roc-ecs
Also, some info in #beginners > ECS
Might be slightly out of date from current Roc, but i can definitely update it if needed.
@Brendan Hansknecht I'm wondering how you went with the ECS experiment. I've been researching different ideas for the gui platform. One of the ideas I have is to implement a lot of the functionality in Roc. For example writing a pure Roc FlexBox layout using a Roc interface module. I'm just not entirely sure yet how that would interface with the platform. I definitely feel like some kind of data oriented architecture similar to ecs would be a good idea. I imagine the layout is just a system for the ui widgets. Looking for any pointers based on your experience.
We have discussed ECS for the editor before but I'm not sure if you can view messages from before you joined. Does this link work for you @Luke Boswell?
Thanks @Anton I hadn't seen that thread. I concur with @Matthias Devlamynck and feel that it is worthwhile investigating further. I have been coming from my research into understanding Action-State and how that might be implemented in practice. With effects, and other Roc features I think it could make ECS really good to work with. It feels like it could fit well together, particularly with dynamically loading plugins. For example I was playing with ideas to support different layout libraries which you can swap out, i.e. flexbox. If we have a drawable widget then maybe it has position data which these libraries can update in the same way. Basically I have been looking for ideas about how we can provide primitives in the platform which play nicely with Roc modules to compose functionality.
Excellent :) Being able to swap out layout libs sounds like a smart move!
Last updated: Jul 05 2025 at 12:14 UTC