Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/branches/SMLNJ/src/cml/doc/HTML/cml.html
ViewVC logotype

Diff of /sml/branches/SMLNJ/src/cml/doc/HTML/cml.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 7, Sun Jan 18 00:59:30 1998 UTC revision 8, Sun Jan 18 01:01:29 1998 UTC
# Line 1  Line 1 
1  <!-- cml.html -->  <!-- HTML/cml.html -->
2    
3  <!-- COPYRIGHT (c) 1995 AT\|@AMP\|T Bell Laboratories. -->  <!-- COPYRIGHT (c) 1995 AT\|@AMP\|T Bell Laboratories. -->
4  <!-- COPYRIGHT (c) 1991 John H. Reppy. -->  <!-- COPYRIGHT (c) 1991 John H. Reppy. -->
# Line 9  Line 9 
9  <TITLE>The CML structure</TITLE>  <TITLE>The CML structure</TITLE>
10  </HEAD>  </HEAD>
11  <BODY>  <BODY>
12  <H1><A NAME="top-of-document">The Concurrent ML Reference Manual</A></H1>  <A NAME="top"></A>
13    <H1 align=CENTER>The Concurrent ML Reference Manual</H1>
14  <HR>  <HR>
15    
16    
17  <H3>The <CODE>CML</CODE> structure</H3>  <H3>The <CODE>CML</CODE> structure</H3>
18  <HR>  <HR>
19  <H4>Synopsis</H4>  <H4>Synopsis</H4>
# Line 44  Line 46 
46  <B>val</B> <A NAME="SIG:CML.recv:VAL:SPEC" HREF="#SIG:CML.recv:VAL">recv</A> <B>:</B> 'a chan -&gt; 'a         <BR>  <B>val</B> <A NAME="SIG:CML.recv:VAL:SPEC" HREF="#SIG:CML.recv:VAL">recv</A> <B>:</B> 'a chan -&gt; 'a         <BR>
47  <B>val</B> <A NAME="SIG:CML.sendEvt:VAL:SPEC" HREF="#SIG:CML.sendEvt:VAL">sendEvt</A> <B>:</B> ('a chan * 'a) -&gt; unit event       <BR>  <B>val</B> <A NAME="SIG:CML.sendEvt:VAL:SPEC" HREF="#SIG:CML.sendEvt:VAL">sendEvt</A> <B>:</B> ('a chan * 'a) -&gt; unit event       <BR>
48  <B>val</B> <A NAME="SIG:CML.recvEvt:VAL:SPEC" HREF="#SIG:CML.sendEvt:VAL">recvEvt</A> <B>:</B> 'a chan -&gt; 'a event         <BR>  <B>val</B> <A NAME="SIG:CML.recvEvt:VAL:SPEC" HREF="#SIG:CML.sendEvt:VAL">recvEvt</A> <B>:</B> 'a chan -&gt; 'a event         <BR>
49    <B>val</B> <A NAME="SIG:CML.sendPoll:VAL:SPEC" HREF="#SIG:CML.sendPoll:VAL">sendPoll</A> <B>:</B> ('a chan * 'a) -&gt; bool         <BR>
50  <B>val</B> <A NAME="SIG:CML.recvPoll:VAL:SPEC" HREF="#SIG:CML.recvPoll:VAL">recvPoll</A> <B>:</B> 'a chan -&gt; 'a option         <BR>  <B>val</B> <A NAME="SIG:CML.recvPoll:VAL:SPEC" HREF="#SIG:CML.recvPoll:VAL">recvPoll</A> <B>:</B> 'a chan -&gt; 'a option         <BR>
51  <B>val</B> <A NAME="SIG:CML.wrap:VAL:SPEC" HREF="#SIG:CML.wrap:VAL">wrap</A> <B>:</B> ('a event * ('a -&gt; 'b)) -&gt; 'b event         <BR>  <B>val</B> <A NAME="SIG:CML.wrap:VAL:SPEC" HREF="#SIG:CML.wrap:VAL">wrap</A> <B>:</B> ('a event * ('a -&gt; 'b)) -&gt; 'b event         <BR>
52  <B>val</B> <A NAME="SIG:CML.wrapHandler:VAL:SPEC" HREF="#SIG:CML.wrapHandler:VAL">wrapHandler</A> <B>:</B> ('a event * (exn -&gt; 'a event)) -&gt; 'a event         <BR>  <B>val</B> <A NAME="SIG:CML.wrapHandler:VAL:SPEC" HREF="#SIG:CML.wrapHandler:VAL">wrapHandler</A> <B>:</B> ('a event * (exn -&gt; 'a event)) -&gt; 'a event         <BR>
# Line 184  Line 187 
187  <BR>  <BR>
188  <BR>  <BR>
189    
190    <DT> <A NAME="SIG:CML.sendPoll:VAL"><CODE>send (<VAR>ch</VAR>, <VAR>a</VAR>)
191              </CODE></A>
192    <DD>
193    attempts to send the message <VAR>a</VAR> on the synchronous channel <VAR>ch</VAR>.       If this operation can complete without blocking the calling thread, then        the message is sent and <CODE>true</CODE> is returned.          Otherwise, no communication is preformed and <CODE>false</CODE> is returned.    This function is not recommended for general use; it is provided        as an efficiency aid for certain kinds of protocols.
194    <BR>
195    <BR>
196    
197  <DT> <A NAME="SIG:CML.recvPoll:VAL"><CODE>recvPoll <VAR>ch</VAR>  <DT> <A NAME="SIG:CML.recvPoll:VAL"><CODE>recvPoll <VAR>ch</VAR>
198            </CODE></A>            </CODE></A>
199  <DD>  <DD>
200  attempts to receive a message from the channel <VAR>ch</VAR>.     If there is no other thread offering to <A HREF="cml.html#SIG:CML.send:VAL:SPEC">send</A> a message     on <VAR>ch</VAR>, then this returns     NONE, otherwise it      returns SOME wrapped    around the message.     This function is not recommended for general use; it is provided        as an efficiency aid for certain kinds of protocols.  attempts to receive a message from the channel <VAR>ch</VAR>.     If there is no other thread offering to <A HREF="cml.html#SIG:CML.send:VAL:SPEC">send</A> a message     on <VAR>ch</VAR>, then this returns     <A HREF="http://www.cs.bell-labs.com/~jhr/sml/basis/pages/option.html#SIG:OPTION.option:TY:SPEC">NONE</A>, otherwise it         returns <A HREF="http://www.cs.bell-labs.com/~jhr/sml/basis/pages/option.html#SIG:OPTION.option:TY:SPEC">SOME</A> wrapped       around the message.     This function is not recommended for general use; it is provided        as an efficiency aid for certain kinds of protocols.
201  <BR>  <BR>
202  <BR>  <BR>
203    
# Line 269  Line 279 
279  <DD>  <DD>
280  creates an event value that becomes enabled at the time           interval <VAR>t</VAR> after synchronization.    For example, the expression:  creates an event value that becomes enabled at the time           interval <VAR>t</VAR> after synchronization.    For example, the expression:
281  <PRE>  <PRE>
282              <A HREF="cml.html#SIG:CML.sync:VAL:SPEC">sync</A> (timeOutEvt (Time.fromSeconds 1))              <A HREF="cml.html#SIG:CML.sync:VAL:SPEC">sync</A> (timeOutEvt (<A HREF="http://www.cs.bell-labs.com/~jhr/sml/basis/pages/time.html#SIG:TIME.fromSeconds:VAL:SPEC">Time.fromSeconds</A> 1))
283    
284  </PRE>  </PRE>
285            will delay the calling thread for one second.           Note that the specified time interval is actually a minimum     waiting time, and the delay may be longer.            will delay the calling thread for one second.           Note that the specified time interval is actually a minimum     waiting time, and the delay may be longer.
# Line 287  Line 297 
297  <HR>  <HR>
298  <H4>See Also</H4>  <H4>See Also</H4>
299  <BLOCKQUOTE>  <BLOCKQUOTE>
300  General, Time  <A HREF="http://www.cs.bell-labs.com/~jhr/sml/basis/pages/option.html#Option:STR:SPEC">Option</A>, <A HREF="http://www.cs.bell-labs.com/~jhr/sml/basis/pages/time.html#Time:STR:SPEC">Time</A>
301  </BLOCKQUOTE>  </BLOCKQUOTE>
302    
303    
304  <HR>  <HR>
305  <B>[ <A HREF="index-all.html">INDEX</A> | <A HREF="cml.html">TOP</A>  <CENTER>
306    <B>[ <A HREF="index-all.html">INDEX</A> | <A HREF="#top">TOP</A>
307     | <A HREF="core-cml.html">Parent</A> | <A HREF="refman.html">Root</A>     | <A HREF="core-cml.html">Parent</A> | <A HREF="refman.html">Root</A>
308     ]</B>     ]</B>
309    </CENTER>
310  <P>  <P>
311  <I>Last Modified November 16, 1995</I><BR>  <I>Last Modified November 16, 1995</I><BR>
312  Copyright &copy; 1996 AT&amp;T <BR>  <I>Comments to <A HREF="mailto:jhr@research.bell-labs.com">John Reppy.</A></I><BR>
313    
314    Copyright &copy; 1997 Bell Labs, Lucent Technologies <BR>
315    
316  <HR>  <HR>
317  </BODY>  </BODY>
318  </HTML>  </HTML>

Legend:
Removed from v.7  
changed lines
  Added in v.8

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0