Inline. 

On Sep 16, 2014, at 2:34 AM, "Russell Allen mail@russell-allen.com [self-interest]" <self-interest@yahoogroups.com> wrote:
On 16 Sep 2014, at 5:17 pm, Casey Ransberger casey.obrien.r@gmail.com [self-interest] <self-interest@yahoogroups.com> wrote:

Web development framework. Okay, so that isn't really fun at all, but it *might* create some new interest in the project.
We now have an almost web server, which I'm running selflangauge.org on behind nginx

For the simple sites I've written most web frameworks seem weirdly complex to me, but it's not my area so I assume they are useful for people who need them.

Awesome. Can I read the code somewhere?

Mother of Stupid Ideas: do a web browser and fire 90% of the operating system, which is nowadays a life support system for a web browser anyway. I've been wanting to do this in Squeak since I arrived unwashed at the threshold of the mysteries of the message send. In Self, though, one of the ideas I had could really work better than in any other system presently: one could use direct, live manipulation of the morphs that comprise a web page to edit the actual page in a WYSIWYG fashion, and then use a variant of the object transporter, maybe with some parsing expression grammar sauce, to idea send a message which makes the page recursively render itself as HTML, CSS, and Javascript. It's like FrontPage, but without all of the suck! Of course, we'd need recruits, so...

Oh that's easy. Write a javascript->self translator, run webkit through emscripten and Bob's your uncle :p

Haha, but that defeats the entire point. The browser must be written in Self. That's how I get to fire my operating system. It could be Self, it could be Squeak, but if we ever built a web browser, we could seriously run on nearly bare metal and get by. It's an enormous amount of work to support a broken paradigm though, so I'm not oblivious to why it hasn't happened yet. 

Bad idea from professional experience: make it social. In the run up to Facebook eclipsing everything righteous and humane, we got a lot of play just by taking an existing thing and adding social/game features. GitHub has been enormously successful bringing this stuff into the programming world. It seems like the main problem with Self is that almost no one (except Smalltalk programmers and professional VM hackers) has even heard of it. Sticking a viralish microblogging widget into the image and maybe some instant messaging stuff alone could do wonders with regard to snaring bright, malleable minds to help build the future.

The ability to share a Self screen is really a hidden superpower. We just need to disentangle it from X Windows.

Well done! I kind of hoped that someone would pipe up with "but we've already done this!" (I knew about the shared world stuff.) Right, now add a chat client. Just for people hacking on Self. It was just an idea, but one that might go interesting places. If we want to make people aware of Self. I do? Of course my idea could be a total waste of energy. People might not use it, preferring to hide in their hacker holes and lament having been alone all their lives. 

Idea for which I will not hold any resentment when rotten tomatoes are thrown at me: I wish Self was more portable. I wish that all the brilliant, living people who made real live object systems go fast could combine forces.

CASEY
(ducks slightly)

AUDIENCE
(nervous silence)

CASEY
What if we retargeted Self to run above the Cog/Spur variant of the Squeak VM, and then focused some effort on implementing the necessary bits on ARM and…

AUDIENCE, THROWING ROTTEN TOMATOES
Noooooooeeess!

CASEY
(drowns to death in tomato juice)

Boo! Hiss! 

Actually not a bad idea if we could adjust the Cog JIT to inline getters and setters, otherwise I'm guessing it would be too slow?

I actually can't respond to this in any intelligent way. So I'm just going to blither inanely. Sounds like you're saying the Squeak VM doesn't have facilities for dealing with Self's attitude toward assignment ("it doesn't exist".) Seems like that would be pretty easy to add, I mean isn't assignment ultimately a primitive in the Self VM anyway? The bigger work is the messy speculative inlining stuff in general. There are people working on that. Even thought I heard that David Ungar was working with Eliot Miranda on optimizing Squeak's GC, so it seems like with the two of them working on it, the assignment problem could probably be moot pretty quickly if it met everyone's goals at the right time...

Anyway, some good arguments, and thanks for your reply. 

P.S.

In my last life, I was a Software Comedian. If I've offended anyone, it was all in service of a couple of uninformed but poignant arguments wrapped in cookies and laughs. 

Casey

:) R