Remix.run Logo
ilaksh 18 hours ago

Very interesting and ambitious project and nice design. I hope the author will be able to comment here.

I'm interested to hear about the plans or capabilities in R' or Radiance for things like concurrent programming, asynchronous/scheduling, futures, and invisible or implied networking.

AI is here and will be a big part of future personal computing. I wonder what type of open source accelerator for neural networks is available as a starting point. Or if such a thing exists.

One of the opportunities for AI is in compression codecs that could provide for very low latency low bandwidth standards for communication and media browsing.

For users, the expectation will shortly be that you can talk to your computer verbally or send it natural language requests to accomplish tasks. It is very interesting to think how this could be integrated into the OS for example as a metadata or interface standard. Something like a very lightweight version of MCP or just a convention for an SDK filename (since software is distributed as source) could allow for agents to be able to use any installed software by default. Built in embeddings or vector index could also be very useful, maybe to filter relevant SDKs for example.

If content centric data is an assumption and so is AI, maybe we can ditch Google and ChatGPT and create a distributed hash embedding table or something for finding or querying content.

It's really fun to dream about idealized or future computers. Congratulations for getting so far into the details of a real system.

One of my more fantasy style ideas for a desktop uses a curved continuous touch screen. The keyboard/touchpad area is a pair of ergonomic concave curves that meet in the middle and level out to horizontal workspaces on the sides. The surface has a SOTA haptic feedback mechanism.

cloudhead 15 hours ago | parent [-]

Thanks for your comment! In terms of concurrent programming in Radiance, it's likely I go for something inspired by Go's simplicity and Haskell's power with STM[0]. Actors are also on the table, but likely as a library on top of the native system, whatever it is. The important thing is that everything that involves "waiting" be composable in this system: timers, network i/o, IPC, file i/o, etc.

For the AI/OS intersection, it is indeed a very interesting design space. The key insight really is that the better the AI knows you, the more helpful it can be to you, so the more you give it access to, the better. However, to be safe, the OS itself needs to be locked down in such a way that personal data cannot leave your device. This is why capabilities-based security is an interesting direction: software should not have access to more than what it needs to operate, and you need fine grained control over that.

If you have more ideas, please write us!

[0]: https://en.wikipedia.org/wiki/Software_transactional_memory

alexisread 2 hours ago | parent | next [-]

It looks like you've looked over a number of languages, but I don't see anything about Forth, Forsp, Ante, Steps, Austral, Wat or Vale? I'd suggest they all have useful components to steal from :)

https://github.com/ablevm/able-forth

https://xorvoid.com/forsp.html

https://antelang.org/blog/why_effects/

https://tinlizzie.org/

https://news.ycombinator.com/item?id=43419928

https://github.com/GiacomoCau/wat-js/tree/master

https://verdagon.dev/grimoire/grimoire

Flere-Imsaho 14 hours ago | parent | prev [-]

Please make a REPL front and centre of the system.

REPLs make computers feel like magic to me.

cloudhead 13 hours ago | parent [-]

I agree! I've been thinking about why terminal software is so compelling, and how to make that the default while keeping the system accessible to beginners. I think there's a way to do it, to unify GUI, TUI and CLI.

7thaccount 13 hours ago | parent [-]

Take a look at what Rebol did in the late 90s. They have a DSL called "View" for making user interfaces with your scripts. Rebol itself shipped with a program that came with a ton of sample applications including Tetris. The creator of Rebol (Carl Sassenrath) was also big on the Amiga scene and envisioned what he called iOS (internet operating system, not the Apple iPhone OS) where you would do stuff like load a web page by just running the page's Rebol script iirc.

It never took off for various reasons. For one, the language was a bit like lisp, but with brackets. More importantly, it was commercial and then closed source for too long when Perl was really taking off.

Long story short though, whatever language you implement should have extremely high level primitives for simple GUI widgets. Forget Qt and Windows Forms...there HAS to be an easier solution. I can see how Rebol did it and surely you can make something like that possible.

cloudhead 3 hours ago | parent | next [-]

Yes, good idea — I know about Rebol but haven’t looked at it from that angle.

anthk 11 hours ago | parent | prev [-]

Check the Red programming language.