Welcome the channel on the development of Cro, a set of libraries for building reactive distributed systems, lovingly crafted to take advantage of all the Raku Programming Language has to offer (cro.services). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
patrickb There is a test failure in cro-tls, probably related to a bug in the rakudo supply impl. I'll try to create a usable bug report and then proceed with the release. 11:38
I've become reluctant to spend unreasonable amounts of time on fixing bugs prior to finishing the debugger I'm working on. 11:39
librasteve SmokeMachine: we have been on parallel paths (crotmp // functional) for a couple of weeks. Frankly I needed to take some time to flesh out my idea of what functional web components done in raku should look like. I am pleased to say that I have got my first proper example done and would like to use that to see if we can reintegrate our component efforts. There is a long form of this message at my example repo here 16:48
github.com/librasteve/raku-Cro-Web...tree/main. Please can you review when you get a chance and then we can maybe discuss a way forward?
SmokeMachine librasteve: I’m still rereading it (I need to be sure I understood everything), but I have some points… 18:41
React hooks are more related to how to manage states than to how to “define” the html… even with hooks, you continue using jsx to define the html… 18:45
SmokeMachine About functional programming: one of the main aspects of functional programming is being declarative, in that matter, I would say crotmp could already be considered functional programming 18:48
Currently Cromponent creates a Str method with its RENDER method return already compiled using Cro template engine. So, if you use your HTML::Functional to create html template, it will work with no integration needed… 18:54
You could also, just have a class where on the Str method you return HTML (using HTML::Functional), that if on a template, you use it like: `<&HTML(.your-object)>` it would already work as a component… 18:59
Your Person model could have a `^populate` meta method to be used to populate it with the default values, ex: github.com/FCO/Red/blob/b1f7118468...ce.pm6#L23 and github.com/FCO/Red/blob/b1f7118468...kutest#L17 19:08
librasteve thanks for taking the time to read and propose a way forward - it sounds like a good step for me to rebase my project onto Cromponent latest - I'll let you know how I get on... 19:34
SmokeMachine About css, I don’t think the way to create components should mandate how to create/use css… it could/should have facilitators, but not force including anything… 22:37