IRC channel logs
2025-02-28.log
back to list of logs
<jfred>That's got me thinking again about what the issues were with WASI and if there might be ways of getting around them <jfred>the owned vs. borrowed handles thing specifically <dthompson>it just feels like an awful lot of complexity for not much benefit, to me <dthompson>it feels like they're not embracing the capability model in an effective way, I guess <dthompson>the way I see it, a wasm-based browser would instantiate a page's root module with the full array of capabilities for i/o. that module would then attenuate those capabilities as appropriate for any submodules. <jfred>yeah that's how I would expect it to work, I think <jfred>I think my new, er, month's resolution is going to be to finally get some direct experience with wasm <dthompson>if you stay away from wasi, at least initially, I think you'll find that the whole thing is simpler than you expected <andreas-e>Hello! More goblins questions. In my current code, I end up running things through layers of "(on (<- ... (on (all-of* ... (on (<- ...", instead of just "($ ... (on (all-of* ... $ ...". As a result, it becomes really slow. Is this expected? Unavoidable? <dckc>I wonder about a netlayer using signal messenger. or keybase chat. <dckc>but I guess I mainly want to use unix sockets and a capnproto relayer <dckc>or maybe JSON RPC, since capnproto already supports that <jfred>andreas-e: How many things are you waiting on with that `all-of` call/how long do they take to execute? I'm curious where the slowness is coming from (haven't used `all-of` myself but I wouldn't expect it to be slow if the things you're waiting on aren't) <andreas-e>I am waiting for between 2 to 5 jobs, and they take no time at all. All I am writing now are prototypes where nothing of the execution actually does something (well, squaring of small integers between 1 and 25). <andreas-e>So the slowness is definitely coming from inside goblins. <andreas-e>Well, each of the things behind "all-of*" goes through TCP on localhost, so there is some latency. <andreas-e>But this was also the case when I used "$" to set or retrive the value of a cell. All I have done is moved the cell to a different vat (in the same guile script) and replaced "$" by "(on (<-". <dthompson>andreas-e: hard to say what the issue is from the fragments of code above. how many machines/vats are involved here? <tsyesika>also if you have a link to the full source code that'd be useful <andreas-e>One machine, but two or three scripts communicating. And two or three vats (depending on whether you count the one where I put the ocapn connection). <andreas-e>I am close to finishing my third blog post; it should be ready next week. I will send you the link, and maybe a trimmed down example to illustrate what happens.