-
Notifications
You must be signed in to change notification settings - Fork 2
/
OC-L-Funcons-Index.cbs
287 lines (252 loc) · 5.21 KB
/
OC-L-Funcons-Index.cbs
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
# Computations
## Normal computation
### Flowing
[
Funcon sequential Alias seq
Funcon effect
Funcon if-true-else Alias if-else
Funcon while-true Alias while
]
### Giving
[
Funcon initialise-giving
Funcon give
Funcon given
Funcon left-to-right-map
Funcon interleave-map
]
### Binding
[
Type environments Alias envs
Datatype identifiers Alias ids
Funcon initialise-binding
Funcon bound-value Alias bound
Funcon scope
Funcon accumulate
Funcon collateral
Funcon recursive
]
### Storing
[
Funcon initialise-storing
Datatype variables Alias vars
Funcon allocate-initialised-variable Alias alloc-init
Funcon assign
Funcon assigned
]
### Interacting
#### Input
[
Funcon read
]
#### Output
[
Funcon print
]
## Abnormal computation
### Failing
[
Funcon finalise-failing
Funcon fail
Funcon else
Funcon checked
Funcon check-true
]
### Throwing
[
Funcon finalise-throwing
Funcon throw
Funcon handle-thrown
]
# Values
## Value Types
[
Type values Alias vals
Funcon is-in-type Alias is
Funcon when-true Alias when
Type ground-values Alias ground-vals
Funcon is-equal Alias is-eq
]
## Primitive values
### Booleans
[
Datatype booleans Alias bools
Funcon true
Funcon false
Funcon not
Funcon and
Funcon or
]
### Integers
[
Type integers Alias ints
Type bounded-integers Alias bounded-ints
Type natural-numbers Alias nats
Funcon natural-successor Alias nat-succ
Funcon integer-add Alias int-add
Funcon integer-subtract Alias int-sub
Funcon integer-multiply Alias int-mul
Funcon integer-divide Alias int-div
Funcon integer-modulo Alias int-mod
Funcon integer-absolute-value Alias int-abs
Funcon integer-negate Alias int-neg
Funcon integer-is-less Alias is-less
Funcon integer-is-less-or-equal Alias is-less-or-equal
Funcon integer-is-greater Alias is-greater
Funcon integer-is-greater-or-equal Alias is-greater-or-equal
Funcon decimal-natural Alias decimal
Funcon integer-sequence
]
### Floats
[
Datatype float-formats
Funcon binary64
Type floats
Funcon float-negate
Funcon float-absolute-value
Funcon float-add
Funcon float-subtract
Funcon float-multiply
Funcon float-divide
Funcon float-remainder
Funcon float-sqrt
Funcon float-float-power
Funcon float-floor
Funcon float-ceiling
Funcon float-truncate
Funcon float-log
Funcon float-log10
Funcon float-exp
Funcon float-sin
Funcon float-cos
Funcon float-tan
Funcon float-asin
Funcon float-acos
Funcon float-atan
Funcon float-sinh
Funcon float-cosh
Funcon float-tanh
Funcon float-atan2
]
### Characters
[
Type characters Alias chars
Funcon unicode-character Alias unicode-char
Funcon ascii-character Alias ascii-char
Funcon backspace
Funcon horizontal-tab
Funcon line-feed
Funcon carriage-return
Funcon backslash
]
### The null value
[
Datatype null-type
Funcon null-value Alias null
]
## Composite values
### Sequences of values
[
Funcon length
Funcon index
Funcon reverse
Funcon n-of
Funcon intersperse
]
### Tuples
[
Datatype tuples
Funcon tuple-elements
]
### Lists
[
Datatype lists
Funcon list
Funcon list-elements
Funcon list-nil Alias nil
Funcon list-cons Alias cons
Funcon list-head Alias head
Funcon list-tail Alias tail
Funcon list-length
Funcon list-append
]
### Strings
[
Type strings
Funcon string-append
Funcon to-string
]
### Vectors
[
Datatype vectors
Funcon vector
Funcon vector-elements
]
### Bits and bit vectors
[
Datatype bit-vectors
Funcon bit-vector-not
Funcon bit-vector-and
Funcon bit-vector-or
Funcon bit-vector-xor
Funcon bit-vector-shift-left
Funcon bit-vector-logical-shift-right
Funcon bit-vector-arithmetic-shift-right
Funcon integer-to-bit-vector
Funcon bit-vector-to-integer
Funcon signed-bit-vector-maximum
Funcon signed-bit-vector-minimum
]
### Sets
[
Funcon set
Funcon set-elements
Funcon is-in-set
]
### Maps
[
Type maps
Funcon map
Funcon map-elements
Funcon map-lookup Alias lookup
Funcon map-domain Alias dom
Funcon map-override
Funcon map-unite
]
### Records
[
Datatype records
Funcon record
Funcon record-map
Funcon record-select
]
### Variants
[
Datatype variants
Funcon variant
]
## Abstraction values
### Generic abstractions
[
Funcon abstraction
Funcon closure
]
### Functions
[
Datatype functions
Funcon function
Funcon apply
Funcon curry
]
### Patterns
[
Datatype patterns
Funcon pattern
Funcon pattern-any
Funcon pattern-bind
Funcon pattern-else
Funcon pattern-unite
Funcon match
Funcon match-loosely
Funcon case-match
]