🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.transputer
Article #1662

Re: Anarchic protocol ANY (occam2)

#1662
From: Jeremy Webber
Date: Wed, 15 May 1991 23:56
61 lines
3284 bytes
In article <9105152020.AA15174@theory.TN.CORNELL.EDU> COS99284@UFRJ.BITNET (Luiz Felipe Perrone) writes:

     Process 1:
	   to.p2 ! h1; h2; s; r; i; b; x

     Process 2:
	   to.p2 ? h1; h2; s::buffer


These two message operations are not compabible.  Transputers require that a
receiver of a message expect a message of the same size as the sender is
sending.  The above would work if the Occam message operation translated to one
Transputer message operation, but it doesn't (and in general can't).

Rather, my guess is that in process 1 the Occam compiler is generating  a
separate "out" instruction for each element of the message list, which means
that in process 2 the element list must contain variables of the same type as
the arguments in process 1.

Hence for the above code, the effect is "undefined".

	-jeremy



     Placing STOPs here and there I have observed that Process 1 finishes and
   so it sends the message successfully. But what I'm trying to explain is why
   Process 2 never finishes. I have some wild guesses such as: the code the
   compiler generates for the input command in 2, is not appropriate to receive
   the message text (s::buffer) because the channel to.p2 was declared as CHAN
   OF ANY and not CHAN OF INT; INT; INT::()INT. Another one is that I may be
   experiencing some alignment problem due to retyping conversions.

     If someone knows why this happens or how I could send one message of varying
   length with any number of items of any type to a process that will see this
   message as a well defined header plus a text defined as an array of bytes
   of varying length, please let me know as soon as possible.

     I'm using this in the project of simulation kernel and I have to provide
   an elegant, flexible and easy to use interface between the simulator and
   the user's logical processes.

     Thank you all.

   ------------------------------------------------------------------------
   Luiz Felipe Perrone
   MSc student - COPPE - Dept. of Systems Engineering and Computer Science
   Universidade Federal do Rio de Janeiro - Brazil
   E-mail: COS99284@UFRJ (BITNET)
   Mailing address:  Rua Senador Vergueiro 157/305
		     Flamengo - Rio de Janeiro, RJ - Brazil
		     CEP 22230

   Phone number: (55)-(21)-5519063
   ------------------------------------------------------------------------
--
--
Jeremy Webber			   ACSnet: jeremy@chook.ua.oz
Digital Arts Film and Television,  Internet: jeremy@cs.adelaide.edu.au
3 Milner St, Hindmarsh, SA 5007,   Voicenet: +61 8 346 4534
Australia			   Papernet: +61 8 346 4537 (FAX)
Technical Details
Message-ID: <JEREMY.91May16092613@chook.adelaide.edu.au>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!samsung!munnari.oz.au!yoyo.aarnet.edu.au!sirius.ucs.adelaide.edu.au!sirius!jeremy
References: <9105152020.AA15174@theory.TN.CORNELL.EDU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!samsung!munnari.oz.au!yoyo.aarnet.edu.au!sirius.ucs.adelaide.edu.au!sirius!jeremy
From: jeremy@cs.adelaide.edu.au (Jeremy Webber)
Newsgroups: comp.sys.transputer
Subject: Re: Anarchic protocol ANY (occam2)
Message-ID: <JEREMY.91May16092613@chook.adelaide.edu.au>
Date: 15 May 91 23:56:13 GMT
References: <9105152020.AA15174@theory.TN.CORNELL.EDU>
Sender: news@ucs.adelaide.edu.au
Organization: Digital Arts Film and Television
Lines: 61
Nntp-Posting-Host: chook.ua.oz.au
In-reply-to: COS99284@UFRJ.BITNET's message of 15 May 91 21:04:29 GMT