[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: JCSP - Initial Questions



Dear occum lovers,

Sorry, I was a bit hasty. My background is actually not Java or C, but
VHDL (hardware description language) with portmapping. So I'm pretty
used to defining "ins and outs" the way you do... 
__________________________
component INV
  port (A: in  STD_LOGIC;
        Y: out STD_LOGIC);
end component;

And later on: INV port map (CERTAIN_WIRE, OTHER_WIRE);
__________________________
What IMHO the problem is by translating to Java that the Channel is
modelled as an object and in is a method of that very object. IMHO
Channel.in() means something else than Component.in() or Process.in(). 

Anyway, please consider the remark as illustrative for the necessary
mind steps to use the JCSP library for a layman like me.

Kind regards,

Anne

On Fri, 2007-01-12 at 08:45 +0100, oyvind.teig@xxxxxxxxxxxxxxxx wrote:
> 
> > Reader and writer is better. Yes, I compiled something in Occam-pi
> with
> > KRoC if I remember well. Syntax is not very intuitive IMHO. ;-) 
> 
> IMHO occam syntax is intuitive! I miss it for my everyday work, which
> it used 
> to be for 10 years. More languages use(d) ? and ! It's different 
> than C and Java, but then they don't have direct language support for
> concurrent 
> input and output, and so don't need any ? and ! in the same way.
> (Assuming that 
> was the main obstacle). One other thing: it's not always that
> "different"  
> or "not intuitive" is the same as "bad".  
> 
> I have always wondered why a teacher "reads" a lecture in the English
> language. 
> Is she _inputting_ from the text to her own head or _outputting_ via
> her own  
> brain to the listeners?  
> 
> "look at, interpret, and say out loud something that is written or
> printed  
> (Example: "The King will read the proclamation at noon")  
> http://www.onelook.com/?w=read&ls=a (Quick definitions (read)) 
> 
> In my understanding "say out load" is active outputting (write), not 
> inputting (read). So, the read/write pair; let the other's use it
> when ? and 
> ! operators don't exist! 
> 
> Nowadays Apple is making a glyph of an Apple. Fine! Some times in
> history 
> people "glyphed" exlamation and query. With only some operator
> overloading 
> to those, didn't Hoare at al do a good job at picking ! and ? 
> 
> 
> Med vennlig hilsen / sincerely
> Ãyvind Teig
> 
> 
> Ãyvind Teig
> Senior utviklingsingeniÃr, M.Sc.
> Autronica Fire and Security AS
> A UTC Fire & Security Company
> Tlf: +47 7358 2468 / Faks: +47 7358 2502 / Mob: +47 9596 1506
> oyvind.teig@xxxxxxxxxxxxxxxx / www.autronicafire.no
> http://home.no.net/oyvteig/pub - Publications 
> 
> 
> 
> Anne van Rossum
> <anne@xxxxxxxxxxx> 
> Sent by:
> owner-java-threads@xxxxxxxxxx 
> 
> 10.01.07 13:50 
> Please respond to anne 
> 
> 
> 
>          
>         To:
>  java-threads
> <java-threads@xxxxxxxxxx> 
>         cc:         
>         Subject:
>  Re: JCSP - Initial
> Questions
> 
> 
> 
> Hi Larry, Neil,
> 
> Sorry Neil, I lost your message, but I agree with the quote beneath.
> Reader and writer is better. Yes, I compiled something in Occam-pi
> with
> KRoC if I remember well. Syntax is not very intuitive IMHO. ;-)
> 
> And to repeat my other post: "That channel endpoints are separate
> entities is indeed useful. They are in other Java libraries modelled
> as
> InputPipe and OutputPipe (JXTA), as SourceChannel and SinkChannel
> (java.nio.channels), as Puttable and Takable (java.util.concurrent)."
> 
> Kind regards,
> 
> Anne
> 
> On Tue, 2007-01-09 at 08:25 -0800, tjoccam@xxxxxxxxxxx wrote:
> > Hi Neil and Anne,
> > 
> > I know I'm a bit late, and maybe this is so obvious it's not worth
> > mentioning, but...
> > 
> > >> * The nomenclature of channel.in() and channel.out() is
> confusing.
> > >> Channel.out() should be the endpoint of the channel, not the
> output of
> > >> the component where a channel starts. If a channel is a
> first-class
> > >> entity, it should be treated like that.
> > >>
> > > I know Peter (one of the authors) is aware of this confusion.  We
> think
> > > in a process-oriented manner, hence out() is from the perspective
> of the
> > > process.  reader() and writer() would have been better - and may
> yet be
> > > used in future.
> > 
> > The entire JCSP project is process-oriented primarily; the Java
> parts are
> > there because of the necessity of running it over Java. Therefore to
> > understand its "spirit" it would make sense to study a pure
> > process-oriented language, e.g. occam - "occam 2 Reference Manual",
> Inmos,
> > 1988 is a quick study, only 133 p long, including lots of intuitive
> > examples. The relation to JCSP entities will be obvious.
> > 
> > Larry Dickson
> > 
> 
> 
>