Re: structured programming of automata with behavior trees

Yoshiki Ohshima via Squeak-dev <[email protected]> Wed, 22 Jul 2026 20:14:54 -0700
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <CAHC3jCNjbCcEb4WvKjbr+QQEmFs+99rr1DACSwHh8xK+Qyrb2Q@mail.gmail.com>
Ah ha. I can load these two packages and get BTSubtree example1 returns an
object.

What do I do with the object returned from BTSubtree example1?


BTW, it appears that squeak.js.org is sadly deteriorating. I think files
such as https://freudenbergs.de/vanessa/squeakjs/Etoys/sqindex.json are no
longer available. I can still run it for myself because the browser cache
works, but we'd probably need a separate installation that does not depend
on https://freudenbergs.de

On Wed, Jul 22, 2026 at 7:11 PM Thiede, Christoph <[email protected]>
wrote:

> Hi Yoshiki,
>
> You should be able to download the latest MCZ file from Squeaksource using
> your web browser and drop that file into SqueakJS to install it.
>
> Best,
> Christoph
>
>
> ------------------------------
> *Von:* Yoshiki Ohshima via Squeak-dev <
> [email protected]>
> *Gesendet:* Dienstag, Juli 14, 2026 12:06:06 AM
> *An:* The general-purpose Squeak developers list <
> [email protected]>
> *Cc:* Yoshiki Ohshima <[email protected]>
> *Betreff:* [squeak-dev] Re: structured programming of automata with
> behavior trees
>
>
>
> On Mon, Jul 13, 2026 at 2:20 PM Lauren Pullen <[email protected]> wrote:
>
> Hi Yoshiki,
>
> On 7/13/26 10:37, Yoshiki Ohshima via Squeak-dev wrote:
> > Sounds cool.
> >
> > Is there a way to check it out with Squeak JS?
>
> If Squeak JS can use monticello, it and *Variable are at
> <www.squeaksource.com/Cephei>.  I don't see why it shouldn't work.
>
>
> Well, I asked because my simple-minded attempt did not work. It appears
> that the NetNameResolver primitives are failing in Squeak JS (obviously, I
> guess. Monticello needs to be adapted to Squeak JS). I just wanted to check
> it out without downloading things to my local disk initially.
>
>
> > I had a colleague (a long time game developer) who implemented the
> > behavior tree on top of Croquet JS. It worked well for the purpose. I
> > kind of liked a more general and meta solution, and later created a
> > Functional Reactive Programming based system called Renkon. Croquet and
> > Renkon use explicit logical time. Your Behavior Tree implementation
> > probably shares the property of "at a logical time t, a node has at most
> > one value", or "a node is evaluated at most once at an evaluation
> > cycle".
>
> Nice catch.  I'd not heard of functional reactive programming (or
> reactive programming, for that matter) until just now.  It seems my
> source materials predate the term.  Seems I have some studying to do.
>
> My implementation uses the latter property, where a part of the tree is
> evaluated at most once per tick.  I went with 3-valued logic so you
> wouldn't need to use a looping DECORATOR to break the illusion that
> you're working with 1 time unit per tick:.
>
> > I am getting to like this property more and more nowadays.
> Me too.  It's greatly simplified some of the things I wanted the game to
> do, and I've had luck using it as a replacement to the dependency protocol.
> Squeak-dev mailing list -- [email protected]
> To unsubscribe send an email to
> [email protected]
>
>
>
> --
> -- Yoshiki
>
>
>

-- 
-- Yoshiki

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]