[Pharo-project] Network training

Igor Stasenko siguctua at gmail.com
Sat Feb 5 02:32:57 CET 2011

On 5 February 2011 00:53, Levente Uzonyi <leves at elte.hu> wrote:
> On Sat, 5 Feb 2011, Igor Stasenko wrote:
>> On 5 February 2011 00:12, Levente Uzonyi <leves at elte.hu> wrote:
>>> On Fri, 4 Feb 2011, Luc Fabresse wrote:
>>>> Yes, but hopefully we will be SocketPlugin free.
>>> Is SocketPlugin buggy?
>>> If yes, where's the bug report?
>>> If not, what's the problem with it?
>> Just one: it is highly resistant to evolution and changes. As well as
>> everything else in VM.
> Does the Socket API change often? No. I'm sure all my 10 years old network
> code (written in C) would compile and run on the first try.

I can tell you more:
Does C syntax changes often? No. So, then why there so many silly
people wasting their time writing own compilers for it?
Or why people inventing new languages? Isn't C enough? :)

Levente, when is the last time you checked the meaning of word
'development' in dictionary?

>>>> At the end, "There can be only one" (FFI or Alien or NB or a better one)
>>>> ;-)
>>>> IMHO, plugins are a pain to understand, maintain, integrate in the
>>>> latest
>>>> VM...
>>>> so let's kill them as much as possible.
>>> Maintaining SocketPlugin (or reimplementing for a new plaform) is a lot
>>> easier than doing the same with FFI or Alien.
>> I wouldn't say so.
> Why?

Because coding in smalltalk much easier than in C.
Including cases, when you need to communicate with external library using C ABI.

Otherwise, why would i be sitting here? And why VM written in
smalltalk?.. For same reason, bro :)

> Couldn't you reimplement SocketPlugin from scratch without looking at the
> current implementation in at most a few days? I could, so I'm sure you could
> do that too. The same is not true for FFI or Alien (at least not for me).

So you have something to learn left in this world :)

>>> Eliot's threaded FFI plugin is
>>> very complex compared to (the pretty simple) SocketPlugin.
>> It could be simple too. But just not fast enough :)
>> There's always a lot of tradeoffs to consider.
> It could be, but it's not.

You will never know if you don't try.

And besides, what is your point?
People learning network by implementing own network layer. Exploring
something new and trying to adopt design
to their own vision/mindset.
Now you came and saying "you are on the losing side, because A, B, C"..
Do, you think people should learn SocketPlugin instead? Been there did
that. Frankly, don't want to touch it again or teach people about it.
I seen much more cleaner and robust socket library OO wrappers. Not in
smalltalk though.

P.S. Don't take me wrong. Yes there is a lot to learn from
SocketPlugin. But you would better spend time learning/reading other
well written and well documented multithreaded library for serving
socket connections.

> Levente

Best regards,
Igor Stasenko AKA sig.

More information about the Pharo-project mailing list