Re: Regarding Personal Programming paper

174 views
Skip to first unread message

Trygve Reenskaug

unread,
Jan 19, 2020, 7:04:20 AM1/19/20
to Marius - Adrian Francu, DCI-object-composition
On 31.12.2019 09:16, Marius - Adrian Francu wrote:
Hi Trygve,

I think the group notifications do not work. I wanted to say that I posted a comment regarding your paper.

I put the comment in the thread you started regarding this paper which is: https://groups.google.com/forum/m/#!topic/object-composition/BEgMfumpAdU

I hope you are ok. Have a happy new year. Do not give up. I hardly wait for you to say that you'll start on the process of putting your book on leanpub :). I know is not easy but I think I have an idea how to make it easier for you.

Best regards, 
Marius
Hi Marius,
I am sorry for the long delay in answering caused by a combination of family commitments and fighting Springer's computer systems for authors. (I'm again waiting for a message from them.)

The list hasn't responded yet, but I hope this will change. I am looking into three questions about the dissemination of the Loke ideas:
  1. Who are our target audience?  The first sentence in the article reads: "This article is dedicated to owners of an IoT, amateur programmers, popular science readers, and generally interested people". Include people interested in making tools for novice programmers and general toolmakers. (A professional geologist/application programmer who saw the demo immediately grokked its implications). A limiting factor is that there is no real tool people can play with, only a proof-of-concept implementation.

  2. How do we reach them? There has been 374 accesses to the article since it was published online on 22 Dec. The paper version will appear within a few months, and that may lead to more accesses. I'll try the Squeak and Pharo mailing lists when the paper version is out.  Can you think of any other channels we could use?

  3. What do we tell them? If I read you right, you distinguish between bottom-up and top-down approaches. This can lead to a bottom-up/top-down story where the UP meets the DOWN in the middle. UP: evolution from programing language statements through communication technology to objects providing service interfaces to their environment. DOWN: evolution from a perceived need through a structure of predefined objects to code for their interaction.
I won't do anything before the printed version is out. In the mean time, I have to convert from Windows 7 to 10 on my PC and laptop. I'm not looking forward to it.

Finally, there's the Working with Objects book. It was selling well, and Prentice-Hall never explained why they suddenly withdrew it from the market. A revised version could be interesting because people have still not internalized the object-based mental frame of reference. An additional chapter could bridge the gap between modeling and programming.
Do you have any ideas on how to market such a book?

Best
--Trygve
--

The essence of object orientation is that objects collaborate  to achieve a goal.
Trygve Reenskaug      
mailto: try...@ifi.uio.no
Morgedalsvn. 5A       
http://folk.uio.no/trygver/
N-0378 Oslo             
http://fullOO.info
Norway                     Tel: (+47) 468 58 625

Trygve Reenskaug

unread,
Jan 19, 2020, 7:37:17 AM1/19/20
to Marius - Adrian Francu, DCI-object-composition
On 31.12.2019 09:16, Marius - Adrian Francu wrote:
Hi Trygve,

I think the group notifications do not work. I wanted to say that I posted a comment regarding your paper.

I put the comment in the thread you started regarding this paper which is: https://groups.google.com/forum/m/#!topic/object-composition/BEgMfumpAdU

I hope you are ok. Have a happy new year. Do not give up. I hardly wait for you to say that you'll start on the process of putting your book on leanpub :). I know is not easy but I think I have an idea how to make it easier for you.

Best regards, 
Marius
Hi Marius,
I am sorry for the long delay in answering caused by a combination of family commitments and fighting Springer's computer systems for authors. (I'm again waiting for a message from them.)

The object-composition list hasn't responded yet, but I hope this will change. I am looking into three questions about the dissemination of the Loke ideas:

Marius - Adrian Francu

unread,
Jan 29, 2020, 5:30:17 PM1/29/20
to object-composition
Hi Trygve. Sorry for my late reply.
I hope also that the object-composition list will come with feedback also.
Regarding the book. I think you are right when you said that "people have still not internalized the object-based mental frame of reference".
Regarding the question "Do you have any ideas on how to market such a book?". I am not a marketing guy. But I strongly believe in the work you, and James Coplien, have done on this subject. That book is a good foundation for DCI. I know it might sound strange but if one person will be helped than I am OK, though I hope there will be more persons. I thought that I could help you in another way. For example me coming into Norvegia and for some days to discuss each chapter and then me, afterwards, to transcript what you say. I say this because "we know more than we can say and we say more than we can write". Maybe I am wrong, but here is about being sure that this oop, DCI will continue and I think an update of this book in format I mentioned might help. I am sure that than we can find persons who know and respect your work to spread the word.

Best regards,
Marius

Raoul Duke

unread,
Jan 30, 2020, 11:15:59 AM1/30/20
to object-co...@googlegroups.com
Everything here, and about DCI, and Personal Programming is truly terrific work. 

However... to be a 'wet blanket', I think it is still programming-in-the-hard. I think probably until we have more AGI/AI/ML tools spitting out programs from natural language interactions, helping user-developers discover and cover edge cases etc., like something from StarTrek, that programming will never be more personal-in-the-easy, the mainstream, than successful abominations hacked up in say excel or scratch. There's too much logic, too much state, too much essential complexity in programming, let alone software engineering.

Cf. Dr. Wing's "computational thinking" as an educational / pedagogical need.

but hey call me the eternal optimist.

Trygve Reenskaug

unread,
Feb 4, 2020, 10:02:08 AM2/4/20
to object-co...@googlegroups.com, Raoul Duke
Hi Raol,
You are right, Loke is still programming-in-the-hard. The difference is that it targets a different machine, namely a structure of communicating computers. This entails that the human user has a different mental  model of what computing is all about. (I'm surprised that you include ML with your exotic  tools. Isn't ML a 3GL since it targets a stand-alone von Neumann computer?)



I don't see you as a 'wet blanket', we can and should dream about the future while we work with the here and now. We can dream of a future where machines magically do what we need. Alan Kay (and others before him) wrote: The best way to predict the future is to create it. I have much fun pondering a future machine that will serve me without requiring technical skills on my part.  Programming-in-the-soft? I see Loke as a small step towards such a distant future. The notion of a computer may have merged into the environment and disappeared from sight. (What Kevin Kelly calls the single, global machine). 3GLs like Fortran, Algol, C, ... will be for the specially interested. The notion of a program has changed with Loke and is likely change more profoundly  in the future.  Programming as an activity will be very different. That's the way I see it, your vision may be different.

You appear to like what you have seen -- thank you. There were 16 accesses to the article yesterday making it a grand total of 467. I find that satisfactory, considering that article hasn't been published on paper yet.

Best
--Trygve
--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/object-composition/CAJ7XQb6X5gzGxBBaq8Zgc%3DnYFYt6Y%2Bxw_ZHV6q0mY%2BSr2YfOyQ%40mail.gmail.com.

Quang

unread,
Feb 4, 2020, 12:50:27 PM2/4/20
to object-composition
My bet is to make DCI work with Scratch first:

I teach my 9 year old son how to do Scratch and we are stuck at object communication.
But 18 year old scatcher can do this: https://scratch.mit.edu/projects/22620682/


On Tuesday, February 4, 2020 at 7:02:08 AM UTC-8, trygve wrote:
Hi Raol,
You are right, Loke is still programming-in-the-hard. The difference is that it targets a different machine, namely a structure of communicating computers. This entails that the human user has a different mental  model of what computing is all about. (I'm surprised that you include ML with your exotic  tools. Isn't ML a 3GL since it targets a stand-alone von Neumann computer?)



I don't see you as a 'wet blanket', we can and should dream about the future while we work with the here and now. We can dream of a future where machines magically do what we need. Alan Kay (and others before him) wrote: The best way to predict the future is to create it. I have much fun pondering a future machine that will serve me without requiring technical skills on my part.  Programming-in-the-soft? I see Loke as a small step towards such a distant future. The notion of a computer may have merged into the environment and disappeared from sight. (What Kevin Kelly calls the single, global machine). 3GLs like Fortran, Algol, C, ... will be for the specially interested. The notion of a program has changed with Loke and is likely change more profoundly  in the future.  Programming as an activity will be very different. That's the way I see it, your vision may be different.

You appear to like what you have seen -- thank you. There were 16 accesses to the article yesterday making it a grand total of 467. I find that satisfactory, considering that article hasn't been published on paper yet.

Best
--Trygve

On 30.01.2020 17:15, Raoul Duke wrote:
Everything here, and about DCI, and Personal Programming is truly terrific work. 

However... to be a 'wet blanket', I think it is still programming-in-the-hard. I think probably until we have more AGI/AI/ML tools spitting out programs from natural language interactions, helping user-developers discover and cover edge cases etc., like something from StarTrek, that programming will never be more personal-in-the-easy, the mainstream, than successful abominations hacked up in say excel or scratch. There's too much logic, too much state, too much essential complexity in programming, let alone software engineering.

Cf. Dr. Wing's "computational thinking" as an educational / pedagogical need.

but hey call me the eternal optimist.

--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composition+unsub...@googlegroups.com.

James O Coplien

unread,
Feb 4, 2020, 4:44:16 PM2/4/20
to object-co...@googlegroups.com
Has anybody, ever, tried having a layperson try to specify anything, at all, in an environment like Loke? If so, how much training did it take? And is there anything about any of these environments that offers any demonstrable advantage over any current, broadly available programming technology?

Are there any cognitive learning models that formulate the knowledge gaps and postulate that someone can leap them without substantial training?

Or is it just speculative hope that some nerdish ideas may bridge the gap to human comprehensibility?



To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/object-composition/c424f8c1-8ed2-4dbf-83b5-b4c5078e3995%40googlegroups.com.

Trygve Reenskaug

unread,
Feb 5, 2020, 5:39:26 AM2/5/20
to object-co...@googlegroups.com, James O Coplien
Comments inline.


On 04.02.2020 22:44, James O Coplien wrote:
Has anybody, ever, tried having a layperson try to specify anything, at all, in an environment like Loke? If so, how much training did it take? And is there anything about any of these environments that offers any demonstrable advantage over any current, broadly available programming technology?
  1. The first were the people at Xerox PARC when they developed GUIs in the seventies and made the disruptive change from the remember-and-type kind of user interfaces to the see-and-click kind. There are now 3.5 billion smartphone owners in the world (45% of the total population). This could not have happened without the foundation created at PARC.

  2. IFTTT is a primitive environment for programming by composition:
    If This Then That
    , also known as IFTTT is a free web-based service to create chains of simple conditional statements, called applets. An applet is triggered by changes that occur within other web services such as Gmail, Facebook, Telegram, Instagram, Pinterest, and hundreds of other
    s.
    Many non-professionals are using IFTTT and demonstrate its simplicity as an advantage over  current, broadly available programming technology.

  3. Futurehome is another offer for smart home automation that connects with more than 50.000 devices from over 1000 different brands. Programming is by composition in something they call flows.

  4. I am sure there are many other examples of layperson programming without me being aware of them.
I see the above as examples applications of the PARC technology. They have laypersons specifying home automation algorithms and they do it today. The advantage is that laypeople create programs without having to use any current, broadly available programming technology and without prior extensive training.
Loke is extending the programming facilities from special-purpose to general-purpose programming.


Are there any cognitive learning models that formulate the knowledge gaps and postulate that someone can leap them without substantial training?
The evolution is experience driven, theory comes far behind. AFAIK, theory has not had any place in the innovations at PARC, Apple, and elsewhere. Notice that the new technology comes on top of, not as a replacement of,  current technology.


Or is it just speculative hope that some nerdish ideas may bridge the gap to human comprehensibility?

As I have shown above, there is only a small but essential step from the current special-purpose layperson programming to Loke's general purpose computer and programming models. I see it as neither speculative nor nerdish.

I think it is worth noting the I started writing my current article 5 years ago. At the time, it could be called speculative and nerdish. Today, reality has caught up with the speculations.

Best
--Trygve

https://link.springer.com/article/10.1007%2Fs10270-019-00768-3

James O Coplien

unread,
Feb 5, 2020, 6:24:07 AM2/5/20
to Trygve Mikkjel Heyerdahl Reenskaug, object-co...@googlegroups.com

On 5 Feb 2020, at 11.39, Trygve Reenskaug <try...@ifi.uio.no> wrote:

Comments inline.

On 04.02.2020 22:44, James O Coplien wrote:
Has anybody, ever, tried having a layperson try to specify anything, at all, in an environment like Loke? If so, how much training did it take? And is there anything about any of these environments that offers any demonstrable advantage over any current, broadly available programming technology?
  1. The first were the people at Xerox PARC when they developed GUIs in the seventies and made the disruptive change from the remember-and-type kind of user interfaces to the see-and-click kind. There are now 3.5 billion smartphone owners in the world (45% of the total population). This could not have happened without the foundation created at PARC. 
I suspect there was some training. Do we know? Do we know how long it took them to master the results? And what would constitute “mastery”? We have 8-year-olds playing with Basic today and there are many, many efforts where 12-year-olds are learning Java. What evidence do we have that this approach either lowers the entry barrier or accelerates the maturation process? It seems that the dominant factors in this learning are the plasticity of child mental models rather than a tuning of some expression to a hypothetical model of either cognition or learning. See my research on this.

If they were already available, why do we need something new?


  1. IFTTT is a primitive environment for programming by composition: 
    If This Then That
    , also known as IFTTT is a free web-based service to create chains of simple conditional statements, called applets. An applet is triggered by changes that occur within other web services such as Gmail, Facebook, Telegram, Instagram, Pinterest, and hundreds of other
    s. 
    Many non-professionals are using IFTTT and demonstrate its simplicity as an advantage over  current, broadly available programming technology.
I feel that this is an unproven claim. Is there any empirical research to back it up? Have there been any real trials?


  1. Futurehome is another offer for smart home automation that connects with more than 50.000 devices from over 1000 different brands. Programming is by composition in something they call flows.
Yes, I understand Loke to this level. Your response would help me understand Loke better if I did not understand it to this point. It does not help me understand the answer to my question.

  1. I am sure there are many other examples of layperson programming without me being aware of them.
Good research starts with an understanding of prior art. I am looking only for a single instance of any published research substantiating any claims that Loke might be accessible to other than a skilled programmer.


I see the above as examples applications of the PARC technology. They have laypersons specifying home automation algorithms and they do it today. The advantage is that laypeople create programs without having to use any current, broadly available programming technology and without prior extensive training.
Loke is extending the programming facilities from special-purpose to general-purpose programming.

Are there any cognitive learning models that formulate the knowledge gaps and postulate that someone can leap them without substantial training?
The evolution is experience driven, theory comes far behind. AFAIK, theory has not had any place in the innovations at PARC, Apple, and elsewhere. Notice that the new technology comes on top of, not as a replacement of,  current technology.

So what experience does anyone other than yourself have with Loke?



Or is it just speculative hope that some nerdish ideas may bridge the gap to human comprehensibility?

As I have shown above, there is only a small but essential step from the current special-purpose layperson programming to Loke's general purpose computer and programming models. I see it as neither speculative nor nerdish.

I think it is worth noting the I started writing my current article 5 years ago. At the time, it could be called speculative and nerdish. Today, reality has caught up with the speculations.

That is the claim for which I am seeking some kind of substantiation. I, too, would like to hope. I can find hundreds of papers that make similar claims about analogous approaches, but none of them seems to have had staying power.

I personally make it a practice either to show the path to good research from my results, or to substantiate claims with empirical results.

Trygve Reenskaug

unread,
Feb 5, 2020, 9:10:29 AM2/5/20
to object-co...@googlegroups.com, James O Coplien


On 05.02.2020 12:24, James O Coplien wrote:


On 5 Feb 2020, at 11.39, Trygve Reenskaug <try...@ifi.uio.no> wrote:

Comments inline.

On 04.02.2020 22:44, James O Coplien wrote:
Has anybody, ever, tried having a layperson try to specify anything, at all, in an environment like Loke? If so, how much training did it take? And is there anything about any of these environments that offers any demonstrable advantage over any current, broadly available programming technology?
  1. The first were the people at Xerox PARC when they developed GUIs in the seventies and made the disruptive change from the remember-and-type kind of user interfaces to the see-and-click kind. There are now 3.5 billion smartphone owners in the world (45% of the total population). This could not have happened without the foundation created at PARC. 
I suspect there was some training. Do we know? Do we know how long it took them to master the results? And what would constitute “mastery”? We have 8-year-olds playing with Basic today and there are many, many efforts where 12-year-olds are learning Java. What evidence do we have that this approach either lowers the entry barrier or accelerates the maturation process? It seems that the dominant factors in this learning are the plasticity of child mental models rather than a tuning of some expression to a hypothetical model of either cognition or learning. See my research on this.
I'm talking about the use of computing power in general here, programming comes later. I know I didn't need any training for using see-and-click interfaces-- it was obvious. I don't think any of my grandchildren have had such training. There couldn't have been 3.5 million owners of smartphones if their use wasn't obvious.


If they were already available, why do we need something new?
There is a steady stream of innovations in the field of computing. Do you ask why we need them?




  1. IFTTT is a primitive environment for programming by composition: 
    If This Then That
    , also known as IFTTT is a free web-based service to create chains of simple conditional statements, called applets. An applet is triggered by changes that occur within other web services such as Gmail, Facebook, Telegram, Instagram, Pinterest, and hundreds of other
    s. 
    Many non-professionals are using IFTTT and demonstrate its simplicity as an advantage over  current, broadly available programming technology.
I feel that this is an unproven claim. Is there any empirical research to back it up? Have there been any real trials?
Of course. The are hundreds if not thousands of users of IFTTT programmming.



  1. Futurehome is another offer for smart home automation that connects with more than 50.000 devices from over 1000 different brands. Programming is by composition in something they call flows.
Yes, I understand Loke to this level. Your response would help me understand Loke better if I did not understand it to this point. It does not help me understand the answer to my question.
I have tried to answer your questions. Sorry if I have misunderstood them.


  1. I am sure there are many other examples of layperson programming without me being aware of them.
Good research starts with an understanding of prior art. I am looking only for a single instance of any published research substantiating any claims that Loke might be accessible to other than a skilled programmer.
Prior art in this case are existing solutions. I rather believe that spear-head developers measure their success from the response of their users rather from publishing the results of their endeavors.



I see the above as examples applications of the PARC technology. They have laypersons specifying home automation algorithms and they do it today. The advantage is that laypeople create programs without having to use any current, broadly available programming technology and without prior extensive training.
Loke is extending the programming facilities from special-purpose to general-purpose programming.

Are there any cognitive learning models that formulate the knowledge gaps and postulate that someone can leap them without substantial training?
The evolution is experience driven, theory comes far behind. AFAIK, theory has not had any place in the innovations at PARC, Apple, and elsewhere. Notice that the new technology comes on top of, not as a replacement of,  current technology.

So what experience does anyone other than yourself have with Loke?
None, of course.  I don't expect that a new and disruptive technology springs out from nothing with a ready body of users and research papers.


Or is it just speculative hope that some nerdish ideas may bridge the gap to human comprehensibility?

As I have shown above, there is only a small but essential step from the current special-purpose layperson programming to Loke's general purpose computer and programming models. I see it as neither speculative nor nerdish.

I think it is worth noting the I started writing my current article 5 years ago. At the time, it could be called speculative and nerdish. Today, reality has caught up with the speculations.

That is the claim for which I am seeking some kind of substantiation. I, too, would like to hope. I can find hundreds of papers that make similar claims about analogous approaches, but none of them seems to have had staying power.
Perhaps, after many unsuccessful attempts, one of them will succeed?


I personally make it a practice either to show the path to good research from my results, or to substantiate claims with empirical results.
Good for you. I doubt if any of the truly innovative user interfaces we are using today have followed this ideal path. 
--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

James O Coplien

unread,
Feb 5, 2020, 10:28:29 AM2/5/20
to Trygve Mikkjel Heyerdahl Reenskaug, object-co...@googlegroups.com

On 5 Feb 2020, at 15.10, Trygve Reenskaug <try...@ifi.uio.no> wrote:

I rather believe that spear-head developers measure their success from the response of their users rather from publishing the results of their endeavors.

The research community is starting to be careful to use the term “outcome” as distinct from “output.” “Output” is benefit-neutral: anyone can write a program, design a language, or create a design method, write a paper on it, and make it available in some show-and-tell. There is a growing call for evidence of reproducible positive results.

What you classify as “spear-head developers” (whatever that means) have work that is usually categorized as “experience papers” or “experience reports” at the likes of OOPSLA and ECOOP. Landmark papers usually speak to a newly substantiated theory or compelling experimental results or research data that establish new, instrumented understanding.

I would just point out that we have ample opportunity to contribute to the archival literature in spite of your apparent objections (such as what follows here)

On 5 Feb 2020, at 15.10, Trygve Reenskaug <try...@ifi.uio.no> wrote:

So what experience does anyone other than yourself have with Loke?
None, of course.  I don't expect that a new and disruptive technology springs out from nothing with a ready body of users and research papers.

Just to note that some folks have published such research papers on DCI are are working on more. I guess the world bypassed part of your expectations with published research papers on DCI. I think the world has bypassed the rest of your expectations with real DCI user communities. I would challenge the Loke community to do the same. If they don’t, I think it will have been wasted work doomed to obscurity.

I am a bit disappointed if no real people other than you have tried Loke. I learned much about trygve by engaging real (research) users. It has gotten good enough to be the basis for studies with good, hard research results.

Anyone can publish what sounds like a good idea. The hard work comes in formally validating it, establishing that it works, and promulgating it. You’re right in that PPS didn’t do this. Let’s have a look at where Smalltalk and PPS are today relative to C# and Microsoft. We know that Kay’s ideas were partly mistranslated into the Smalltalk we all know, and we know that Smalltalk is essentially dead. I think you may have put your finger on one of the reasons. Thanks. But I hope there is a lesson to be learned here for Loke.

Marius - Adrian Francu

unread,
Feb 7, 2020, 8:01:21 AM2/7/20
to object-composition

Hi Trygve, 

 

My first feedback was related with what I have read and trying to understand the concepts. As I said the first time, I read it several times to be sure I understand the idea(s).

 

I would like to touch some points that happened meanwhile regarding this:

- I wrote to Alan Kay on 29 November about your paper. I thought that a review from his part would be important. But till now no response - response in the sense that he read my email/message. In rest the feedback should be toward you , of course.

- Meanwhile, I tried to play with it with the hope of explaining my daughter certain things. It was not easy, is not easy to setup. Also, at this moment I doubt she will like it. 

- My intention was also to setup an experiment here in my firm (an IT firm). The intention was to use inexperienced persons(juniors). But I am still struggling to prepare it and for me this is information. At this moment I doubt they will like it in this form. Is not easy ☹ and in me generates frustration.

I begin to have big doubts about laypersons understanding this.

I say about experiment because I am a strong believer in the idea of praxis(theory informed practice). By theory I mean like those researches made by neuro-scientists, or cognitive psychologists.

- I gave this paper to the persons who helps me when reviewing my writings and no feedback(5 of them). And I ask for feedback. I tried not to force them because ,maybe, they would have made a politically correct answer and I do not want this at all. I know it has no statistic relevance, but there it was. And I begun to think even more and see where I might be wrong.

 

When writing these lines, I feel a contradiction. Because I think that in the same time that your paper is an intuition or vision or perception or…. And this is something else. If is being seen from this perspective, like vision, then is different.


Best regards,

Marius

Trygve Reenskaug

unread,
Feb 7, 2020, 11:32:59 AM2/7/20
to object-co...@googlegroups.com, Marius - Adrian Francu
Marius,
I have never been able to make Alan Kay interested in my ideas. I think we went our different ways after we separated in 1978. I don't know his visions to a sufficient depth to explain the difference.

Thanks for presenting Loke to your daughter an others. How did you do it? Did you have a demo?
--Trygve
--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

Marius - Adrian Francu

unread,
Feb 7, 2020, 1:53:05 PM2/7/20
to object-composition
It did not work as expected Trygve. Is not easy. I know this is not what you might have hoped to hear :(.

"I have never been able to make Alan Kay interested in my ideas" - >strange. I mean... ok, he might not agree and is ok but I would have hoped to tell you what is not ok or how he sees it. In this light, among others also, I am so happy that James Coplien is here and says what he thinks and is near you. I completely understand and agree with what James Coplien wrote on this thread and I am sure he respects you profoundly.

Please don't be upset.

Regards,
Marius

James Coplien

unread,
Feb 8, 2020, 5:17:23 AM2/8/20
to object-co...@googlegroups.com


On 7 Feb 2020, at 17.32, Trygve Reenskaug <try...@ifi.uio.no> wrote:

I have never been able to make Alan Kay interested in my ideas. I think we went our different ways after we separated in 1978. I don't know his visions to a sufficient depth to explain the difference.


It seems as though there may have been a disconnect earlier than that. As early as 1967 Kay said he wanted to get rid of data in his object machine, which was ideologically patterned much after the Burroughs 5000 series machines of the era.


In Data, Context, and Interaction, it is one of the three pillars of the paradigm.

I’ve been going through Kay’s reflections and have found a number of other interesting disconnects between his OO vision, and DCI (and, by extension, Loke). I am still sorting it all out. It’s a fascinating comparison.

Trygve Reenskaug

unread,
Feb 8, 2020, 12:30:41 PM2/8/20
to object-co...@googlegroups.com, Marius - Adrian Francu

Dear Marius,
I am very grateful for you trying out the article on such a variety of people. I am also grateful for the informative result: This audience is less than enthusiastic about the article. I must think more since your readers do not grok it.

May be the article is premature; people should have used Loke for their own purposes before reading it. A usable and generally available version is therefore needed. Such a version does not exist and I do not have the resources to build one.

A second-best solution would be to present Loke with a live talk and demonstration, documenting it with the article. Again, I do not have the resources to do this.

A third-best approach is that potential readers of the article first see my 5-minute video. It may make them understand what it is all about before they read the words. My grandson tells me that the video quality is so bad that I should be ashamed to show it. I still hope it conveys the essentials:
http://folk.uio.no/trygver/2017/Ellen-video-2.6(copy22)-%20AVCHD.H264.1440x1080p24.mp4

Marius: Please look at it and give me your feedback.

---Trygve

--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

Raoul Duke

unread,
Feb 8, 2020, 2:53:23 PM2/8/20
to object-co...@googlegroups.com, Marius - Adrian Francu

Matthew Browne

unread,
Feb 8, 2020, 3:11:44 PM2/8/20
to object-co...@googlegroups.com
On 2/8/20 12:30 PM, Trygve Reenskaug wrote:
> This audience is less than enthusiastic about the article. I must
> think more since your readers do not grok it.

Or it could simply be that it's a long article and it didn't seem
immediately relevant to them, so they haven't read it. Or maybe they're
simply busy. I wouldn't assume that the way the article is written is
the problem.

Trygve Reenskaug

unread,
Feb 8, 2020, 3:41:04 PM2/8/20
to object-co...@googlegroups.com, Matthew Browne, Marius - Adrian Francu
Certainly and hopefully. What about starting with  this 5 minute excerpt
http://folk.uio.no/trygver/2017/Ellen-video-2.6(copy22)-%20AVCHD.H264.1440x1080p24.mp4
...or 1.5 minute ditto?
http://folk.uio.no/trygver/themes/Personal/PersonalProgramming.mp4

Best
--Trygve
PS: The reason for Alan Kay not answering me must have been that I used a dud address. Today, I tried a new one and he answered my greeting within an hour.
PPS: The need for Ellen to share a vocabulary with the system is mentioned in the article's section 2.1

James O Coplien

unread,
Feb 9, 2020, 8:20:27 AM2/9/20
to object-co...@googlegroups.com
Or it could just be that it can’t work for reasons that may be clear to readers with the benefit of a different grounding.

Sendt fra min iPhone

> Den 8. feb. 2020 kl. 20.11 skrev Matthew Browne <mbro...@gmail.com>:
>
> On 2/8/20 12:30 PM, Trygve Reenskaug wrote:
>> This audience is less than enthusiastic about the article. I must think more since your readers do not grok it.
>
> Or it could simply be that it's a long article and it didn't seem immediately relevant to them, so they haven't read it. Or maybe they're simply busy. I wouldn't assume that the way the article is written is the problem.
>
> --
> You received this message because you are subscribed to the Google Groups "object-composition" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/object-composition/712f1401-77d2-1108-079f-69fb48dd5edb%40gmail.com.

Trygve Reenskaug

unread,
Feb 11, 2020, 8:10:23 AM2/11/20
to Marius - Adrian Francu, object-co...@googlegroups.com
Hi Marius,

I see that there is something wrong with my approach. The article describes the solution to a need, but potential readers don't know what the need is or may not see it as a problem. It was not a good idea to invite my friends to read the article before establishing a common understanding of what it is all about.

I have narrowed the problem down to supporting laypeople who need to master their own smart home. They see their home as a machine consisting of sensors, actuators, and general services, and they want to make it both comfortable and effective according to their personal needs and preferences. They reach this goal by programming their machine; I call it personal programming. The challenge is to provide them with an effective programming environment.

 The choice of an acceptable solution depends on the expected number of home-owners: A solution suitable for 10,000 owners is not likely to be feasible for 100 million. I design for the latter number: There are 3.5 billion smartphones in the world today. Ref 2 below is projecting the number of U.S. smart homes to exceed 35 million by 2021. I can only guess at the number of personal programmers in the whole world some years ahead, but I design my solution for something like 100 million to be on the safe side. I can't see so many people learning a 3GL within the available time, so a new approach is needed. This approach must be easy to understand and use for the layperson, and it must offer all the capabilities of the networked computers.

Smartphone owners are used to working through apps, and the owner of a smart home will naturally want to work with their program through an app. The challenge is to make the architecture of the app's underlying program coincide with the owner's mental model of their machine. The program itself can be invisible. The problem to be solved is to provide laypeople with an adequate mental model and programming environment.

I call my solution Loke and demonstrate it with an example. A woman, Ellen, wants to go on a long hike on the morrow. She creates a smart alarm clock that will wake her at 06:00, but only if it is going to be a dry day. Her programming app provides her with a 'desktop' of icons that represent things in her environment. The icons stand for programs that may be local or remote; they are created by the vendors of her smart things or by other experts. Ellen composes her program as shown in this screen dump:
http://folk.uio.no/trygver/themes/Personal/PersonalProgramming.mp4

For further reading, see this article

Personal programming and the object computer
https://doi.org/10.1007/s10270-019-00768-3

Enjoy
--Trygve

 

 

 

1)
https://www.statista.com/statistics/330695/number-of-smartphone-users-worldwide/

2)
https://www.spglobal.com/marketintelligence/en/news-insights/blog/smart-homes-in-the-u-s-becoming-more-common-but-still-face-challenges
--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

James O Coplien

unread,
Feb 11, 2020, 11:33:10 AM2/11/20
to object-co...@googlegroups.com, Marius - Adrian Francu


On 11 Feb 2020, at 13.10, Trygve Reenskaug <try...@ifi.uio.no> wrote:

I have narrowed the problem down to supporting laypeople who need to master their own smart home. 

Somehow, this doesn’t seem right — or, if it is the scope of this particular paper, it’s not a very exciting finding. Our new house is more or less a smart home and we feel we’ve mastered that quite fine with commodity technology. The main challenge is internet reliability.

I remember you telling of Ellen wanting to program some appliance to awaken her for a morning run were the weather suitable. That was one of the early stories for the approach you are advocating.

I think the problem of supporting layerpersons who want to manage their smart home is different.

I think the problem that Loke purports to solve is therefore more broad. I agree that it is imperative to have a good problem statement; otherwise, you have difficulty assessing whether any proposed solution solves anything.

What problem are you trying to solve?

Marius - Adrian Francu

unread,
Feb 11, 2020, 4:47:27 PM2/11/20
to object-composition
Hi Trygve,

Sorry again for my late reply. Is late and I hope I am coherent.
Below I will put your text in quotes and my response after each text.

-"see my 5-minute video. It may make them understand what it is all about before they read the words…. Please look at it and give me your feedback" - > I think the intention is clear. I think I understand what your grandson wants to say but none of us here are marketing guys. When viewing this video 2 things popped up in my head:
* Flash Professional IDE: I am speaking here about an earlier version of it(version 4,5). I recall it because there I noticed how code was put in a similar way(attached) to the graphic elements. And when selecting the element code appeared. This IDE was mostly for designers to put certain code, but not complicated one. And I begun to remember how that stuff was being maintained for complex scenarios, it was not easy because pieces code was scattered all over the place.

* Time is needed to understand the environment where you work there. I found it not intuitively related with the environments I am used with (. Net, Visual studio, ReSharper, SQL server management studio,...). I understand that what you show is a demo on a platform you choose because you are confortable with it. Personally it was/is hard for me to do the same things you do there step by step. Again I understand that it's something different which of course needs time to accommodate . Personally I want to try it because is different and maybe it will help me with biases I have, but I would not expect others to do that and I think it's ok/normal - is like choosing a book to read ; some will chose one, some another, or some just a link.
For me, as a video, to share the idea/vision is pretty clear what you want to communicate . Yes, it could be done in fancier ways, but here was about to share a vision. - at least this is how I interpret it. But it's me and I am not statistically relevant at all.

-"The article describes the solution to a need, but potential readers don't know what the need is or may not see it as a problem." and James reply "What problem are you trying to solve?"
When I read your article although you spoke about houses and I was thinking about turbines. I know it sounds strange. For these turbines we have engineers which are on the floor where the turbine is. I say this business example because of two reasons:
-un articulated needs of people which are needed to be discovered - which is a delicate thing to do because of the specificity of the domain. ;
- technicality - The way it is now in industry is a cascade of technologies and we can't force one. Look at DCI James and you struggle with. Multiple technologies have to be touched/considered.

Now, based on two points above and in reading your paper I was thinking at that moment: "Hmm. Do we have engineers who want to configure them selves certain data they want to see from turbines? Maybe in a similar way Trygve done but with our technology stack in a very specific way?" And I realized that I was inspired for a specific feature which maybe it will be analyzed.

Side note: When seeing the video I was looking at DCI how is combined put in practice on a real sample.

Conclusion:Too much text, I know. But explicit premises are needed before a conclusion:
That's why I saw/interpreted your paper as a vision, inspiration. But others maybe not because did not resonated with sample, premises,...
Maybe the problem you are trying to solve is about making life more easier for persons who do not know programming but who want to do more deep stuff on the problems they have. - >Alan Kay vision of that small computer machine, among other things, implied (implicitly, I think) that the kid knew things to do on it. Thus meant some learning for that kid to work with that software.

Question : I saw you contacted Alan Kay and he responded to you. What did he say?

Best regards,
Marius

James O Coplien

unread,
Feb 11, 2020, 5:04:28 PM2/11/20
to object-co...@googlegroups.com


On 11 Feb 2020, at 21.47, Marius - Adrian Francu <marius...@gmail.com> wrote:

Maybe the problem  you are  trying to solve is about making life more easier for persons who do not know programming but who want to do  more  deep stuff on the problems they have


Is there anyone in our field *not* claiming to try to solve that problem? Even programmers know programming only to various degrees. One premise of DCI is that few programmers understand what object-oriented programming is.

Further, how would you know if it were solved?

And why should the solution be “deep stuff”? Done well, “shallow” stuff should suffice. To succeed the solution must be intellectually shallow (which is more or less what it means to meet the programmer mental model: the match can be solved with right-brained cognition rather than the more analytical (“deeper”) left-brained volition).

In early days Trygve used the term “intuitive” much in describing these things. Bran Seliç and I pointed out to him that this is probably a bad word, and any UX person will tell you that there is nothing universal or fundamental about intuition. Intuition is shaped by culture and individual experience: therefore, there is no technical solution that can satisfy it, short of the programmer designing their own programming language. (And even then, the meta-language now becomes the issue.)

We in fact did a lot of research on this back in Bell Laboratories but it failed to “solve the problem” for all the obvious reasons (Marius, have your daughter design a programming language…) as well as a few not-so-obvious ones (it is REALLY difficult to identify what is stable in a domain, and which can be encoded in a language). This leaves you at the mercy of libraries, and the programming problem reduces either to memorizing a litany of libraries or of semantic advances in AI-like facilities in searching for libraries suitable to the task at hand, expressed in natural language.

There seems to be none of this on the table in the current dialogue.

Marius - Adrian Francu

unread,
Feb 12, 2020, 2:20:41 PM2/12/20
to object-composition
Hi James,

Please see below.

* "Is there anyone in our field *not* claiming to try to solve that problem? Even programmers know programming only to various degrees"
Is true that programmers know programming only to various degrees. What I am afraid now is that a lot of them seem ok with what they now and with no desire of improvement.
I was trying to think, for example, how an engineer might configure an alghorithm but in a visual way andwith small code . But but is hard. I know that in the past some wanted to generate code from UML diagrams.

* "Further, how would you know if it were solved?"
My opinion alone is nothing. Here I need to behave as a scientist with proper research and experiments. And this is not easy at all. Otherwise I would only be biased and is not ok. I have accepted that there is an essential complexity and often also an accidentally one.


* "And why should the solution be “deep stuff”?"
Now in seeing this question I realized that this "deep stuff" is relative. I imagined something hard to take care for that person who nedded some programming skills to take care off.

* "Intuition is shaped by culture and individual experience"
Yes indeed intuition is compressed experience of an individual.

* "therefore, there is no technical solution that can satisfy it, short of the programmer designing their own programming language."
And Weinberg was right when he said quality is emotional, political and relative. That's why I think "leaves you at the mercy of libraries, and the programming problem reduces either to memorizing a litany of libraries" :(

*"Marius, have your daughter design a programming language…" :)) naaa, I begun laughing when I saw Swift. And there, I imagine, are rather smart people. They tried to fix the mistakes from other languages but …

*"There seems to be none of this on the table in the current dialogue." Yes, so it seems.

Regards,
Marius

Raoul Duke

unread,
Feb 12, 2020, 2:42:01 PM2/12/20
to object-co...@googlegroups.com
i sorta wish we knew what the essence of programming was. i feel like we skirt around the issue. like really most things are just state machines, but instead we go and write spaghetti code with nested conditional hell. there are probably inflection points where we do have to use a different paradigm. either so the computer knows, or so the human can grok and manage it.

James O Coplien

unread,
Feb 12, 2020, 4:30:23 PM2/12/20
to object-co...@googlegroups.com


On 12 Feb 2020, at 19.41, Raoul Duke <rao...@gmail.com> wrote:

i sorta wish we knew what the essence of programming was.

Profound.

Kinda like asking (for an author): “I sorta wish we knew what the essence of writing was.”

It’s not penmanship or the kind of ink or pen you use.

And that is no less true than that the solution to programming problems lies in technology.

James O Coplien

unread,
Feb 12, 2020, 4:31:11 PM2/12/20
to object-co...@googlegroups.com


On 12 Feb 2020, at 19.20, Marius - Adrian Francu <marius...@gmail.com> wrote:

Yes indeed intuition is compressed experience of an individual. 

Second profound thing in this thread today.

Trygve Reenskaug

unread,
Feb 13, 2020, 3:35:56 AM2/13/20
to object-co...@googlegroups.com
 
On 12.02.2020 20:20, Marius - Adrian Francu wrote:
* "Intuition is shaped by culture and individual experience" 
Yes indeed intuition is compressed experience of an individual. 
There is also creativity


Daniel P

unread,
Feb 14, 2020, 1:24:16 PM2/14/20
to object-composition
On Wednesday, February 12, 2020 at 2:20:41 PM UTC-5, Marius - Adrian Francu wrote:

I was trying to think ... how an engineer might configure an algorithm but in a visual way and with small code . But but is hard. I know that in the past some wanted to generate code from UML diagrams.

Predating UML, in the late 1980's while at a Canadian bank, and again in 2000 at Charles Schwab, I had the dubious pleasure of being introduced to a product called "Software Through Pictures".  My biggest takeaway was that while a picture is indeed worth a thousand words, tens of thousands of pictures are a problem. Later on, I had the genuine pleasure of interacting with H. S. Lahman on comp.object, who appeared on the obsessional side with this thing called "Executable UML", but even at the time it was clear that that thing had no legs. There were no layers of abstraction, it was all flat. Effectively, "Executable UML" was a programming language, just not a very good one. None of these things could compete against a programmer with a text editor.  

Daniel

Raoul Duke

unread,
Feb 14, 2020, 1:38:11 PM2/14/20
to object-co...@googlegroups.com
i know! let us all of us always approach every question of ux in coding as an all or nothing proposition! that way we can really make progress! /s

Quang

unread,
Feb 14, 2020, 1:47:23 PM2/14/20
to object-composition
Yep, picture is indeed worth a thousand words

https://www.itrw.net/wp-content/uploads/2016/06/server_spaghetti_1.jpg

vs

https://www.itrw.net/wp-content/uploads/2016/06/server_spaghetti_4.jpg

- "a programmer with a text editor"
Not one, but thousand of programmers looks at a sea of code through a narrow view of text editor + a tons of emails/chat to discuss 1 line of code (what is it doing?...)
There is a hard limit for us to maximize our skill to deal with this. Unless we are creative and open to learn a new way of doing this.

/quang

Daniel P

unread,
Feb 14, 2020, 8:52:37 PM2/14/20
to object-composition
On Friday, February 14, 2020 at 1:47:23 PM UTC-5, Quang wrote:
Yep, picture is indeed worth a thousand words

https://www.itrw.net/wp-content/uploads/2016/06/server_spaghetti_1.jpg

vs

https://www.itrw.net/wp-content/uploads/2016/06/server_spaghetti_4.jpg

- "a programmer with a text editor"
Not one, but thousand of programmers looks at a sea of code through a narrow view of text editor + a tons of emails/chat to discuss 1 line of code (what is it doing?...)

More likely, a manageable sized team on a shared git repository communicating through issue logs and pull requests. But there's no question that the little programmer with their humble text editor stood against "Software Through Pictures", "Rational Rose", the Shlaer and Mellor methodology, the Booch methodology,  Executable UML, a mountain of books by Booch, Rumbaugh, and others, the consulting houses ... and remained standing. Of the other things, about as much remains as the old deities in Neil Gaiman's American Gods.

Unless we are creative and open to learn a new way of doing this.

It is okay to dream, but best not to dream about Executable UML :-) My point was a narrow one.

Daniel 

James O Coplien

unread,
Feb 15, 2020, 4:46:49 AM2/15/20
to object-co...@googlegroups.com
We played with both of these ideas at Bell Labs. STP was indeed a dead end.

Bran Seliç and crew got a long ways with UML-cum-programming language (I even wrote the foreword for their book) though they made some claims that even then they could not substantiate (e.g., that it was good for real time).

I’m reminded of what Barstow (I think) said: No matter how high-level, it’s still programming. Programming requires some kind of language — be it graphical or textual, it’s still a language. Languages come out of culture and are very idiomatic. One could even write a book about how fundamental their idiomatic nature is.

--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

Trygve Reenskaug

unread,
Feb 16, 2020, 6:08:59 AM2/16/20
to object-co...@googlegroups.com
Programming is much more than writing a text in some programing language. Separation of concerns is, IMO, of the first importance. An over-simplified sketch of one way of achieving a separation of concerns hierarchy:
  1. A universe of objects. E.g., an IoT.

  2. Each object encapsulates state and behavior. The encapsulation separates the object into an outside and an inside.

  3. The outside is known by its globally unique ID and its provided message interface.  Objects in its environment see it as e.g., a RESTful server or they can access it through SOAP.

  4. The inside can be defined by a Context, recursively.

  5. The inside can be a universe of objects packaged according to the Facade pattern  to make it appear as an object.

  6. This inside universe of objects can be coded with Python, C, C+, etc.
just my 2¢

Daniel P

unread,
Feb 16, 2020, 2:11:58 PM2/16/20
to object-composition
On Sunday, February 16, 2020 at 6:08:59 AM UTC-5, trygve wrote:
Programming is much more than writing a text in some programing language. Separation of concerns is, IMO, of the first importance. An over-simplified sketch of one way of achieving a separation of concerns hierarchy:
  1. A universe of objects. E.g., an IoT.

  2. Each object encapsulates state and behavior. The encapsulation separates the object into an outside and an inside.

  3. The outside is known by its globally unique ID and its provided message interface.  Objects in its environment see it as e.g., a RESTful server or they can access it through SOAP.

  4. The inside can be defined by a Context, recursively.

  5. The inside can be a universe of objects packaged according to the Facade pattern  to make it appear as an object.

  6. This inside universe of objects can be coded with Python, C, C+, etc.
just my 2¢

I'm sympathetic to this perspective. I think where StP, Rational Rose, Executable UML et al went wrong was focusing on two way code generation between the pictures and the "inside universe of objects".  The result - too many pictures. I don't think that work, as extensive and well funded as it was, spanning the 80's and 90's, brought us any closer to a CAD design like approach to software.

Daniel

Raoul Duke

unread,
Feb 16, 2020, 2:13:33 PM2/16/20
to object-co...@googlegroups.com
it isn't that there are too many pictures. 

Matthew Browne

unread,
Feb 16, 2020, 4:58:40 PM2/16/20
to object-co...@googlegroups.com

One thing I don't understand about this is why it's necessary to bring in DCI, or to be specific, the concept of a Context composed of interacting roles. It seems like the target use cases are simple enough that simple object-orientation (as per the original vision) would work fine. If I were teaching a beginning programmer about object orientation, I certainly wouldn't want to show them complex class hierarchies as in Java, but I don't think I'd jump right into DCI either. DCI could perhaps still be the underlying model of a visual programming tool, but for any programming environment that includes a text-based component, it seems like there's enough to understand with the concepts of objects and their state and behavior. A separate role structure that doesn't get merged with the data structure until run-time seems like a lot for a novice to take in. Ultimately it makes code easier to understand, but I think there's still a non-trivial learning curve even for someone without class-oriented baggage.

My more general impression of this is that there's a great vision here, but a lot of practical considerations and maybe even issues in the basic design still to be worked out, as Cope and others have pointed out. I think working with people in the field who have researched this specific topic (teaching programming to non-programmers) for decades could be very helpful. Non-programmers include children who have yet to learn it, so this includes those who work in educational technology.

As far as professional programmers not "grokking" the vision of empowering lay people to write their own programs, I'm sure there's some truth in that, but I think there are also a lot of professional programmers who would be on board with this and understand that it could be a win-win for society as a whole. But that doesn't necessarily mean they're going to leap at the chance to be involved with this if it's outside their primary area of interest or expertise, or that they're necessarily going to agree that Loke is the best solution (if they know enough to make such an evaluation). Most professional programmers will probably be much more interested in full DCI than Personal Programming because it's simply more directly relevant to them, and it still has the benefit of appealing to professional programmers who are  passionate about well-aligned software that empowers the user.

--
You received this message because you are subscribed to the Google Groups "object-composition" group.
To unsubscribe from this group and stop receiving emails from it, send an email to object-composit...@googlegroups.com.

Trygve Reenskaug

unread,
Feb 17, 2020, 5:31:48 AM2/17/20
to Matthew Browne, object-co...@googlegroups.com
Matthew ,
I see the big misunderstanding.

Ellen is not programming a von Neumann machine, but an object computer

The von Neumann machine is depicted in figure 1 in my article. An object computer is thousands and thousands of von Neumann computers hooked together by a very fast network. Ellen programs her object computer with the DCI paradigm:
  1. The Data are objects that represent von Neumann computers hooked together by a very fast network. An object can, for example, be programmed with a 3GL such as Python, C++, Cope's trygve language, or even Squeak. Data objects will typically be provided by vendors of smart devices and service providers such as weather services, libraries, Twitter, and GMail. When Ellen becomes an expert, she might learn to create simple Data objects herself.
    The object computer is not a figment of someone's imagination. An object computer exists today and it is programmed with the extremely simple language IFTTT (If This Then That), see
    https://www.computerworld.com/article/3239304/what-is-ifttt-how-to-use-if-this-then-that-services.html

    and my article section 5.3.7.
    Loke serves similar purposes as IFTTT, but it has richer programming capabilities.

  2. Ellen's Context embodies her program. She uses graphical programming to declare its structure of roles. She binds Data objects to roles graphically moving objects into her Context and naming them. When Ellen becomes an expert, she might code the binding of roles to objects with some textual language. The Context with its roles and scripts is Ellen's program. End of story.

  3. Ellen's Interaction is in the form of scripts attached to the roles. The scope of a role script is the visible roles. The scripting language could be a new one, or it could be the Squeak language for methods. In the demo program, Ellen codes her scripts with multi-level menu selection.

    Ellen's scripting language is complete in the sense that it can do anything her Data objects (von Neumann computers) can do.
Personal programming and the object computer
Reply all
Reply to author
Forward
0 new messages