Scaling this up

Hey hey. As I mentioned in Introduce Yourself, I’ve wanted something like Scrapscript for a very long time. I’ve lacked the background knowledge and systems programming skills to actually implement it though.

There were two points from my original Scrapscript-like vision on which I want to ask the authors their opinion:

  • Editing program source code: because all programs are data (rather than text files), it occurred to me that an appropriate UI would need to be developed to edit them effectively. I imagined this’d be more akin to a ‘block editor’, like Scratch’s - but scalable to, yknow, grown-up programs. Is something like this planned?
  • Self-hosting: I appreciate this is quite mad, and is so far down the road that it’s barely visible but - what do you make of the idea of Scrapscript all the way down? That is, Scrapscript implemented in Scrapscript - or, Scrapscript as an OS?

Again, thank you so much for starting the project. This is just so damn cool.

Cheers
-D

I would love to have a textless editor! I tried it a few times and couldn’t figure out how to make it a nice experience. Please share designs if you have anything in mind!

For a more hybrid approach, I have some editor ideas in the queue that are loosely inspired by Wolfram Language and SwiftUI :slight_smile:

The main idea is to provide a base text-editing experience, and then extend it with provide graphical UIs and debuggers. The key here is that interacting with the graphical UIs would also update the code!

For example, a color type could display and be controlled by a color picker, a customer type could ship with a nice form, etc.

I’ve already got a significant portion of a “scrapscript Heroku” written in scrapscript :slight_smile: I expect to launch a public beta sometime this year. It definitely feels nice as a JS/Python/Ruby replacement.

However, I highly doubt it will ever be a good C++/Rust/Zig replacement. I think we can make things quite fast if we copy Roc’s reference-counting compiler, but that kind of thing doesn’t excite me right now.

I definitely have some ideas/dreams for an OS like uxn, but it’s not scrapscript related haha

Re the editor - awesome, that’s the kind of thing I’d like. Ideally with some solid keyboard shortcuts that allow me to reorganise things as quickly as I would with Vim, but with the benefit that the editor has a deep understanding of what it’s editing in a way that’s difficult for text files / LSP / whatever to accomplish.

As for the OS thing - and I fully understand this is mad - I was thinking that the high level language (Scrapscript in this case) could be compiled where required, and so could create kernel images. I’d have thought that such a well-structured language would be ideal for something so highly optimised, a la Rust. The OS could then do cached JIT for application programs. (I’ll stop the mad science now.)

1 Like