Thanks for your answer. I’ll interleave…

On Jun 21, 2016, at 5:31 PM, Chris Double chris.double@double.co.nz [self-interest] <self-interest@yahoogroups.com> wrote:

On Wed, Jun 22, 2016 at 4:32 AM, David Ungar ungar@mac.com
[self-interest] <self-interest@yahoogroups.com> wrote:
>
>
>
> I am pleased and amazed at the attention you all lavish on Self. The recent activity has moved me to wonder:
> What is it about Self that appeals? What is it that you don’t like?

I like the environment where I'm basically living inside the software
I'm building, modifying it as I go. Being able to drag/drop an empty
object, and start building it up from scratch while viewing attributes
of it live, changing as things in the world change. The way debuggers
pop up when errors happen and I can drill down and edit methods and
fix bugs while the issue is happening.

Yes, swimming in a sea of live objects, everything tangible and real, because any change happens in split-second. I miss it, but it may not be optimal when battery power matters.

The language itself appeals to
me for its simplicity and ease of understanding. The environment is
nicely extensible with the outliner approach and morphic in general.

Interestingly, I have found people to be divided regarding simplicity. Glad you like that about it. Morphic… IMO Randy Smith deserves more credit than he has received for the basic principles there. John Maloney and Lars Bak did a lot to make it happen.



Things I don't like is how much of the VM is in C++. Having the JIT
and assembler, etc in Self would make it easier to hack on the
internals.

Amen! Had the project continued, I would have wanted to explore that.


I understand the intent of Klein was to achieve some of
this. The transporter approach of exporting changes is a bit fragile -
the overhead of managing what goes in what module, will filing in
clobber my running application, and issues like that make me dread
saving things sometimes.

Thank you. Good to know.


The VM (on Intel) being 32 bit and not
multi-core capable is a limitation for me too. Using native code
libraries is a bit painful but some of the work in the 'native' branch
that Russell has been doing looks very promising.

Yes. When we tried to popularize the work, people rejected Self because it needed a 16MB machine, which was more than most could afford.



> One reason this topic interests me is that I am watching the immense popularity of Swift, a somewhat different style of PL, and I am even enjoying Swift myself.

I'm a fan of Swift type languages as well. I like being able to use
the type system to prevent classes of programmer errors early. Some
blend of the Self dynamic environment with a modern type system would
be wonderful. I wonder what a "Self with types" could look like.


Agreed. I haven’t managed to get anyone to pay me to do it, though. And lots of fun to be had doing other things.