From my years of Squeaking, I only ever us Monticello Browser. As one new to our using github, Metacello and Pharo, could you explain how I would load Seamless? I think it is a Metacello command. I am very interested in seeing how it runs on ParrotTalk and thought I would explore this system.
Thank you Sent from ProtonMail Mobile On Thu, Nov 16, 2017 at 11:14, Denis Kudriashov <dionisi...@gmail.com> wrote: > 2017-11-16 17:11 GMT+01:00 henry <he...@callistohouse.club>: > >> Have you seen ParrotTalk? >> >> http://www.squeaksource.com/Cryptography/ParrotTalk-HenryHouse.14.mcz >> >> http://www.squeaksource.com/Cryptography/ParrotTalk-HenryHouse.14.mczRequiring >> >> http://www.squeaksource.com/Cryptography/Cryptography-HenryHouse.113.mcz >> >> http://www.squeaksource.com/Cryptography/Cryptography-HenryHouse.113.mczWhere >> could I find Seamless? I am doing similar with a project Raven: distributed >> objects over encrypted ASN.1/STON encoded connections. > > https://github.com/dionisiydk/Seamless > >> Thank you. >> >> Sent from ProtonMail Mobile >> >> On Wed, Nov 15, 2017 at 18:09, Cédrick Béler <cdric...@gmail.com> wrote: >> >>> Hi, >>> >>> sorry for the late reply Denis, >>> >>>> Can you show example how you work with your objects using this network? >>> >>> It’s not fully decided yet. I’m just trying to show that 2 peers A and B >>> can exchange and sync information without central server, but also >>> considering they have multiples devices (connected on demand P2P - offline >>> first is a major requirement). >>> >>> So for now, to test, I just connect A and B through basys by sending a >>> connection in both direction A->B B->A. I think ok keeping a "message hub » >>> specific to each interaction A can have with B(s), C(s)... A queue but that >>> kind of never deletes messages but changes its meta content - so as to sync >>> with other devices when they eventually connect). >>> >>> So for now, my need is quite simple regarding connections. >>> I used mostly for now #sendDataPacket: >>> >>> I could do it also with Zinc in HTTP. But, as always in Smalltalk, I >>> explore in plenty of directions and discover great stuffs like Seamless >>> perfectly usable and some less finished or older gems like BitTalk or >>> UbiquiTalk… Very interesting as I will need more functionalities to deal >>> with decentralized networks. >>> >>>> BasisNetworkStub is only created for tests. And I think it misses one >>>> important function: how identify peers. When your image get new connection >>>> it should identify what remote peer is connected by it. So two connections >>>> from same remote image should be identified as single peer instance on >>>> your local image. >>> >>> Yes, sure I’ve spotted that and I definitely need a way to identify >>> peer-devices (belonging to a peer realm/swarm). I’ll do later. >>> >>>> I would of course use Seamless for distributed applications because it >>>> allows to implement solution with objects locally and then transparently >>>> split them over network. >>>> But Seamless not implements any kind of message queue. So I would use some >>>> proven solution for it instead of custom implementation. But it can >>>> depends on the task. >>> >>> Do you think of something in particular ? :) >>> For now my queue will only be ordered collections or whatever simple >>> collection. It should be enough to start with. >>> >>>> >>>> >>>>> 2) or may I use Seamless straight with restrictions (I wonder if limiting >>>>> the classes that can be executed would suffice - proxies should only be >>>>> on the peer inbox and outbox I think) ? >>>> >>>>> 3) or maybe I should do a lighter version of seamless ? If so where >>>>> should I look at/change ? >>>> >>>> You can try subclass SeamlessNetwork and override request processing >>>> method with special restrictions on what requests are permitted. Maybe you >>>> can propose such kind of policy to the Seamless itself. >>> >>> Subclassing Seamless seems to be a very good simple and powerful >>> possibility (to get inspiration too) and I may do that. >>> >>> Anyway most of what I have to do is build a system that seamlessly present >>> to the user information extracted from messages (stored locally- versioned) >>> => its actually just transposing what you all are used too with tools like >>> git but applied to « general information exchange and processing ». >>> Enterprise information systems are so boring… they should be far more a la >>> smalltalk ^^ >>> >>> Cheers, >>> >>> Cédrick