source: project/srfi-47/srfi-47.html @ 1270

Last change on this file since 1270 was 1270, checked in by felix winkelmann, 14 years ago

all simple eggs have proper setup script, now

File size: 3.4 KB
Line 
1<html>
2  <head>
3<title>srfi-47</title>
4<style type="text/css">
5  <!--
6      CODE {
7             color: #666666;
8           }
9      EM {
10           font-weight: bold;
11           font-style: normal;
12         }
13      DT.function { 
14                    background: #f5f5f5;
15                    color: black;
16                    padding: 0.1em;
17                    border: 1px solid #bbbaaf;
18                    font-family: monospace;
19                  }
20      PRE {
21        background: #efeee0;
22        padding: 0.1em;
23        border: 1px solid #bbbaaf;
24      }
25      TABLE {
26        background: #f5f5f5;
27        padding: 0.2em;
28      }
29      TH {
30        border-bottom: 1px solid black;
31      }
32    -->
33</style>
34</head>
35<body>
36
37<center><img src="egg.jpg"></center>
38<center><a href="index.html">back</a></center>
39
40<h2>srfi-47</h2>
41
42<h3>Description:</h3>
43An alternative arrays package conforming to <a href="http://srfi.schemers.org/srfi-47/srfi-47.html">SRFI-47</a>.
44
45<h3>Author:</h3>
46Aubrey Jaffer, ported to Chicken by <a href="mailto:felix@call-with-current-continuation.org">felix</a>.
47
48<h3>Version:</h3>
49<ul>
50<li>1.1
51Fixed invalid implementation of <code>array?</code> [Thanks to Kon Lovett]
52<li>1.0
53</ul>
54
55<h3>Usage:</h3>
56<pre>
57(require-extension srfi-47)
58</pre>
59
60<h3>Download:</h3>
61<a href="srfi-47.egg">srfi-47.egg</a>
62
63<h3>Documentation:</h3>
64
65The full specification can be found at <a href="http://srfi.schemers.org/srfi-47/srfi-47.html">the SRFI website</a>.
66The array prototypes for complex numbers are not supported (<code>ac64</code>). The 64-bit signed and unsigned
67array prototypes <code>au64</code> and <code>as64</code>) are provided but may not support the full range
68of numerical values on 32-bit architevtures.
69
70<p>Additionally, the following procedure is defined:
71
72<dl>
73<dt class="function"><em>(procedure)</em> (array-store ARRAY)
74<dd>
75  <p>Returns the underlying storage object, which may be a vector or a <a href="http://srfi.schemers.org/&srfi/srfi-4.html">
76SRFI-4</a> number vector.
77</dd>
78</dl>
79
80<p>Note: this array package is <i>not</i> compatible with the default array library (<code>srfi-25</code>) that
81is provided with the base system. Don't use these two libraries together in the same program.
82
83<h3>Examples:</h3>
84
85<pre>
86(define fred (make-array '#(#f) 8 8))
87(define freds-diagonal
88  (make-shared-array fred (lambda (i) (list i i)) 8))
89(array-set! freds-diagonal 'foo 3)
90(print (array-ref fred 3 3))           ; prints "foo"
91(define freds-center
92  (make-shared-array fred (lambda (i j) (list (+ 3 i) (+ 3 j)))
93                     2 2))
94(print (array-ref freds-center 0 0))   ; prints "foo" again
95</pre>
96
97<h3>License:</h3>
98<pre>
99Copyright (C) 2001, 2003 Aubrey Jaffer
100
101Permission to copy this software, to modify it, to redistribute it,
102to distribute modified versions, and to use it for any purpose is
103granted, subject to the following restrictions and understandings.
104
1051.  Any copy made of this software must include this copyright notice
106in full.
107
1082.  I have made no warranty or representation that the operation of
109this software will be error-free, and I am under no obligation to
110provide any services, by way of maintenance, update, or otherwise.
111
1123.  In conjunction with products arising from the use of this
113material, there shall be no use of my name in any advertising,
114promotional, or sales literature without prior written consent in
115each case.
116</pre>
117
118<hr><a href="index.html">back</a>
119
120</body>
121</html>
Note: See TracBrowser for help on using the repository browser.