Repository navigation
Expand file tree
/
Copy pathLanguage-Copilot-Language.html
More file actions
73 lines (73 loc) · 65.2 KB
/
Copy pathLanguage-Copilot-Language.html
File metadata and controls
73 lines (73 loc) · 65.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Language.Copilot.Language</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Language-Copilot-Language.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="http://github.com/leepike/Copilot/Language.Copilot.Language.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">copilot-0.28: A stream DSL for writing embedded C monitors.</p></div><div id="content"><div id="module-header"><p class="caption">Language.Copilot.Language</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#1">Operators and functions
</a></li><li><a href="#2">Boolean constants
</a></li><li><a href="#3">Arithmetic operators (derived)
</a></li><li><a href="#4">Division
</a></li><li><a href="#5">Copilot variable declarations.
</a></li><li><a href="#6">The next functions provide easier access to typed external variables.
</a></li><li><a href="#7">The next functions provide easier access to typed external arrays.
</a></li><li><a href="#8">Set of operators from which to choose during the generation of random streams
</a></li><li><a href="#9">Constructs of the copilot language
</a></li><li><a href="#10">The next functions help typing the send operations
</a></li><li><a href="#11">Triggers
</a></li><li><a href="#12">Safe casting
</a></li><li><a href="#13">Boolean stream constants
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Describes the language <em>Copilot</em>.
</p><p>If you wish to add a new operator, the only modification needed is adding it in this module.
But if you want it to be used in the random generated streams, add it to either <code><code><a href="Language-Copilot-Language.html#v:opsF">opsF</a></code></code>, <code><code><a href="Language-Copilot-Language.html#v:opsF2">opsF2</a></code></code> or <code><code><a href="Language-Copilot-Language.html#v:opsF3">opsF3</a></code></code>
</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:mod">mod</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:div">div</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:mod0">mod0</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:div0">div0</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:-60-">(<)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-60--61-">(<=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-61--61-">(==)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, EqE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-47--61-">(/=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, EqE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-62--61-">(>=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-62-">(>)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:not">not</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-124--124-">(||)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-38--38-">(&&)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-94-">(^)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:-61--61--62-">(==>)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Bool">Bool</a> <ul class="subs"><li>= <a href="#v:False">False</a> </li><li>| <a href="#v:True">True</a> </li></ul></li><li class="src short"><span class="keyword">class</span> (<a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t:Eq">Eq</a> a, <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t:Show">Show</a> a) => <a href="#t:Num">Num</a> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:-43-">(+)</a> :: a -> a -> a</li><li><a href="#v:-42-">(*)</a> :: a -> a -> a</li><li><a href="#v:-45-">(-)</a> :: a -> a -> a</li><li><a href="#v:negate">negate</a> :: a -> a</li><li><a href="#v:abs">abs</a> :: a -> a</li><li><a href="#v:signum">signum</a> :: a -> a</li><li><a href="#v:fromInteger">fromInteger</a> :: <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integer">Integer</a> -> a</li></ul></li><li class="src short"><span class="keyword">class</span> <a href="Language-Copilot-Language.html#t:Num">Num</a> a => <a href="#t:Fractional">Fractional</a> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:-47-">(/)</a> :: a -> a -> a</li></ul></li><li class="src short"><a href="#v:mux">mux</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:var">var</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:varB">varB</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:varI8">varI8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></li><li class="src short"><a href="#v:varI16">varI16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></li><li class="src short"><a href="#v:varI32">varI32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></li><li class="src short"><a href="#v:varI64">varI64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></li><li class="src short"><a href="#v:varW8">varW8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></li><li class="src short"><a href="#v:varW16">varW16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></li><li class="src short"><a href="#v:varW32">varW32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></li><li class="src short"><a href="#v:varW64">varW64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></li><li class="src short"><a href="#v:varF">varF</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></li><li class="src short"><a href="#v:varD">varD</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></li><li class="src short"><a href="#v:extB">extB</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:extI8">extI8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></li><li class="src short"><a href="#v:extI16">extI16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></li><li class="src short"><a href="#v:extI32">extI32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></li><li class="src short"><a href="#v:extI64">extI64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></li><li class="src short"><a href="#v:extW8">extW8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></li><li class="src short"><a href="#v:extW16">extW16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></li><li class="src short"><a href="#v:extW32">extW32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></li><li class="src short"><a href="#v:extW64">extW64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></li><li class="src short"><a href="#v:extF">extF</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></li><li class="src short"><a href="#v:extD">extD</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></li><li class="src short"><a href="#v:extArrB">extArrB</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:extArrI8">extArrI8</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></li><li class="src short"><a href="#v:extArrI16">extArrI16</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></li><li class="src short"><a href="#v:extArrI32">extArrI32</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></li><li class="src short"><a href="#v:extArrI64">extArrI64</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></li><li class="src short"><a href="#v:extArrW8">extArrW8</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></li><li class="src short"><a href="#v:extArrW16">extArrW16</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></li><li class="src short"><a href="#v:extArrW32">extArrW32</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></li><li class="src short"><a href="#v:extArrW64">extArrW64</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></li><li class="src short"><a href="#v:extArrF">extArrF</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></li><li class="src short"><a href="#v:extArrD">extArrD</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></li><li class="src short"><a href="#v:opsF">opsF</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></li><li class="src short"><a href="#v:opsF2">opsF2</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></li><li class="src short"><a href="#v:opsF3">opsF3</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></li><li class="src short"><a href="#v:drop">drop</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int">Int</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:-43--43-">(++)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => [a] -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:.-61-">(.=)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></li><li class="src short"><a href="#v:send">send</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t:String">String</a> -> <a href="Language-Copilot-Core.html#t:Port">Port</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></li><li class="src short"><a href="#v:port">port</a> :: <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int">Int</a> -> <a href="Language-Copilot-Core.html#t:Port">Port</a></li><li class="src short"><a href="#v:trigger">trigger</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t:String">String</a> -> TriggerLst -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></li><li class="src short"><a href="#v:void">void</a> :: TriggerLst</li><li class="src short"><a href="#v:-60--62-">(<>)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> TriggerLst -> TriggerLst</li><li class="src short"><a href="#v:-60--62--62-">(<>>)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> b) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> b -> TriggerLst</li><li class="src short"><a href="#v:cast">cast</a> :: (Castable a, Castable b, <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> b) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> b -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:const">const</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</li><li class="src short"><a href="#v:true">true</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:false">false</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></li></ul></div><div id="interface"><h1 id="1">Operators and functions
</h1><div class="top"><p class="src"><a name="v:mod" class="def">mod</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p></div><div class="top"><p class="src"><a name="v:div" class="def">div</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Beware : crash without any possible recovery if a division by 0 happens.
Same risk with mod. Use div0 and mod0 if unsure.
</p></div></div><div class="top"><p class="src"><a name="v:mod0" class="def">mod0</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p></div><div class="top"><p class="src"><a name="v:div0" class="def">div0</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>As mod and div, except that if the division would be by 0, the first
argument is used as a default.
</p></div></div><div class="top"><p class="src"><a name="v:-60-" class="def">(<)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-60--61-" class="def">(<=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-61--61-" class="def">(==)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, EqE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-47--61-" class="def">(/=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, EqE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-62--61-" class="def">(>=)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-62-" class="def">(>)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, OrdE a) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:not" class="def">not</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-124--124-" class="def">(||)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-38--38-" class="def">(&&)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-94-" class="def">(^)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:-61--61--62-" class="def">(==>)</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><h1 id="2">Boolean constants
</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Bool" class="def">Bool</a> </p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:False" class="def">False</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a name="v:True" class="def">True</a></td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:Bool" class="caption collapser" onclick="toggleSection('i:Bool')">Instances</p><div id="section.i:Bool" class="show"><table><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Bounded">Bounded</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Enum">Enum</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t:Eq">Eq</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t:Ord">Ord</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t:Show">Show</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src">EqE <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src">Expr <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src">Assign <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src">Random <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src">Castable <a href="Language-Copilot-Language.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr></table></div></div></div><h1 id="3">Arithmetic operators (derived)
</h1><div class="top"><p class="src"><span class="keyword">class</span> (<a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t:Eq">Eq</a> a, <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t:Show">Show</a> a) => <a name="t:Num" class="def">Num</a> a <span class="keyword">where</span></p><div class="doc"><p>Basic numeric class.
</p><p>Minimal complete definition: all except <code><a href="Language-Copilot-Language.html#v:negate">negate</a></code> or <code>(-)</code>
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:-43-" class="def">(+)</a> :: a -> a -> a</p><p class="src"><a name="v:-42-" class="def">(*)</a> :: a -> a -> a</p><p class="src"><a name="v:-45-" class="def">(-)</a> :: a -> a -> a</p><p class="src"><a name="v:negate" class="def">negate</a> :: a -> a</p><div class="doc"><p>Unary negation.
</p></div><p class="src"><a name="v:abs" class="def">abs</a> :: a -> a</p><div class="doc"><p>Absolute value.
</p></div><p class="src"><a name="v:signum" class="def">signum</a> :: a -> a</p><div class="doc"><p>Sign of a number.
The functions <code><a href="Language-Copilot-Language.html#v:abs">abs</a></code> and <code><a href="Language-Copilot-Language.html#v:signum">signum</a></code> should satisfy the law:
</p><code> abs x * signum x == x
</code><p>For real numbers, the <code><a href="Language-Copilot-Language.html#v:signum">signum</a></code> is either <code>-1</code> (negative), <code>0</code> (zero)
or <code>1</code> (positive).
</p></div><p class="src"><a name="v:fromInteger" class="def">fromInteger</a> :: <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integer">Integer</a> -> a</p><div class="doc"><p>Conversion from an <code><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integer">Integer</a></code>.
An integer literal represents the application of the function
<code><a href="Language-Copilot-Language.html#v:fromInteger">fromInteger</a></code> to the appropriate value of type <code><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integer">Integer</a></code>,
so such literals have type <code>(<code><a href="Language-Copilot-Language.html#t:Num">Num</a></code> a) => a</code>.
</p></div></div><div class="subs instances"><p id="control.i:Num" class="caption collapser" onclick="toggleSection('i:Num')">Instances</p><div id="section.i:Num" class="show"><table><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int">Int</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integer">Integer</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word">Word</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Num">Num</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integral">Integral</a> a => <a href="Language-Copilot-Language.html#t:Num">Num</a> (<a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ratio.html#t:Ratio">Ratio</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Language-Copilot-Language.html#t:Num">Num</a> a, NumE a, OrdE a) => <a href="Language-Copilot-Language.html#t:Num">Num</a> (E a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, NumE a) => <a href="Language-Copilot-Language.html#t:Num">Num</a> (<a href="Language-Copilot-Core.html#t:Spec">Spec</a> a)</td><td class="doc empty"> </td></tr></table></div></div></div><h1 id="4">Division
</h1><div class="top"><p class="src"><span class="keyword">class</span> <a href="Language-Copilot-Language.html#t:Num">Num</a> a => <a name="t:Fractional" class="def">Fractional</a> a <span class="keyword">where</span></p><div class="doc"><p>Fractional numbers, supporting real division.
</p><p>Minimal complete definition: <code><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#v:fromRational">fromRational</a></code> and (<code><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#v:recip">recip</a></code> or <code>(<code><a href="Language-Copilot-Language.html#v:-47-">/</a></code>)</code>)
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:-47-" class="def">(/)</a> :: a -> a -> a</p><div class="doc"><p>fractional division
</p></div></div><div class="subs instances"><p id="control.i:Fractional" class="caption collapser" onclick="toggleSection('i:Fractional')">Instances</p><div id="section.i:Fractional" class="show"><table><tr><td class="src"><a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Integral">Integral</a> a => <a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> (<a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ratio.html#t:Ratio">Ratio</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(OrdE a, NumE a, <a href="Language-Copilot-Language.html#t:Num">Num</a> a, <a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> a) => <a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> (E a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, NumE a, <a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> a) => <a href="Language-Copilot-Language.html#t:Fractional">Fractional</a> (<a href="Language-Copilot-Core.html#t:Spec">Spec</a> a)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:mux" class="def">mux</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Beware : both sides are executed, even if the result of one is later discarded
</p></div></div><h1 id="5">Copilot variable declarations.
</h1><div class="top"><p class="src"><a name="v:var" class="def">var</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Useful for writing libraries.
</p></div></div><div class="top"><p class="src"><a name="v:varB" class="def">varB</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:varI8" class="def">varI8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></p></div><div class="top"><p class="src"><a name="v:varI16" class="def">varI16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></p></div><div class="top"><p class="src"><a name="v:varI32" class="def">varI32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></p></div><div class="top"><p class="src"><a name="v:varI64" class="def">varI64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></p></div><div class="top"><p class="src"><a name="v:varW8" class="def">varW8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></p></div><div class="top"><p class="src"><a name="v:varW16" class="def">varW16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></p></div><div class="top"><p class="src"><a name="v:varW32" class="def">varW32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></p></div><div class="top"><p class="src"><a name="v:varW64" class="def">varW64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></p></div><div class="top"><p class="src"><a name="v:varF" class="def">varF</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></p></div><div class="top"><p class="src"><a name="v:varD" class="def">varD</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></p></div><h1 id="6">The next functions provide easier access to typed external variables.
</h1><div class="top"><p class="src"><a name="v:extB" class="def">extB</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:extI8" class="def">extI8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></p></div><div class="top"><p class="src"><a name="v:extI16" class="def">extI16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></p></div><div class="top"><p class="src"><a name="v:extI32" class="def">extI32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></p></div><div class="top"><p class="src"><a name="v:extI64" class="def">extI64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></p></div><div class="top"><p class="src"><a name="v:extW8" class="def">extW8</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></p></div><div class="top"><p class="src"><a name="v:extW16" class="def">extW16</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></p></div><div class="top"><p class="src"><a name="v:extW32" class="def">extW32</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></p></div><div class="top"><p class="src"><a name="v:extW64" class="def">extW64</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></p></div><div class="top"><p class="src"><a name="v:extF" class="def">extF</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></p></div><div class="top"><p class="src"><a name="v:extD" class="def">extD</a> :: <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></p></div><h1 id="7">The next functions provide easier access to typed external arrays.
</h1><div class="top"><p class="src"><a name="v:extArrB" class="def">extArrB</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:extArrI8" class="def">extArrI8</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int8">Int8</a></p></div><div class="top"><p class="src"><a name="v:extArrI16" class="def">extArrI16</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int16">Int16</a></p></div><div class="top"><p class="src"><a name="v:extArrI32" class="def">extArrI32</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int32">Int32</a></p></div><div class="top"><p class="src"><a name="v:extArrI64" class="def">extArrI64</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int64">Int64</a></p></div><div class="top"><p class="src"><a name="v:extArrW8" class="def">extArrW8</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word8">Word8</a></p></div><div class="top"><p class="src"><a name="v:extArrW16" class="def">extArrW16</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word16">Word16</a></p></div><div class="top"><p class="src"><a name="v:extArrW32" class="def">extArrW32</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word32">Word32</a></p></div><div class="top"><p class="src"><a name="v:extArrW64" class="def">extArrW64</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Word.html#t:Word64">Word64</a></p></div><div class="top"><p class="src"><a name="v:extArrF" class="def">extArrF</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Float">Float</a></p></div><div class="top"><p class="src"><a name="v:extArrD" class="def">extArrD</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, IntegralE a) => <a href="Language-Copilot-Core.html#t:Var">Var</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t:Double">Double</a></p></div><h1 id="8">Set of operators from which to choose during the generation of random streams
</h1><div class="top"><p class="src"><a name="v:opsF" class="def">opsF</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></p></div><div class="top"><p class="src"><a name="v:opsF2" class="def">opsF2</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></p><div class="doc"><p>opsF, opsF2 and opsF3 are feeded to Tests.Random.randomStreams.
They allows the random generated streams to include lots of operators.
If you add a new operator to Copilot, it would be nice to add it to one of those,
that way it could be used in the random streams used for testing.
opsF holds all the operators of arity 1, opsF2 of arity 2 and opsF3 of arity3
They are StreamableMaps, because operators are sorted based on their return type.
</p></div></div><div class="top"><p class="src"><a name="v:opsF3" class="def">opsF3</a> :: <a href="Language-Copilot-Tests-Random.html#t:Operators">Operators</a></p></div><h1 id="9">Constructs of the copilot language
</h1><div class="top"><p class="src"><a name="v:drop" class="def">drop</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int">Int</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Drop <code>i</code> elements from a stream.
</p></div></div><div class="top"><p class="src"><a name="v:-43--43-" class="def">(++)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => [a] -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Just a trivial wrapper over the <code><code><a href="Language-Copilot-Core.html#v:Append">Append</a></code></code> constructor
</p></div></div><div class="top"><p class="src"><a name="v:.-61-" class="def">(.=)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></p><div class="doc"><p>Define a stream variable.
</p></div></div><h1 id="10">The next functions help typing the send operations
</h1><div class="top"><p class="src"><a name="v:send" class="def">send</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t:String">String</a> -> <a href="Language-Copilot-Core.html#t:Port">Port</a> -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Phase">Phase</a> -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></p><div class="doc"><p>Takes a function <code>name</code>, a port <code>number</code>, a Copilot variable <code>v</code>, and a
phase <code>ph</code>, and constructs a call to the C function <code>name(x,y)</code> where <code>x</code> is
the value of the Copilot stream <code>v</code> and <code>y</code> is the port number. The sending
of the value on the port occurs at phase <code>ph</code>.
</p></div></div><div class="top"><p class="src"><a name="v:port" class="def">port</a> :: <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t:Int">Int</a> -> <a href="Language-Copilot-Core.html#t:Port">Port</a></p></div><h1 id="11">Triggers
</h1><div class="top"><p class="src"><a name="v:trigger" class="def">trigger</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a> -> <a href="/Library/Frameworks/GHC.framework/Versions/612/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t:String">String</a> -> TriggerLst -> <a href="Language-Copilot-Core.html#t:Streams">Streams</a></p><div class="doc"><p>Takes a Boolean stream,
</p></div></div><div class="top"><p class="src"><a name="v:void" class="def">void</a> :: TriggerLst</p><div class="doc"><p>No C arguments
</p></div></div><div class="top"><p class="src"><a name="v:-60--62-" class="def">(<>)</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> TriggerLst -> TriggerLst</p><div class="doc"><p>Turn a <code>Spec Var</code> into an arguement for a C function.
</p></div></div><div class="top"><p class="src"><a name="v:-60--62--62-" class="def">(<>>)</a> :: (<a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a, <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> b) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> b -> TriggerLst</p><div class="doc"><p>Turn a <code>Spec Var</code> into an arguement for a C function.
</p></div></div><h1 id="12">Safe casting
</h1><div class="top"><p class="src"><a name="v:cast" class="def">cast</a> :: (Castable a, Castable b, <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> b) => <a href="Language-Copilot-Core.html#t:Spec">Spec</a> b -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p></div><h1 id="13">Boolean stream constants
</h1><div class="top"><p class="src"><a name="v:const" class="def">const</a> :: <a href="Language-Copilot-Core.html#t:Streamable">Streamable</a> a => a -> <a href="Language-Copilot-Core.html#t:Spec">Spec</a> a</p><div class="doc"><p>Coerces a type that is <code><a href="Language-Copilot-Core.html#t:Streamable">Streamable</a></code> into a Copilot constant.
</p></div></div><div class="top"><p class="src"><a name="v:true" class="def">true</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div><div class="top"><p class="src"><a name="v:false" class="def">false</a> :: <a href="Language-Copilot-Core.html#t:Spec">Spec</a> <a href="Language-Copilot-Language.html#t:Bool">Bool</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.8.1</p></div></body></html>