TIsland>>execute:(id is shadowed) ??

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

TIsland>>execute:(id is shadowed) ??

Howard Stearns
Here's an obscure one: the transcript prints the above when I move  
around in the debugger. Why?

Open a Transcript.
Open any Croquet Morph (e.g., Croquet(Master)).
Get a TFarRef (e.g., explore morph, go to harness, and do self  
activeSpace).
Send the far ref an unhandled future message (e.g., in harness, self  
activeSpace future foo).

You get an error as expected, but the transcript prints
   TIsland>>execute:(id is shadowed)

What's more, whenever you click once on on the TIsland>>execute:  
frame (where perform:withArguments: is current), it prints it AGAIN,  
one OR MORE times.

What's up with that?

-H
Reply | Threaded
Open this post in threaded view
|

Re: TIsland>>execute:(id is shadowed) ??

Andreas.Raab
It's an obscure flaw of the decompiler. Nothing to worry about
specifically and somewhat tricky to fix. The workaround is to rename the
  "id" temp to something else.

Cheers,
   - Andreas

Howard Stearns wrote:

> Here's an obscure one: the transcript prints the above when I move
> around in the debugger. Why?
>
> Open a Transcript.
> Open any Croquet Morph (e.g., Croquet(Master)).
> Get a TFarRef (e.g., explore morph, go to harness, and do self
> activeSpace).
> Send the far ref an unhandled future message (e.g., in harness, self
> activeSpace future foo).
>
> You get an error as expected, but the transcript prints
>   TIsland>>execute:(id is shadowed)
>
> What's more, whenever you click once on on the TIsland>>execute: frame
> (where perform:withArguments: is current), it prints it AGAIN, one OR
> MORE times.
>
> What's up with that?
>
> -H
>
Reply | Threaded
Open this post in threaded view
|

Roadmap for getting up to speed in Croquet?

Kelly Rued-2
In reply to this post by Howard Stearns
Hi all, I hope someone can help me map the best route to learning Croquet.

I feel like I'm aiming at a fuzzy, moving target in trying to learn Croquet
because not only does it have Croquet-specific code, concepts and jargon,
but it also has (rather steep) prerequisite learning in Squeak and OpenGL.
Both Croquet and squeak seem to be in flux.

What I would really appreciate from the croquet devs is a quick list of the
related technologies that are truly relevant for someone developing a new
application in Croquet. I know croquet is a work in progress but to a new
developer, a total outsider, I have to share that it's been difficult
figuring out which version of the different component technologies are
relavant to current and *future* croquet applications. My main goal in
approaching any of these technologies is to use the croquet package so I
figure this list is the best place to ask for n00b croquet developer advice.

Specific Questions:

-Which version of squeak should I be learning (the 3.9 release? Does anyone
know of any tutorials that are actually current with this release?)

-Most everything I've seen uses Morphic but croquet is apparently moving
toward something called Tweak. The Tweak site looks like it hasn't been
updated in a while. What's the difference/relationship between Morphic and
Tweak and which will be more useful in future croquet applications? When is
morphic going to be depracated in croquet or am I misunderstanding how Tweak
relates to Morphic? If I am planning to develop a croquet application now,
maybe to be released within the next calendar year... Should I use Morphic
because Morphic is here now and has other projects using it? I want to be
aware of future changes but if Tweak isn't going to be ready for prime time
for a long while I also want to know that.

-How much and what concepts of OpenGL are needed to work with croquet
(building and distributing worlds)? In the middleware engines I've used
there were usually functions in place that somewhat pardoned me from having
to dig very deeply into DX or OpenGL. Is croquet headed toward an
implementation where application developers don't need to be graphics
programmers? Is croquet aiming to be like a middleware 3D application
builder or will it be more low-level requiring significant OpenGL and OpenAL
programming knowledge to use it?

-I know this is a loaded question but will ask anyways: does anyone know of
a project in croquet right now that aims to be a popular and usable
application for non-programmers, especially in a non-academic setting?

I *think* croquet collaborative is what I'm looking for but am not sure. The
goals of the different croquet groups are often expressed in generalities
rather than specific stuff like 'we are making a shared calendar app that
will do xyz for this market of users'. Reading the potential uses for
croquet on the official croquet site makes it sound like croquet is aiming
squarely for irrelevance outside of academic research and school tools. Any
direction toward a croquet project based on something like entertainment or
socializing would be really cool. I'm really interested in practical boring
everyday people stuff like private 3D chat rooms connected to myspace pages
and cybersex applications. Not as noble as some of the other croquet
projects but definitely more likely to get croquet out of the lab and into
popular usage. :)

Any advising is much appreciated. I will continue hacking away at squeak 3.9
in the mean time. I got sidetracked on Seaside last night and it's pretty
cool. I'm getting more comfortable in the squeak IDE but honestly I feel a
million miles away from developing in croquet yet. The morphic/tweak thing
especially disturbs me because I can't find enough info on tweak in croquet
or where that's headed and designing the UI is so central to how I go about
designing apps.

Thanks very much,
Kelly






Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for getting up to speed in Croquet?

Andreas.Raab
Kelly Rued wrote:
> Hi all, I hope someone can help me map the best route to learning Croquet.

I'll try a few answers ;-)

> -Which version of squeak should I be learning (the 3.9 release? Does anyone
> know of any tutorials that are actually current with this release?)

Croquet is (currently) based on Squeak 3.8 and the way it looks right
now this probably isn't going to change any time soon. But generally
speaking, with the exception of tutorials about traits (which are new in
3.9) everything else should be pretty much applicable the way it is.
Although there may be specific differences in the various versions most
of the basic principles will still apply.

> -Most everything I've seen uses Morphic but croquet is apparently moving
> toward something called Tweak. The Tweak site looks like it hasn't been
> updated in a while. What's the difference/relationship between Morphic and
> Tweak and which will be more useful in future croquet applications?

Simple answer: Tweak. In reality it is the only UI that I would call
"supported" (in the loosest possible meaning of the word ;-) in Croquet.
While we have had a few morphs (mainly for historical reasons and demo
support) these are by now mostly outdated.

> When is
> morphic going to be depracated in croquet or am I misunderstanding how Tweak
> relates to Morphic? If I am planning to develop a croquet application now,
> maybe to be released within the next calendar year... Should I use Morphic
> because Morphic is here now and has other projects using it? I want to be
> aware of future changes but if Tweak isn't going to be ready for prime time
> for a long while I also want to know that.

All Croquet applications that I am currently aware of use Tweak and not
Morphic for their internal UI elements. Morphic can be used for those of
course but you'd probably have to fix a couple of things to make it work
properly. If you are planning to go down that road I'd definitely
recommend you find a few like-minded people that you can share
experiences and code with.

> -How much and what concepts of OpenGL are needed to work with croquet
> (building and distributing worlds)? In the middleware engines I've used
> there were usually functions in place that somewhat pardoned me from having
> to dig very deeply into DX or OpenGL. Is croquet headed toward an
> implementation where application developers don't need to be graphics
> programmers? Is croquet aiming to be like a middleware 3D application
> builder or will it be more low-level requiring significant OpenGL and OpenAL
> programming knowledge to use it?

You need OpenGL if you want write what I would call "3D widgets", e.g.,
objects that require custom rendering. If you don't, then really all you
need to understand is composition of objects and not much about the
specific APIs they use to render themselves.

> -I know this is a loaded question but will ask anyways: does anyone know of
> a project in croquet right now that aims to be a popular and usable
> application for non-programmers, especially in a non-academic setting?

Yes. But you'd have to sign an NDA with Qwaq before I could tell you ;-)

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for getting up to speed in Croquet?

Hussayn (de)
Hi, Andreas;

As Kelly i am interested in understanding how to use Croquet in a real world
application. I also am neither a 3D developer nor a connoisseur of Squeak, but
i think, the "virtual world" issue will shortly become quite an exciting
oportunity as we already can see with "Second life". I would like to get more
information about how to sign an NDA with Qwaq. From the Qwaq site i already can
see that you got some ideas which i believe will probably raise attention in the
near future ;-)

So could you please forward me an appropriate link in order to get closer to you ?

thank you,
regards, Hussayn

Andreas Raab schrieb:

> Kelly Rued wrote:
>> Hi all, I hope someone can help me map the best route to learning
>> Croquet.
>
> I'll try a few answers ;-)
>
>> -Which version of squeak should I be learning (the 3.9 release? Does
>> anyone
>> know of any tutorials that are actually current with this release?)
>
> Croquet is (currently) based on Squeak 3.8 and the way it looks right
> now this probably isn't going to change any time soon. But generally
> speaking, with the exception of tutorials about traits (which are new in
> 3.9) everything else should be pretty much applicable the way it is.
> Although there may be specific differences in the various versions most
> of the basic principles will still apply.
>
>> -Most everything I've seen uses Morphic but croquet is apparently moving
>> toward something called Tweak. The Tweak site looks like it hasn't been
>> updated in a while. What's the difference/relationship between Morphic
>> and
>> Tweak and which will be more useful in future croquet applications?
>
> Simple answer: Tweak. In reality it is the only UI that I would call
> "supported" (in the loosest possible meaning of the word ;-) in Croquet.
> While we have had a few morphs (mainly for historical reasons and demo
> support) these are by now mostly outdated.
>
>> When is
>> morphic going to be depracated in croquet or am I misunderstanding how
>> Tweak
>> relates to Morphic? If I am planning to develop a croquet application
>> now,
>> maybe to be released within the next calendar year... Should I use
>> Morphic
>> because Morphic is here now and has other projects using it? I want to be
>> aware of future changes but if Tweak isn't going to be ready for prime
>> time
>> for a long while I also want to know that.
>
> All Croquet applications that I am currently aware of use Tweak and not
> Morphic for their internal UI elements. Morphic can be used for those of
> course but you'd probably have to fix a couple of things to make it work
> properly. If you are planning to go down that road I'd definitely
> recommend you find a few like-minded people that you can share
> experiences and code with.
>
>> -How much and what concepts of OpenGL are needed to work with croquet
>> (building and distributing worlds)? In the middleware engines I've used
>> there were usually functions in place that somewhat pardoned me from
>> having
>> to dig very deeply into DX or OpenGL. Is croquet headed toward an
>> implementation where application developers don't need to be graphics
>> programmers? Is croquet aiming to be like a middleware 3D application
>> builder or will it be more low-level requiring significant OpenGL and
>> OpenAL
>> programming knowledge to use it?
>
> You need OpenGL if you want write what I would call "3D widgets", e.g.,
> objects that require custom rendering. If you don't, then really all you
> need to understand is composition of objects and not much about the
> specific APIs they use to render themselves.
>
>> -I know this is a loaded question but will ask anyways: does anyone
>> know of
>> a project in croquet right now that aims to be a popular and usable
>> application for non-programmers, especially in a non-academic setting?
>
> Yes. But you'd have to sign an NDA with Qwaq before I could tell you ;-)
>
> Cheers,
>   - Andreas
>


--
Dr. Hussayn Dabbous
SAXESS Software Design GmbH
Neuenhöfer Allee 125
50935 Köln

tel.: +49 221 560 11 0
fax.: +49 221 560 11 20

mailto:[hidden email]
http://www.saxess.de
http://www.saxess.com
http://www.saxess.org

Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for getting up to speed in Croquet?

Laurence Rozier
In reply to this post by Kelly Rued-2


On 2/13/07, Kelly Rued <[hidden email]> wrote:
Hi all, I hope someone can help me map the best route to learning Croquet.

 You might find this subsystem overview useful.

Regards,

Laurence

I feel like I'm aiming at a fuzzy, moving target in trying to learn Croquet
because not only does it have Croquet-specific code, concepts and jargon,
but it also has (rather steep) prerequisite learning in Squeak and OpenGL.
Both Croquet and squeak seem to be in flux.

What I would really appreciate from the croquet devs is a quick list of the
related technologies that are truly relevant for someone developing a new
application in Croquet. I know croquet is a work in progress but to a new
developer, a total outsider, I have to share that it's been difficult
figuring out which version of the different component technologies are
relavant to current and *future* croquet applications. My main goal in
approaching any of these technologies is to use the croquet package so I
figure this list is the best place to ask for n00b croquet developer advice.

Specific Questions:

-Which version of squeak should I be learning (the 3.9 release? Does anyone
know of any tutorials that are actually current with this release?)

-Most everything I've seen uses Morphic but croquet is apparently moving
toward something called Tweak. The Tweak site looks like it hasn't been
updated in a while. What's the difference/relationship between Morphic and
Tweak and which will be more useful in future croquet applications? When is
morphic going to be depracated in croquet or am I misunderstanding how Tweak
relates to Morphic? If I am planning to develop a croquet application now,
maybe to be released within the next calendar year... Should I use Morphic
because Morphic is here now and has other projects using it? I want to be
aware of future changes but if Tweak isn't going to be ready for prime time
for a long while I also want to know that.

-How much and what concepts of OpenGL are needed to work with croquet
(building and distributing worlds)? In the middleware engines I've used
there were usually functions in place that somewhat pardoned me from having
to dig very deeply into DX or OpenGL. Is croquet headed toward an
implementation where application developers don't need to be graphics
programmers? Is croquet aiming to be like a middleware 3D application
builder or will it be more low-level requiring significant OpenGL and OpenAL
programming knowledge to use it?

-I know this is a loaded question but will ask anyways: does anyone know of
a project in croquet right now that aims to be a popular and usable
application for non-programmers, especially in a non-academic setting?

I *think* croquet collaborative is what I'm looking for but am not sure. The
goals of the different croquet groups are often expressed in generalities
rather than specific stuff like 'we are making a shared calendar app that
will do xyz for this market of users'. Reading the potential uses for
croquet on the official croquet site makes it sound like croquet is aiming
squarely for irrelevance outside of academic research and school tools. Any
direction toward a croquet project based on something like entertainment or
socializing would be really cool. I'm really interested in practical boring
everyday people stuff like private 3D chat rooms connected to myspace pages
and cybersex applications. Not as noble as some of the other croquet
projects but definitely more likely to get croquet out of the lab and into
popular usage. :)

Any advising is much appreciated. I will continue hacking away at squeak 3.9
in the mean time. I got sidetracked on Seaside last night and it's pretty
cool. I'm getting more comfortable in the squeak IDE but honestly I feel a
million miles away from developing in croquet yet. The morphic/tweak thing
especially disturbs me because I can't find enough info on tweak in croquet
or where that's headed and designing the UI is so central to how I go about
designing apps.

Thanks very much,
Kelly







Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for getting up to speed in Croquet?

Michael Rueger-6
In reply to this post by Andreas.Raab
Andreas Raab wrote:
> Kelly Rued wrote:


>> -Most everything I've seen uses Morphic but croquet is apparently moving
>> toward something called Tweak. The Tweak site looks like it hasn't been
>> updated in a while. What's the difference/relationship between Morphic
>> and
>> Tweak and which will be more useful in future croquet applications?
>
> Simple answer: Tweak. In reality it is the only UI that I would call
> "supported" (in the loosest possible meaning of the word ;-) in Croquet.
> While we have had a few morphs (mainly for historical reasons and demo
> support) these are by now mostly outdated.

It's important though to distinguish between Tweak (as in
tweak.impara.de) and Tweak in Croquet (as in opencroquet.org). The
former isn't maintained any more and will probably go away in the near
future (at least from the impara servers) whereas Tweak in Croquet is
actively used and supported.

Michael
Reply | Threaded
Open this post in threaded view
|

Re: Roadmap for getting up to speed in Croquet?

Howard Stearns
In reply to this post by Laurence Rozier
Laurence Rozier wrote:

>
>
> On 2/13/07, *Kelly Rued* <[hidden email]
> <mailto:[hidden email]>> wrote:
>
>     Hi all, I hope someone can help me map the best route to learning
>     Croquet.
>
>
>  You might find this subsystem overview
> <http://croquet.funkencode.com/2006/05/08/sub-system-overview/> useful.

Hey, that's pretty good!

One of the things I like about it is that it begins to convey the idea that
there are basic concepts of replication that you really need to understand, else
learning about specific component technologies would just miss the point.

The best way to get that basic conceptual framework is still the Programmer's
Guide, but there's a super-condensed Cliff Notes overview of just the basic
concept at http://www.wetmachine.com/itf/item/689

> ...
>
>     -I know this is a loaded question but will ask anyways: does anyone
>     know of
>     a project in croquet right now that aims to be a popular and usable
>     application for non-programmers, especially in a non-academic setting?
>
>     I *think* croquet collaborative is what I'm looking for but am not
>     sure. The
>     goals of the different croquet groups are often expressed in
>     generalities
>     rather than specific stuff like 'we are making a shared calendar app
>     that
>     will do xyz for this market of users'.



The Collaborative for Croquet is an effort to make Croquet applications
accessible to the general public as soon as possible, including a free open
place to connect to over a wide area network.

http://opencroquet.org/index.php/Projects#Collaborative_for_Croquet

To make this more concrete, the immediate fist-step goal is to make it easy for
interested parties to explore a prototype implementation so that they can begin
to participate in further development. Nothing more. [In my opinion, we are but
one thing short of that first goal: making the spaces robust in the face of
errors so that the world is always "up" and available.]

Now, there are always issues and tradeoffs. We have a specific project that, in
the absence of anything else, is informing our design decisions. This is the
KidsFirst project to bring very young students (age 3-7), their teachers, and
their parents into a collaborative play-to-learn community.  Such usage is far
too demanding to be done with anything else currently available.

The software and infrastructure used to do this is the KidsFirst Application
Toolkit, or KAT. The longer term goal is to evolve the KAT to be safely scalable
  (http://opencroquet.org/index.php/Croquet_Collaborative#Future_Work) including
extensible means of building complex applications from within the world as it is
used (Brie, http://opencroquet.org/index.php/Brie).

>                                                Reading the potential uses for
>     croquet on the official croquet site makes it sound like croquet is
>     aiming
>     squarely for irrelevance

!!! I hope not!!!

>                               outside of academic research and school
>     tools.  Any
>     direction toward a croquet project based on something like
>     entertainment or
>     socializing would be really cool. I'm really interested in practical
>     boring
>     everyday people stuff like private 3D chat rooms connected to
>     myspace pages
>     and cybersex applications. Not as noble as some of the other croquet
>     projects but definitely more likely to get croquet out of the lab
>     and into
>     popular usage. :)

<soapbox>

I feel that is now the time to do real stuff.

But which stuff? My own private opinion is that building a "better" mousetrap is
useless for a new technology.  Every new technology is going to initially be
weaker at conventional stuff than that which already exists, so there is no
value in building the same thing that others are making and having it be
"better". It is particularly useless, initially, when the way in which it is
better is that the technology allows the programmers to be more efficient. No
one but the programmers care.

So there is great opportunity here for letting your imagination run wild to do
something that no one else can do. Something that really leverages the unique
collaborative abilities of Croquet.

</soapbox>