summaryrefslogtreecommitdiff
path: root/manuals/chickadee/Channels.html
diff options
context:
space:
mode:
authorDavid Thompson <dthompson@vistahigherlearning.com>2019-06-04 20:49:16 -0400
committerDavid Thompson <dthompson@vistahigherlearning.com>2019-06-04 20:49:16 -0400
commit279f17ac0e1b3d019c2b294098e834d249376686 (patch)
tree47be849d3b35635d167e00cd8448815a75167a23 /manuals/chickadee/Channels.html
parent7b808b9268ec735a7a176d10bf1887b3fa66d13e (diff)
Update chickadee manual.
Diffstat (limited to 'manuals/chickadee/Channels.html')
-rw-r--r--manuals/chickadee/Channels.html25
1 files changed, 21 insertions, 4 deletions
diff --git a/manuals/chickadee/Channels.html b/manuals/chickadee/Channels.html
index f313c4f..ece7ce5 100644
--- a/manuals/chickadee/Channels.html
+++ b/manuals/chickadee/Channels.html
@@ -1,6 +1,6 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
-<!-- Copyright (C) 2017 David Thompson davet@gnu.org
+<!-- Copyright (C) 2017, 2018, 2019 David Thompson davet@gnu.org
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
@@ -13,6 +13,8 @@ A copy of the license is also available from the Free Software
Foundation Web site at http://www.gnu.org/licenses/fdl.html.
+* Chickadee: (chickadee). Game programming toolkit for Guile.
+
The document was typeset with
http://www.texinfo.org/ (GNU Texinfo).
-->
@@ -123,22 +125,37 @@ someone on the other end of the line to complete the transaction.
</p></dd></dl>
<dl>
-<dt><a name="index-channel_003f"></a>Procedure: <strong>channel?</strong> <em><var>obj</var></em></dt>
+<dt><a name="index-channel_003f"></a>Procedure: <strong>channel?</strong> <em>obj</em></dt>
<dd><p>Return <code>#t</code> if <var>obj</var> is a channel.
</p></dd></dl>
<dl>
-<dt><a name="index-channel_002dget-1"></a>Procedure: <strong>channel-get</strong> <em><var>channel</var></em></dt>
+<dt><a name="index-channel_002dget"></a>Procedure: <strong>channel-get</strong> <em>channel</em></dt>
<dd><p>Retrieve a value from <var>channel</var>. The current script suspends
until a value is available.
</p></dd></dl>
<dl>
-<dt><a name="index-channel_002dput"></a>Procedure: <strong>channel-put</strong> <em><var>channel</var> <var>data</var></em></dt>
+<dt><a name="index-channel_002dput"></a>Procedure: <strong>channel-put</strong> <em>channel data</em></dt>
<dd><p>Send <var>data</var> to <var>channel</var>. The current script suspends until
another script is available to retrieve the value.
</p></dd></dl>
+<p>A low-level API also exists for using channels outside of a script via
+callback procedures:
+</p>
+<dl>
+<dt><a name="index-channel_002dget_0021"></a>Procedure: <strong>channel-get!</strong> <em>channel proc</em></dt>
+<dd><p>Asynchronously retrieve a value from <var>channel</var> and call <var>proc</var>
+with that value.
+</p></dd></dl>
+
+<dl>
+<dt><a name="index-channel_002dput_0021"></a>Procedure: <strong>channel-put!</strong> <em>channel data [thunk]</em></dt>
+<dd><p>Asynchronously send <var>data</var> to <var>channel</var> and call <var>thunk</var>
+after it has been received.
+</p></dd></dl>
+