Wirewright: a rewrite environment for self-embodied programs

Hello World. As a disclaimer, it is really really early to seriously announce Wirewright (despite about 2 years of development), especially because it is missing some core features. But I think it deserves some attention/comments/thoughts anyway, at least first impressions. So I guess a semi-announcement will do :slight_smile: .

There are two “frontends”: the most user-friendly is pprint2_vis (TUI), the newest & most advanced is soma6 (GUI). The former will be removed once soma6 supports suggestions (aka friendliness).

There are some videos (& links) in the repo as well. If you manage to build the thing (see readme), have fun – at least copying what’s in the videos due to the absence of docs/guides/etc.

Beware that it’s very slow right now. The amount of deliberate optimization I’ve done is near zero, and some components are showing their age/incompetency.

3 Likes

That’s some wild shit right there.

I’m looking forward to seeing more of this, it just might take some years .until i actually understand it though :slight_smile:

Thanks haha. The ideas behind the thing are somewhat complex, undeveloped, and niche; but hopefully the software would be self-explanatory & intuitive – and usable in the real world. I just feel there’s something in it. More magic ahead! :slight_smile:

I probably don’t have to tell you, but not everything needs to be usable for something.
Things can just exist because they are “cool shit”. :smiley:

3 Likes

The thing appears to be a tiny bit more solid now, even though there are still lots of ways to crash it! And the internals are very very nasty! And it’s still very slow!

  • I will be publishing AppImages of µsoma periodically to the repo’s releases section. They should allow anyone interested to jump right in. I cannot guarantee the AppImages will work on all machines; I just don’t have enough time to guarantee this as well. But on most, they should?
  • There will also be an occasional video or two. I’ve created a YouTube channel for Wirewright and will publish the videos there, for now just semi-tutorials/showcases. The most recent one is about buttons and log nodes: https://youtu.be/O5O3QVKyRaA.
  • Lots of network magic in progress. I have high hopes it will work, even if slowly at first! I think I’ve stumbled onto something very interesting in the “emergent”/decentralized data structure realm. Will see!
  • More UI stuff ahead as well. UI is very expensive on time; and one also expects a lot (a lot!) from modern UIs. But will see.

Any questions or feedback would be appreciated as well, at least about how it fell apart :slightly_smiling_face:

Without feedback it’s very hard to know what people understand “by default” and what they do not; whether I am presenting “alien technology” here or something that can be picked up quite easily – I myself do not know. There is certainly some “alien technology” under the hood, but hopefully the visuals and the experience are less intimidating. Sorry for the lack of docs or guidelines of course, that’ll come when it’s the right time & when Wirewright is out of the prototype phase. Right now the best bet is in-app hints.

Not sure if this is the right place to write this. I don’t want to pollute the forum here; sorry if I do. But the alternative is me shouting into the void, and I’ve had enough of that already.

2 Likes

This is an amazing Crystal project, please do very much keep shouting about it here :slight_smile:

1 Like