problem with sockets
Michael S. Klein
mklein at alumni.caltech.edu
Sat Dec 19 21:47:19 UTC 1998
> > Is this true? Is there a workaround, or is Squeak just broken?
>
> It's true, Squeak is broken in this respect. I don't know why they did
> not implement the much more common and reliable Berkeley Socket
> semantics with listen() and accept(),
> where the underlying OS does the connection queue stuff. Implementing
> these semantics on top of a weird socket interface such as that of the
> Mac should be mucht easier than the implementing a reliable server on
> top of a conceptually broken API...
I experienced the same problems working on an internet video game in squeak.
I think that part of the problem is cultural. Squeak wants to pretend that
there is such a thing as vanilla hardware (and in this case, vanilla
networking), but the reality of the situation is that keyboards *are*
different, mice don't all have the same number of buttons, and networking
apis are not all the same. Clearly, Macintosh is Squeak's native platform.
Now don't get me wrong... I think Squeak's approach to pretending that
the supporting machine is vanilla is admirable, but i think that a more
unified approach to handling differences when they arise is warranted.
Perhaps pluggable primitives can be used to map a "common subset" semantics
to native calls in image code, rather than VM code. Of course, one still
needs to define a reasonable common subset, and I think that, for networking,
TCP/IP and Berkeley sockets are the way to go. Is anyone using squeak for
non-TCP/IP networking? AppleTalk?
-- Mike
More information about the Squeak-dev
mailing list
|