[squeak-dev] Cuis updated to #0250

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
50 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

Juan Vuletich-4
Andreas Raab wrote:

> David T. Lewis wrote:
>> On Wed, Aug 05, 2009 at 10:43:15PM -0700, Andreas Raab wrote:
>>> Andreas Raab wrote:
>>>
>>> Question: Anyone interested in helping with this little project?
>>> Either by adding keyboard shortcuts to the Cuis editors or by
>>> helping fixing references to obsolete MVC references, or by testing
>>> the reloading of MVC?
>>
>> I'm definitely interested, though a bit short of time. I'll try to
>> help test
>> the reloading of MVC.
>
> Great. BTW, one thing that really needs to be done is a major Project
> refactoring. I love Projects; I think they are one of the defining
> properties of Squeak. Unfortunately, they are a bit out of shape right
> now ;-) What we need to do is to figure out how to refactor projects
> into something along the lines of:
>
> Project ('parentProject' 'previousProject' 'uiProcess' ...)
>   MVCProject ('controlManager' ...)
>   MorphicProject ('world' ...)
>
> When this is done properly we suddenly have room for a variety of
> actions that are otherwise difficult to handle: From how to deliver a
> user interrupt (Project current handleUserInterrupt) over custom
> subprojects (B3DWonderlandProject) up to per-project namespaces. There
> is a lot of interesting things that can be done with projects.
>
> I'm not sure if you're up for this or not, but it definitely needs to
> be done for a completely smooth MVC removal - MVC needs to come with
> its own kinds of projects so that we can actually transfer between
> them, host them, etc.
>
> Cheers,
>   - Andreas

How do you see Projects trying to maintain their own changes? I removed
Projects from Cuis because I don't like them trying to look as if they
could isolate changes when they can't. Perhaps some Monticello magic
here? Or simply to make Project _not_ to carry any code with them? Then,
some indication of what they require from the host image would be in
order...

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Tracking local changes

Juan Vuletich-4
In reply to this post by Göran Krampe
Göran Krampe wrote:

> Hi!
>
> Bert Freudenberg wrote:
>> On 06.08.2009, at 11:46, Göran Krampe wrote:
>>
>>> I am trying to spend my little time on DS
>>
>> One issue in the trunk dev model with current Monticello is that it's
>> impossible to have my own local "pet" modifications, because when I
>> upload a new package snapshot all my local modifications get
>> submitted. How are others dealing with that? Am I right that delta
>> streams might solve this problem?
>
> Yeah. :) Indeed one very interesting application of Deltas is a
> "quilt" like system in which you would track your local changes in
> Deltas and when you are about to say update the trunk you would
> unapply the Deltas, update, then reapply.
>
> Before reapplying, the Deltas should in some nice DS UI show you what
> they think about reapplying them.
>
> regards, Göran
>
Oh, that would be sooo nice to have!

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

Juan Vuletich-4
In reply to this post by Andreas.Raab
Andreas Raab wrote:

> Juan Vuletich wrote:
>> I'm willing to help. I can fix the issues in the Cuis text editors.
>> Just point me to the last version of the new editors you have, and
>> any instructions on how to update from the latest trunk.
>
> Cool. I've posted both Editor and TextEditor from Cuis (verbatim
> versions), added a DefaultEditorClass to TextMorph, and a preference
> to control its use. If you go to help>>preferences then search for
> useNewEditors, you can toggle the use of TextMorphEditor vs. TextEditor.
>
> Also, I think your idea of having an explicit class SmalltalkEditor is
> a really good idea. It allows us a number of useful choices: For
> example, for someone shipping an app, you can replace the default
> morphic text editor class with one that doesn't allow users to
> evaluate code in the "find" dialog :^) Plus, the SmalltalkEditor could
> include hooks for syntax highlighting and auto-completion so that
> Shout and others don't need to patch all these other places.

Exactly :) I will add SmalltalkEditor too then. BTW, if this hierarchy
can remain exactly the same as in Cuis it will be much easier for me to
finish the refactoring. There is a lot of code in TextEditor that I'll
be moving down to SmalltalkEditor. If I can do it just once, and use it
both in Cuis and Squeak it would save me a lot of time.

> BTW, I'm not sure what you mean by instructions on how to update from
> the current trunk. It should "just work". If you are encountering any
> problems please do report them.

Great! I guess I'm not used to things being always there. I was
expecting you to have some change set lying around. The trunk is way cool!

I expect to have the new editors working during this weekend.

Cheers,
Juan Vuletich

> Cheers,
>   - Andreas


Reply | Threaded
Open this post in threaded view
|

RE: [squeak-dev] Re: Separating Morphic and MVC

Kevin-231

> Andreas Raab wrote:
> > Juan Vuletich wrote:
> >>
> >> any instructions on how to update from the latest trunk.
> >
>
> The trunk is way cool!

Agree with that!  I've been following all this with interest.

It seems like it might be a good time to update the squeakfoundation.org
main page with a pointer:

  "Those who want to follow the latest developments can download a
<3.11.x VM> and a <trunk image>, start it and hit Load Code Updates!
to see the current state of development."

I've been listening and not much else, for a while, and it took a bit
to track down what I needed to get up to date - the "stable download"
link is still 7179 from 2008, which I guess is what "stable" means!
But I really like having an image with one-click tracking to current.

Keep up the good work!

Kevin


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

David T. Lewis
In reply to this post by Andreas.Raab
On Thu, Aug 06, 2009 at 10:08:51PM -0700, Andreas Raab wrote:

> David T. Lewis wrote:
> >On Wed, Aug 05, 2009 at 10:43:15PM -0700, Andreas Raab wrote:
> >>Andreas Raab wrote:
> >>
> >>Question: Anyone interested in helping with this little project? Either
> >>by adding keyboard shortcuts to the Cuis editors or by helping fixing
> >>references to obsolete MVC references, or by testing the reloading of MVC?
> >
> >I'm definitely interested, though a bit short of time. I'll try to help
> >test
> >the reloading of MVC.
>
> Great. BTW, one thing that really needs to be done is a major Project
> refactoring. I love Projects; I think they are one of the defining
> properties of Squeak. Unfortunately, they are a bit out of shape right
> now ;-) What we need to do is to figure out how to refactor projects
> into something along the lines of:
>
> Project ('parentProject' 'previousProject' 'uiProcess' ...)
>   MVCProject ('controlManager' ...)
>   MorphicProject ('world' ...)
>
> When this is done properly we suddenly have room for a variety of
> actions that are otherwise difficult to handle: From how to deliver a
> user interrupt (Project current handleUserInterrupt) over custom
> subprojects (B3DWonderlandProject) up to per-project namespaces. There
> is a lot of interesting things that can be done with projects.
>
> I'm not sure if you're up for this or not, but it definitely needs to be
> done for a completely smooth MVC removal - MVC needs to come with its
> own kinds of projects so that we can actually transfer between them,
> host them, etc.

I'll take a look at it for sure, but I'm afraid I'm probably overcommitted
at the moment. Best not to count on me for anything big right now.

Dave


Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: Separating Morphic and MVC

Andreas.Raab
In reply to this post by Juan Vuletich-4
Juan Vuletich wrote:
> How do you see Projects trying to maintain their own changes? I removed
> Projects from Cuis because I don't like them trying to look as if they
> could isolate changes when they can't. Perhaps some Monticello magic
> here? Or simply to make Project _not_ to carry any code with them? Then,
> some indication of what they require from the host image would be in
> order...

I'm not sure. My gut feeling is that the entire notion of "changes" is
depending on context. What changes mean in Etoys (scripts represented by
S-expressions) is different from what changes mean in Smalltalk hacking
and is different what changes could mean in Wonderland scripting.  As
such I'd say that the notion of changes is something that one needs to
deal with at a different level.

 From a practical perspective however I'd say that having one change set
per project (and the ability to switch between them when changing
projects) is quite handy. But if someone were to say let's nuke change
sets in projects and require people to switch them manually in the
change sorter, I would probably be fine with that, too.

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

Eliot Miranda-2
In reply to this post by Juan Vuletich-4


On Fri, Aug 7, 2009 at 6:04 AM, Juan Vuletich <[hidden email]> wrote:
Andreas Raab wrote:
David T. Lewis wrote:
On Wed, Aug 05, 2009 at 10:43:15PM -0700, Andreas Raab wrote:
Andreas Raab wrote:

Question: Anyone interested in helping with this little project? Either by adding keyboard shortcuts to the Cuis editors or by helping fixing references to obsolete MVC references, or by testing the reloading of MVC?

I'm definitely interested, though a bit short of time. I'll try to help test
the reloading of MVC.

Great. BTW, one thing that really needs to be done is a major Project refactoring. I love Projects; I think they are one of the defining properties of Squeak. Unfortunately, they are a bit out of shape right now ;-) What we need to do is to figure out how to refactor projects into something along the lines of:

Project ('parentProject' 'previousProject' 'uiProcess' ...)
 MVCProject ('controlManager' ...)
 MorphicProject ('world' ...)

When this is done properly we suddenly have room for a variety of actions that are otherwise difficult to handle: From how to deliver a user interrupt (Project current handleUserInterrupt) over custom subprojects (B3DWonderlandProject) up to per-project namespaces. There is a lot of interesting things that can be done with projects.

I'm not sure if you're up for this or not, but it definitely needs to be done for a completely smooth MVC removal - MVC needs to come with its own kinds of projects so that we can actually transfer between them, host them, etc.

Cheers,
 - Andreas

How do you see Projects trying to maintain their own changes? I removed Projects from Cuis because I don't like them trying to look as if they could isolate changes when they can't. Perhaps some Monticello magic here? Or simply to make Project _not_ to carry any code with them? Then, some indication of what they require from the host image would be in order...

But if you use a multi-window manager you don't expect the file system to be different underneath every screen.  Projects are really useful as is and still use projects even though the bulk of my work is against a Monticello repository.  With the change sorter the connection between change set and project is not a hard and fast one anymore and that's a good thing; it can be tedious to switch projects just to add a change elsewhere.  But being able to have a collection of windows clustered around some project is great.  But I miss tools for them, e.g. a search tool for strings in workspaces across projects, an auto-save-to-files facility for workspaces so I don't lose their contents when my Mac's screen saver locks up and I have to reboot.  Sigh.
 


Cheers,
Juan Vuletich




Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

Juan Vuletich-4
In reply to this post by Andreas.Raab
Hi Folks,

Andreas Raab wrote:

> Juan Vuletich wrote:
>> I'm willing to help. I can fix the issues in the Cuis text editors.
>> Just point me to the last version of the new editors you have, and
>> any instructions on how to update from the latest trunk.
>
> Cool. I've posted both Editor and TextEditor from Cuis (verbatim
> versions), added a DefaultEditorClass to TextMorph, and a preference
> to control its use. If you go to help>>preferences then search for
> useNewEditors, you can toggle the use of TextMorphEditor vs. TextEditor.
>
> Also, I think your idea of having an explicit class SmalltalkEditor is
> a really good idea. It allows us a number of useful choices: For
> example, for someone shipping an app, you can replace the default
> morphic text editor class with one that doesn't allow users to
> evaluate code in the "find" dialog :^) Plus, the SmalltalkEditor could
> include hooks for syntax highlighting and auto-completion so that
> Shout and others don't need to patch all these other places.

I updated the trunk with fixes to the new Editor hierarchy from Cuis. It
is fully functional now.

Cheers,
Juan Vuletich

Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: Separating Morphic and MVC

Andreas.Raab
Juan Vuletich wrote:
> I updated the trunk with fixes to the new Editor hierarchy from Cuis. It
> is fully functional now.

I had to add a small compatibility method for making Parser
correctVariable: etc. work correctly. Other than that it works great.
I'm in favor of making them the default to give them a good workout and
root out any issues we haven't noticed yet. If there's a problem we can
always switch back. What do you think?

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Separating Morphic and MVC

Göran Krampe
In reply to this post by Andreas.Raab
Hi!

Just as a sidenote: Deltas in DS do not address Projects at all.

I would listen to arguments in either direction - I never really grokked
Projects in this area.

regards, Göran


123