Hacker News new | ask | show | jobs
by JoelMcCracken 1185 days ago
This is great. This is actually fairly similar to something I've been thinking about doing for some time, so I have a few comments to make!

For a previous job I wrote a miniature/lightweight "actor system" with haskell threads and STM. Basically, each actor was represented by a thread, threads operated in a loop (like erlang actors), and threads had mailboxes implemented via STM primitives. It worked like a dream, and I've been wanting to write up a blog post about it for a good while now, but alas, there is always something else that needs to be done.

There is an idea that's been floating around in my head for some time now. I want to expose Unix ideas to the web era. If a "shell" were built to expose a lot of these things via the web (of course, only to authorized users), I could see an explosion in creativity.

This leads into the next thing, enabling people to have their own, independent servers. This is a massive topic, but basically, I'd like to see more ideas like sandstorm.io or cloudron.io take off.

I may be looking at this project as a place to start for my own code, and/or inspiration! Thanks.

2 comments

As someone interested in pursuing similar ideas I would recommend taking a look at Object Capabilities and the E Language if you haven't already.

I believe Sandstorm.io (and Cap'n Proto) at least adopts some of the ideas.

Ah right, I remember this to an extent. That's cool, i think that's an interesting direction for research, but to be honest I probably wouldn't start with solving those problems. There's enough difficulty in simply modeling the unix world for the web.

I suspect one of the things Sanndstorm did that probably caused it issues was was biting off too much, for example implementing its own linux containers system (I don't know what the details were, I just know that at the time, I was thinking "if it were me, I would just use docker.")

Thank you, I am! I saw this linked in the original post.

I actually had started working on modernizing the cloud haskell code, but just realized it was far more work than I had time to put towards it at that time. I'm trying to get some things complete so I can focus on some other things instead, such as contributing towards this =)

Assuming you are the same NicholasT, if you want I can share some of the code snippets that I used to implement what i'm talking about. I just know that I can't commit any significant time toward this right now though.

I am indeed. Feel free to reach out, would be happy to learn from the approach you took.
shoot me an email so we can follow up offline, email is in my profile.